* {
    padding: 0;
    margin: 0;
    border: 0
}

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

:focus,
:active {
    outline: none
}

a:focus,
a:active {
    outline: none
}

nav,
footer,
header,
aside {
    display: block
}
.overlay-dark,
.overlay-white {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 9999;
}

.header.active .header__logo .dark {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.header.active .header__logo .light {
    display: none
}

.overlay-dark {
    background-color: rgba(0, 0, 0, 0.8);
    opacity: 0;
}

.overlay-white {
    background-color: #fff;
    opacity: 1;
}

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
}

.desk {
    display: flex !important;
}

.mob {
    display: none !important;
}

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: inherit
}

a {
    color: inherit
}


body {
    max-width: 1920px;
    background: var(--white);
    margin: 0 auto;
    font-family: "Inter", sans-serif
}

.preloader {
    width: 100%;
    height: 100vh;
    background: var(--white);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.preloader .logo {
    width: 460px;
    height: 176px
}

.preloader .logo svg {
    width: 100%;
    height: 100%
}

.container {
    width: 100%;
    padding: 0 70px;
}

.hidden {
    overflow: hidden
}

.poster {
    width: 100%;
    height: 780px;
    padding: 20px;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.poster img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    -o-object-fit: cover;
    object-fit: cover
}

.poster__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    position: relative;
    height: 100%;
    border-radius: 24px;
    padding: 113px;
    gap: 60px
}

.poster__body-breadcrumbs a:hover {
    opacity: 1
}

.poster__body-breadcrumbs a {
    color: var(--white);
    opacity: .4;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.poster__body-breadcrumbs span {
    color: var(--white)
}

.poster__body h1 {
    color: var(--white)
}

.poster__body-works--tab {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 48px
}

.poster__body-works--tab button.current {
    opacity: 1;
}

.poster__body-works--tab button.current::after {
    width: 100%;
}

.poster__body-works--tab button:hover {
    opacity: 1
}

.poster__body-works--tab button:hover::after {
    width: 100%
}

.poster__body-works--tab button {
    padding: 0 12px 12px 12px;
    position: relative;
    font-size: 32px;
    opacity: .6;
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
    background: rgba(0, 0, 0, 0);
    color: var(--white)
}

.poster__body-works--tab button::after {
    content: "";
    position: absolute;
    bottom: 0;
    width: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background: var(--green);
    height: 1px;
    -webkit-transition: all .5s ease;
    transition: all .5s ease
}

.about {
    margin-top: var(--heading);
    width: 100%
}



.about__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 80px
}

.about__body h2 {
    color: var(--black);
    text-align: center
}

.about__body-frame {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px
}

.about__body-frame img {
    width: 712px;
    height: 800px;
    -o-object-fit: cover;
    object-fit: cover
}

.about__body-frame-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 200px;
    padding: 48px
}

.about__body-frame-info .item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 46px
}

.about__body-frame-info .item h3 {
    color: var(--black)
}

.about__body-frame-info .item p {
    color: var(--black);
    opacity: .4
}

.el--fade {
    -webkit-transition: all .6s ease-out;
    transition: all .6s ease-out;
    opacity: 0;
    transform: translateY(20%)
}

.el--opacity {
    -webkit-transition: all .6s ease-out;
    transition: all .6s ease-out;
    opacity: 0
}

.el--opacity.show {
    opacity: 1
}

.el--fade.show {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0)
}

.el--left {
    -webkit-transition: all .5s ease;
    transition: all .5s ease;
    -webkit-transform: translateX(-10%);
    -ms-transform: translateX(-10%);
    transform: translateX(-10%);
    opacity: 0
}

.el--left.show {
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%);
    opacity: 1
}

.preloader .letters {
    fill: none;
    stroke: #000
}

.preloader svg .green-lines {
    stroke: #b8f13c !important;
    fill: none
}

.button-fade:hover .animated-fade {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%)
}

.button-fade .wrap-animation {
    max-height: 22.5px;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.button-fade .wrap-animation .animated-fade {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-transition: all .5s ease;
    transition: all .5s ease
}

.main-title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.main-title span {
    opacity: 0;
    transform: translateY(15%);
    rotate: 5deg;
}

.main-title span.walker {
    width: 32px
}

.button--green {
    background: var(--green);
    color: var(--black)
}

.button--green svg {
    width: 14px;
    height: 14px
}

.button--white {
    background: rgba(0, 0, 0, 0);
    color: var(--white);
    border: 1.5px solid var(--white)
}

.button--white svg {
    width: 14px;
    height: 14px
}

.button--small {
    padding: 18px 28px
}

.button--middle {
    padding: 26px 40px
}

.case {
    margin-top: var(--heading);
    width: 100%
}

.case__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: var(--heading)
}

.case__body-item:last-child .item--frame .item--frame-el:nth-last-child(-n+2) {
    border-bottom: none;
    padding-bottom: 0
}

.case__body-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 80px
}

.case__body-item .case--item-head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.case__body-item .item--frame {
    display: grid;
    grid-template-columns: 1fr 1fr;
    row-gap: 100px;
    width: 100%;
    -webkit-column-gap: 38px;
    -moz-column-gap: 38px;
    column-gap: 38px
}

.case__body-item .item--frame-el {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 48px;
    padding-bottom: 100px;
    border-bottom: 1px solid rgba(178, 178, 178, .2);
    position: relative
}

.case__body-item .item--frame-el .wrap {
    border-radius: 24px;
    position: relative
}

.case__body-item .item--frame-el .wrap img {
    width: 100%;
    height: 100%;
    border-radius: 24px;
    -o-object-fit: cover;
    object-fit: cover;
    aspect-ratio: 4/3
}

.case__body-item .item--frame-el .wrap .circle.animated {
    scale: 1
}

.case__body-item .item--frame-el .wrap .circle {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: var(--green);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    -webkit-transition: scale .3s ease;
    transition: scale .3s ease;
    scale: 0;
    margin-top: -32px;
    margin-left: -32px
}

.case__body-item .item--frame-el .wrap .circle svg {
    width: 18px;
    height: 18px
}

.case__body-item .item--frame-el .info {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.case__body-item .item--frame-el .info h4 {
    font-size: 42px;
    color: var(--black)
}

.case__body-item .item--frame-el .info p {
    max-width: 60%;
    font-size: 24px;
    color: var(--black);
    opacity: .4
}

.contact {
    width: 100%;
    position: relative;
    padding: 259px 0px 149px 0px
}

.contact .back {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%;
    height: 100%
}

.contact__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 24px
}

.contact__body-request {
    width: 100%;
    background: var(--white);
    border-radius: 24px;
    padding: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 32px
}

.contact__body-request-head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 36px
}

.contact__body-request-head h1 {
    color: var(--black)
}

.contact__body-request-head p {
    color: var(--black);
    opacity: .6
}

.contact__body-request .request--form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 40px
}

.contact__body-request .request--form .inputs {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px
}

.contact__body-request .request--form .inputs .input--form-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 16px
}

.contact__body-request .request--form .inputs .input--form-wrap label {
    font-size: 20px;
    color: var(--black);
    opacity: .5
}

.contact__body-request .request--form .inputs .input--form-wrap input {
    width: 100%;
    padding: 22px 30px;
    border-radius: 500px;
    background: var(--white);
    border: 1px solid rgba(54, 59, 35, .2);
    font-size: 17px;
    color: var(--black)
}

.contact__body-request .request--form .action {
    display: grid;
    grid-template-columns: 1fr 1fr;
    width: 100%;
    gap: 32px
}

.contact__body-request .request--form .action .checkbox:has(input:checked) span {
    background: var(--green)
}

.contact__body-request .request--form .action .checkbox {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 18px;
    cursor: pointer
}

.contact__body-request .request--form .action .checkbox input {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    opacity: 0
}

.contact__body-request .request--form .action .checkbox span {
    width: 32px;
    aspect-ratio: 1/1;
    border: .5px solid #363b23;
    border-radius: 8px;
    background: var(--white);
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.contact__body-request .request--form .action .checkbox p {
    font-size: 16px;
    color: #000;
    opacity: .4
}

.contact__body-request .request--form .action button {
    margin-top: 10px;
    padding: 26px 40px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: none;
    width: 100%
}

.contact__body-frame {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 24px
}

.contact__body-frame div {
    padding: 48px;
    background: var(--white);
    border-radius: 24px
}

.contact__body-frame-address {
    grid-column: 1/4;
    grid-row: 1/3;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 48px
}

.contact__body-frame-address .info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 20px;
    padding: 0
}

.contact__body-frame-address .info h3 {
    color: var(--black)
}

.contact__body-frame-address .info p {
    border-bottom: 1.5px solid rgba(0, 0, 0, .05);
    position: relative;
    max-width: -webkit-max-content;
    max-width: -moz-max-content;
    max-width: max-content;
    padding-bottom: 10px;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.contact__body-frame-address .info p::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    background: var(--green);
    width: 0;
    height: 1.5px;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.contact__body-frame-address .info p:hover {
    border-color: rgba(0, 0, 0, 0)
}

.contact__body-frame-address .info p:hover::after {
    width: 100%
}

.contact__body-frame-address iframe {
    width: 100%;
    height: 164px;
    border-radius: 24px
}

.contact__body-frame-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 20px
}

.contact__body-frame-item h3 {
    color: var(--black)
}

.contact__body-frame-item a:hover {
    border-color: rgba(0, 0, 0, 0)
}

.contact__body-frame-item a:hover::after {
    width: 100%
}

.contact__body-frame-item a::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 1;
    background: var(--green);
    width: 0;
    height: 1.5px;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.contact__body-frame-item a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 16px;
    border-bottom: 1.5px solid rgba(0, 0, 0, .05);
    position: relative;
    max-width: -webkit-max-content;
    max-width: -moz-max-content;
    max-width: max-content;
    padding-bottom: 10px;
    font-weight: 500;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.contact__body-frame-item a svg {
    width: 16px;
    height: 16px
}

.contact__body-frame-item:nth-child(2) {
    grid-column: 4;
    grid-row: 1
}

.contact__body-frame-item:nth-child(3) {
    grid-column: 4;
    grid-row: 2
}

.footer {
    width: 100%;
    margin-top: 120px;
    padding-bottom: 60px
}

.footer__up {
    display: grid;
    grid-template-columns: 28% 1fr;
    width: 100%;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    padding: 80px 0;
    border-top: 1px solid rgba(0, 0, 0, .05);
    border-bottom: 1px solid rgba(0, 0, 0, .05)
}

.footer__up .button {
    display: inline-block
}

.footer__up-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.footer__up-container .footer__contacts span {
    display: block
}

.footer__up-container .footer__contacts p {
    margin-top: 30px;
    font-size: 18px;
    opacity: .6
}

.footer__up-container .footer__contacts a {
    display: flex;
    position: relative;
    margin-top: 30px;
    padding-bottom: 10px;
    font-size: 22px;
    font-weight: 500;
    -webkit-transition: .3s;
    transition: .3s;
    max-width: max-content;
}

.footer__up-container .footer__contacts a svg {
    margin-left: 10px
}

.footer__up-container .footer__contacts a::after,
.footer__up-container .footer__contacts a::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 1.5px;
    -webkit-transition: .3s;
    transition: .3s
}

.footer__up-container .footer__contacts a::after {
    width: 100%;
    background: rgba(0, 0, 0, .05)
}

.footer__up-container .footer__contacts a::before {
    width: 0%;
    background: var(--green)
}

.footer__up-container .footer__contacts a:hover:before {
    width: 100%
}

.footer__main {
    display: grid;
    grid-template-columns: 28% 1fr;
    padding: 100px 0;
    width: 100%;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start
}

.footer__main .logo {
    width: 227px;
    height: 59px
}

.footer__main .info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 34px
}

.footer__main .info p {
    color: #000;
    font-size: 32px
}

.footer__main .info button {
    padding: 23px 42px;
    max-width: -webkit-max-content;
    max-width: -moz-max-content;
    max-width: max-content
}

.footer__main .menus {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 15%
}

.footer__main .menus nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 24px
}

.footer__main .menus nav span {
    margin-bottom: 10px;
    color: #000
}

.footer__main .menus nav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 20px
}

.footer__main .menus nav ul li {
    color: #000;
    opacity: .6
}

.footer__soft {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%
}

.footer__soft p {
    color: #000;
    opacity: .4
}

.footer__soft button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 6px;
    background: rgba(0, 0, 0, 0);
    color: rgba(54, 59, 35, .4)
}

.footer__soft button svg {
    width: 14px;
    height: 14px
}

.header {
    width: 100%;
    position: absolute;
    top: 70px;
    left: 0;
    background: rgba(0, 0, 0, 0);
    z-index: 99;
    -webkit-transition: all .5s ease;
    transition: all .5s ease
}

.header .container {
    padding: 0 70px
}

.header__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%
}

.header__body .header__logo {
    height: 48px
}

.header__body .header__logo .dark {
    display: none
}

.header__body .header__logo .light {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.header__body .header__logo img {
    width: 100%;
    height: 100%
}

.header__body .header__menu {
    padding: 18px 40px;
    background: var(--white);
    border-radius: 500px
}

.header__body .header__menu ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 36px
}

.header__body .header__menu li {
    color: #000;
    opacity: .7;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    overflow: hidden;
    max-height: 22.5px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.header__body .header__menu li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-transition: all .5s ease;
    transition: all .5s ease
}

.header__body .header__menu li:hover {
    opacity: 1
}

.header__body .header__menu li:hover a {
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%)
}

.header__body .header__menu li.current {
    opacity: 1
}

.header__body .header__action {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 12px
}

.header__body .header__action .language {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 6px;
    background: var(--white);
    border-radius: 500px;
    color: var(--black);
    position: relative;
}
.header__body .header__action .language:hover .language_child{
    max-height: 1000px;
}
.language_child{
    position: absolute;
    top: 120%;
    left: 50%;
    transform: translateX(-50%);
    background: var(--white);
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    max-height: 0;
    overflow: hidden;
    transition: all 0.5s ease;
}

.header__body .header__action a {
    padding: 18px 28px
}
.language_child a:not(:last-child){
    padding: 18px 28px 9px;
}
.header.back {
    -webkit-transform: translateY(-300%);
    -ms-transform: translateY(-300%);
    transform: translateY(-300%)
}

.main {
    overflow: hidden;
    width: 100%
}

.hero {
    width: 100%;
    height: 100vh;
    padding: 20px
}

.hero__body {
    border-radius: 24px;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
    padding: 50px
}

.hero__body img {
    width: 100%;
    height: 100%;
    border-radius: 24px;
    -o-object-fit: cover;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1
}

.hero__body .hero-title {
    color: var(--white);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    line-height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    margin-top: -30px
}

.hero__body .hero-title p {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.hero__body .hero-title p span.walker {
    width: 32px
}

.hero__body .hero-title p:nth-child(2) {
    margin-left: 160px
}

.hero__body .hero-module {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%
}

.hero__body .hero-module p {
    font-size: 20px;
    font-weight: 300;
    color: var(--white);
    opacity: .6;
    line-height: 150%
}

.hero__body .hero-module .action {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 28px
}

.hero__body .hero-module .action a {
    padding: 24px 40px
}

.partners {
    width: 100%;
    margin-top: var(--heading);
    overflow: hidden
}

.partners .container {
    overflow: hidden
}

.partners__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 48px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    overflow: hidden
}

.partners__body h2 {
    color: var(--black)
}

.partners__body .partners__stroke-wrap {
    position: relative;
    width: 100%
}

.partners__body .partners__stroke-wrap::after {
    width: 350px;
    height: 100%;
    position: absolute;
    content: "";
    top: 0;
    background: -webkit-gradient(linear, left top, right top, color-stop(31.1%, #fff), color-stop(88.84%, rgba(255, 255, 255, 0.1)));
    background: linear-gradient(90deg, #fff 31.1%, rgba(255, 255, 255, 0.1) 88.84%);
    z-index: 1;
    right: 0;
    rotate: 180deg
}

.partners__body .partners__stroke-wrap::before {
    width: 350px;
    height: 100%;
    position: absolute;
    content: "";
    top: 0;
    background: -webkit-gradient(linear, left top, right top, color-stop(31.1%, #fff), color-stop(88.84%, rgba(255, 255, 255, 0.1)));
    background: linear-gradient(90deg, #fff 31.1%, rgba(255, 255, 255, 0.1) 88.84%);
    z-index: 1;
    left: 0
}

.partners__body .partners__stroke {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 50px;
    width: 100%;
    position: relative;
    -webkit-animation: infinite 20s animPartners linear;
    animation: infinite 20s animPartners linear
}

.partners__body-frame {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 50px
}

.partners__body-frame img {
    max-width: 219px;
    max-height: 36px
}

.works {
    width: 100%;
    margin-top: var(--heading);
    padding-left: 70px;
    overflow: hidden
}

.works__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 60px
}

.works__body .works-head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    padding-right: 60px
}

.works__body .works-head .title {
    color: var(--black)
}

.works__body .works-head a {
    padding: 26px 40px
}

.works__body .works-container {
    width: 100%;
}

.works__body .works-container .work::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.8)));
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.8) 100%)
}

.works__body .works-container .work {
    width: 709px !important;
    border-radius: 24px;
    aspect-ratio: 1/1;
    position: relative;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    padding: 48px
}

.works__body .works-container .work img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -2
}

.works__body .works-container .work .work-information {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 32px
}

.works__body .works-container .work .work-information h3 {
    color: var(--white)
}

.works__body .works-container .work .work-information p {
    color: var(--white);
    font-weight: 300
}

.works__body .works-container .work .circle.animated {
    scale: 1
}

.works__body .works-container .work .circle {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: var(--green);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    -webkit-transition: scale .3s ease;
    transition: scale .3s ease;
    scale: 0;
    margin-top: -32px;
    margin-left: -32px
}

.works__body .works-container .work .circle svg {
    width: 18px;
    height: 18px
}

.indicators {
    width: 100%;
    margin-top: var(--heading)
}

.indicators__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: distribute;
    justify-content: space-between
}

.indicators__body .item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 30px
}

.indicators__body .item .awesome {
    color: var(--black);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    overflow: hidden
}

.indicators__body .item .awesome .animate-number {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    max-height: 128px;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
}

.indicators__body .item p {
    color: var(--black);
    opacity: .4
}

.request {
    width: 100%;
    margin-top: var(--heading)
}

.request__body {
    display: grid;
    grid-template-columns: 1fr 1fr;
    background: var(--grey);
    border-radius: 24px
}

.request__body .request__image {
    position: relative;
    border-radius: 24px;
    overflow: hidden
}

.request__body .request__image img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    -o-object-fit: cover;
    object-fit: cover
}

.request__body-frame {
    padding: 50px 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 30px
}

.request__body-frame .request__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 30px
}

.request__body-frame .request__head h2 {
    color: var(--black)
}

.request__body-frame .request__head p {
    font-weight: 300;
    color: var(--black);
    opacity: .4
}

.request__body-frame .request__form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 30px
}

.request__body-frame .request__form .inputs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 30px
}

.request__body-frame .request__form .inputs .input-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 16px
}

.request__body-frame .request__form .inputs .input-wrap label {
    font-size: 20px;
    color: var(--black);
    opacity: .5
}

.request__body-frame .request__form .inputs .input-wrap input {
    width: 100%;
    padding: 22px 30px;
    border-radius: 500px;
    background: var(--white);
    border: 1px solid rgba(54, 59, 35, .2);
    font-size: 17px;
    color: var(--black)
}

.request__body-frame .request__form .checkbox:has(input:checked) span {
    background: var(--green)
}

.request__body-frame .request__form .checkbox {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 18px;
    cursor: pointer
}

.request__body-frame .request__form .checkbox input {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    opacity: 0
}

.request__body-frame .request__form .checkbox span {
    width: 32px;
    aspect-ratio: 1/1;
    border: .5px solid #363b23;
    border-radius: 8px;
    background: var(--white);
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.request__body-frame .request__form .checkbox p {
    font-size: 16px;
    color: #000;
    opacity: .4
}

.request__body-frame .request__form button {
    margin-top: 10px;
    padding: 26px 40px;
    max-width: -webkit-max-content;
    max-width: -moz-max-content;
    max-width: max-content
}

.material {
    width: 100%;
    margin-top: var(--heading)
}

.material__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 70px
}

.material__body-head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%
}

.material__body-head h2 {
    color: var(--black)
}

.material__body-frame {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 24px
}

.material__body-frame .item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 48px
}

.material__body-frame .item img {
    aspect-ratio: 1/1;
    border-radius: 24px;
    width: 100%;
    position: relative;
    z-index: 1
}

.material__body-frame .item .info {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

.material__body-frame .item .info h3 {
    font-size: 42px;
    color: var(--black)
}

.material__body-frame .item .info p {
    max-width: 60%;
    font-size: 24px;
    color: var(--black);
    opacity: .4
}

* {
    padding: 0;
    margin: 0;
    border: 0
}

*,
*:before,
*:after {
    -webkit-box-sizing: border-box;
    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: inherit
}

a {
    color: inherit
}

:root {
    --base-text: 18px;
    --medium-text: 22px;
    --big-text: 128px;
    --title-text: 82px;
    --button-text: 18px;
    --work-title: 56px
}

.base {
    font-size: var(--base-text);
    line-height: 125%;
    text-align: start;
    font-weight: 400
}

.medium {
    font-size: var(--medium-text);
    line-height: 140%;
    text-align: start;
    font-weight: 400
}

.awesome {
    font-size: var(--big-text);
    line-height: 100%;
    text-align: start;
    font-weight: 400
}

.title {
    font-size: var(--title-text);
    line-height: 100%;
    text-align: start;
    font-weight: 400
}

.button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    border-radius: 60px;
    font-size: var(--button-text);
    line-height: 125%;
    text-align: start;
    font-weight: 400
}

.work__title {
    font-size: var(--work-title);
    line-height: 100%;
    text-align: start;
    font-weight: 400
}

:root {
    --white: #FFFFFF;
    --black: black;
    --green: #B8F13C;
    --so-green: #363B23;
    --grey: #F4F4F4;
    --heading: 150px
}

.work__heading {
    width: 100%;
    margin-top: 207px
}

.work__heading-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 60px
}

.work__heading-body .breadcrumbs a:hover {
    opacity: 1
}

.work__heading-body .breadcrumbs a {
    color: var(--black);
    opacity: .4;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.work__heading-body .breadcrumbs span {
    color: var(--black)
}

.work__heading-body h1 {
    color: var(--black);
    display: flex;
    flex-wrap: wrap;
}

.work__preview {
    width: 100%;
    margin-top: var(--heading)
}

.work__preview-body {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 70px
}

.work__preview-body img {
    width: 100%;
    aspect-ratio: 2.5/1;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 24px
}

.work__preview-body-attr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    gap: 70px
}

.work__preview-body-attr .item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 18px
}

.work__preview-body-attr .item span {
    font-size: 24px;
    color: var(--black);
    opacity: .6
}

.work__preview-body-attr .item p {
    font-size: 32px;
    color: var(--black)
}

.work__blocks {
    width: 100%;
    margin-top: var(--heading)
}

.work__blocks-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 70px
}

.work__blocks-body-about {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 70px
}

.work__blocks-body-about .head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%
}

.work__blocks-body-about .head h2 {
    color: var(--black)
}

.work__blocks-body-about .head p {
    color: var(--black);
    opacity: .6;
    max-width: 40%
}

.work__blocks-body-about img {
    width: 100%;
    aspect-ratio: 2.5/1;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 24px
}

.work__blocks-body-attr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%
}

.work__blocks-body-attr .item {
    padding: 48px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 42px
}

.work__blocks-body-attr .item h3 {
    font-size: 42px;
    color: var(--black);
    line-height: 120%;
}

.work__blocks-body-attr .item p {
    color: var(--black);
    opacity: .6
}

.work__blocks-body-gallery {
    display: flex;
    flex-wrap: wrap;
    gap: 24px
}

.work__blocks-body-gallery img {
    border-radius: 24px;
    -o-object-fit: cover;
    object-fit: cover;
    width: 100%
}

.work__blocks-body-gallery img:nth-child(1), .work__blocks-body-gallery img:nth-child(2) {
    width: 49.3%;
    aspect-ratio: 1/1;
}

.work__blocks-body-gallery img:last-child {
    width: 100%;
    height: 703px;
}
.calculate{
    width: 100%;
    height: 100vh;
    background: #00000050;
    backdrop-filter: blur(10px);
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999;
    display: none;
}
.calculate__body{
    display: grid;
    border-radius: 24px;
    grid-template-columns: 1fr 1fr;
    background: var(--white);
    width: 1426px;
    position: absolute;
    transform: translate(-50%,-50%);
    top: 50%;
    left: 50%;
}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.calculate__body img{
    width: 789px;
    height: 1022px;
    border-radius: 24px;
    object-fit: cover;
}
.calculate__body-main{
    display: flex;
    flex-direction: column;
    gap: 24px;
    padding: 42px;
    .head{
        display: flex;
        width: 100%;
        justify-content: space-between;
        align-items: center;
        h2{
            color: var(--black);
            font-size: 32px;
        }
        button{
            background: transparent;
            svg{
                width: 32px;
                height: 32px;
            }
        }
    }
    .calculate__body-main-form{
        display: flex;
        flex-direction: column;
        gap: 16px;
        .item--form{
            display: flex;
            flex-direction: column;
            gap: 12px;
            h3{
                color: var(--black);
                opacity: .6;
            }
            .item--form-radio{
                display: flex;
                flex-wrap: wrap;
                gap: 12px;
                .radio-item:has(input:checked){
                    background: var(--green);
                    opacity: 1;
                    border-color: transparent;
                }
                .radio-item{
                    position: relative;
                    padding: 21px 30px;
                    background: transparent;
                    color: var(--black);
                    opacity: 0.6;
                    transition: all 0.3s ease;
                    border-radius: 500px;
                    cursor: pointer;
                    border: 1px solid var(--black);
                    input{
                        position: absolute;
                        top: 0;
                        left: 0;
                        width: 100%;
                        height: 100%;
                        opacity: 0;
                        z-index: 1;
                        cursor: pointer;
                    }
                }
            }
            .inputs{
                display: flex;
                gap: 18px;
                input{
                    padding: 21px 0 21px 30px;
                    color: var(--black);
                    border-radius: 500px;
                    border: 1px solid #00000099;
                    width: 33%;
                }
            }
            .inputs.dati{
                flex-wrap: wrap;
                input{
                    width: 48%;
                }
                input:last-child{
                    width: 100%;
                }
            }
            .selected:hover{
                max-height: 1000px;
            }
            .selected{
                width: 100%;
                padding: 21px 32px;
                border: 1px solid var(--black);
                display: flex;
                flex-direction: column;
                gap: 16px;
                opacity: .6;
                max-height: 66px;
                overflow: hidden;
                transition: all 0.6s ease-in-out;
                border-radius: 33px;
                span{
                    cursor: pointer;
                }
            }
        }
        .price{
            display: flex;
            align-items: center;
            justify-content: space-between;
            h4{
                color: var(--black);
                opacity: .6;
            }
            span{
                font-size: 32px;
                color: var(--black);
            }
        }
        .calculate--button{
            width: 100%;
            height: 71px;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .description{
            color: var(--black);
            opacity: .6;
        }
    }
}
@media(max-width: 2560px) {
    html {
        font-size: .0520833333vw
    }

    body {
        max-width: 1920rem
    }

    .preloader .logo {
        width: 460rem;
        height: 176rem
    }

    .container {
        padding: 0 70rem;
    }

    :root {
        --base-text: 18rem;
        --medium-text: 22rem;
        --big-text: 128rem;
        --title-text: 82rem;
        --button-text: 18rem;
        --work-title: 56rem;
        --heading: 150rem
    }

    .button {
        gap: 8rem;
        border-radius: 60rem
    }

    .button-fade .wrap-animation {
        max-height: 22.5rem
    }

    .main-title span.walker {
        width: 32rem
    }

    .poster {
        height: 780rem;
        padding: 20rem
    }

    .poster__body {
        gap: 60rem;
        padding: 113rem 50rem;
        overflow: hidden;
        justify-content: flex-end;
        border-radius: 24rem;
        width: 100%;
    }

    .poster__body-works--tab {
        gap: 48rem
    }

    .poster__body-works--tab button {
        padding: 0 12rem 12rem 12rem;
        font-size: 32rem
    }

    .poster__body-works--tab button::after {
        height: 1rem
    }

    .about__body {
        gap: 80rem
    }

    .about__body-frame {
        gap: 24rem
    }

    .about__body-frame img {
        width: 712rem;
        height: 800rem
    }

    .about__body-frame-info {
        gap: 200rem;
        padding: 48rem
    }

    .about__body-frame-info .item {
        gap: 46rem
    }

    .button--green svg {
        width: 14rem;
        height: 14rem
    }

    .button--white {
        border: 1.5rem solid var(--white)
    }

    .button--white svg {
        width: 14rem;
        height: 14rem
    }

    .button--small {
        padding: 18rem 28rem
    }

    .button--middle {
        padding: 26rem 40rem
    }

    .case__body-item {
        gap: 80rem
    }

    .case__body-item .item--frame {
        row-gap: 100rem;
        -webkit-column-gap: 38rem;
        -moz-column-gap: 38rem;
        column-gap: 38rem
    }

    .case__body-item .item--frame-el {
        gap: 48rem;
        padding-bottom: 100rem;
        border-bottom: 1rem solid rgba(178, 178, 178, .2)
    }

    .case__body-item .item--frame-el .wrap {
        border-radius: 24rem
    }

    .case__body-item .item--frame-el .wrap img {
        border-radius: 24rem
    }

    .case__body-item .item--frame-el .wrap .circle {
        width: 64rem;
        height: 64rem;
        margin-top: -32rem;
        margin-left: -32rem
    }

    .case__body-item .item--frame-el .wrap .circle svg {
        width: 18rem;
        height: 18rem
    }

    .case__body-item .item--frame-el .info h4 {
        font-size: 42rem
    }

    .case__body-item .item--frame-el .info p {
        font-size: 24rem
    }

    .contact {
        padding: 259rem 0rem 149rem 0rem
    }

    .contact__body {
        gap: 24rem
    }

    .contact__body-request {
        border-radius: 24rem;
        padding: 60rem;
        gap: 32rem
    }

    .contact__body-request-head {
        gap: 36rem
    }

    .contact__body-request .request--form {
        gap: 40rem
    }

    .contact__body-request .request--form .inputs {
        gap: 32rem
    }

    .contact__body-request .request--form .inputs .input--form-wrap {
        gap: 16rem
    }

    .contact__body-request .request--form .inputs .input--form-wrap label {
        font-size: 20rem
    }

    .contact__body-request .request--form .inputs .input--form-wrap input {
        padding: 22rem 30rem;
        border-radius: 500rem;
        border: 1rem solid rgba(54, 59, 35, .2);
        font-size: 17rem
    }

    .contact__body-request .request--form .action {
        gap: 32rem
    }

    .contact__body-request .request--form .action .checkbox {
        gap: 18rem
    }

    .contact__body-request .request--form .action .checkbox span {
        width: 32rem;
        border: .5rem solid #363b23;
        border-radius: 8rem
    }

    .contact__body-request .request--form .action .checkbox p {
        font-size: 16rem
    }

    .contact__body-request .request--form .action button {
        margin-top: 10rem;
        padding: 26rem 40rem
    }

    .contact__body-frame {
        gap: 24rem
    }

    .contact__body-frame div {
        padding: 48rem;
        border-radius: 24rem
    }

    .contact__body-frame-address {
        gap: 48rem
    }

    .contact__body-frame-address .info {
        gap: 20rem
    }

    .contact__body-frame-address .info h3 {
        color: var(--black)
    }

    .contact__body-frame-address .info p {
        border-bottom: 1.5rem solid rgba(0, 0, 0, .05);
        padding-bottom: 10rem
    }

    .contact__body-frame-address .info p::after {
        height: 1.5rem
    }

    .contact__body-frame-address iframe {
        height: 164rem;
        border-radius: 24rem
    }

    .contact__body-frame-item {
        gap: 20rem
    }

    .contact__body-frame-item a::after {
        height: 1.5rem
    }

    .contact__body-frame-item a {
        gap: 16rem;
        border-bottom: 1.5rem solid rgba(0, 0, 0, .05);
        padding-bottom: 10rem
    }

    .contact__body-frame-item a svg {
        width: 16rem;
        height: 16rem
    }

    .footer {
        margin-top: 120rem;
        padding-bottom: 60rem
    }

    .footer__up {
        padding: 80rem 0;
        border-top: 1rem solid rgba(0, 0, 0, .05);
        border-bottom: 1rem solid rgba(0, 0, 0, .05)
    }

    .footer__up-container .footer__contacts p {
        margin-top: 30rem;
        font-size: 18rem
    }

    .footer__up-container .footer__contacts a {
        margin-top: 30rem;
        padding-bottom: 10rem;
        font-size: 22rem
    }

    .footer__up-container .footer__contacts a svg {
        margin-left: 10rem;
        width: 18rem;
        height: 18rem
    }

    .footer__up-container .footer__contacts a::after,
    .footer__up-container .footer__contacts a::before {
        height: 1.5rem
    }

    .footer__main {
        padding: 100rem 0
    }

    .footer__main .logo {
        width: 227rem;
        height: 59rem
    }

    .footer__main .info {
        gap: 34rem
    }

    .footer__main .info p {
        font-size: 32rem
    }

    .footer__main .info button {
        padding: 23rem 42rem
    }

    .footer__main .menus {
        gap: 15%
    }

    .footer__main .menus nav {
        gap: 24rem
    }

    .footer__main .menus nav span {
        margin-bottom: 10rem
    }

    .footer__main .menus nav ul {
        gap: 20rem
    }

    .footer__soft button {
        gap: 6rem
    }

    .footer__soft button svg {
        width: 14rem;
        height: 14rem
    }

    .header {
        top: 70rem
    }

    .header .container {
        padding: 0 70rem
    }

    .header__body .header__logo {
        height: 48rem
    }

    .header__body .header__menu {
        padding: 18rem 40rem;
        border-radius: 500rem
    }

    .header__body .header__menu ul {
        gap: 36rem
    }

    .header__body .header__menu li {
        max-height: 22.5rem
    }

    .header__body .header__action {
        gap: 12rem
    }

    .header__body .header__action .language {
        gap: 6rem;
        border-radius: 500rem;
    }
    .language_child{
        border-radius: 16rem;
    }

    .header__body .header__action a {
        padding: 18rem 28rem
    }
    .language_child a:not(:last-child){
        padding: 18rem 28rem 9rem;
    }
    .hero {
        padding: 20rem
    }

    .hero__body {
        border-radius: 24rem;
        padding: 50rem
    }

    .hero__body img {
        border-radius: 24rem
    }

    .hero__body .hero-title {
        margin-top: -30rem
    }

    .hero__body .hero-title p span.walker {
        width: 32rem
    }

    .hero__body .hero-title p:nth-child(2) {
        margin-left: 160rem
    }

    .hero__body .hero-module p {
        font-size: 20rem
    }

    .hero__body .hero-module .action {
        gap: 28rem
    }

    .hero__body .hero-module .action a {
        padding: 24rem 40rem
    }

    .partners__body {
        gap: 48rem
    }

    .partners__body .partners__stroke-wrap::after {
        width: 350rem
    }

    .partners__body .partners__stroke-wrap::before {
        width: 350rem
    }

    .partners__body .partners__stroke {
        gap: 50rem
    }

    .partners__body-frame {
        gap: 50rem
    }

    .partners__body-frame img {
        max-width: 219rem;
        max-height: 36rem
    }

    .works {
        padding-left: 70rem
    }

    .works__body {
        gap: 60rem
    }

    .works__body .works-head {
        padding-right: 60rem
    }

    .works__body .works-head a {
        padding: 26rem 40rem
    }


    .works__body .works-container .work {
        width: 709rem !important;
        border-radius: 24rem;
        padding: 48rem
    }

    .works__body .works-container .work .work-information {
        gap: 32rem
    }

    .works__body .works-container .work .circle {
        width: 64rem;
        height: 64rem;
        margin-top: -32rem;
        margin-left: -32rem
    }

    .works__body .works-container .work .circle svg {
        width: 18rem;
        height: 18rem
    }

    .indicators__body .item {
        gap: 30rem
    }

    .indicators__body .item .awesome .animate-number {
        max-height: 128rem
    }

    .request__body {
        border-radius: 24rem
    }

    .request__body .request__image {
        border-radius: 24rem
    }

    .request__body-frame {
        padding: 50rem 60rem;
        gap: 30rem
    }

    .request__body-frame .request__head {
        gap: 30rem
    }

    .request__body-frame .request__form {
        gap: 30rem
    }

    .request__body-frame .request__form .inputs {
        gap: 30rem
    }

    .request__body-frame .request__form .inputs .input-wrap {
        gap: 16rem
    }

    .request__body-frame .request__form .inputs .input-wrap label {
        font-size: 20rem
    }

    .request__body-frame .request__form .inputs .input-wrap input {
        padding: 22rem 30rem;
        border-radius: 500rem;
        border: 1rem solid rgba(54, 59, 35, .2);
        font-size: 17rem
    }

    .request__body-frame .request__form .checkbox {
        gap: 18rem
    }

    .request__body-frame .request__form .checkbox span {
        width: 32rem;
        border: .5rem solid #363b23;
        border-radius: 8rem
    }

    .request__body-frame .request__form .checkbox p {
        font-size: 16rem
    }

    .request__body-frame .request__form button {
        margin-top: 10rem;
        padding: 26rem 40rem
    }

    .material__body {
        gap: 70rem
    }

    .material__body-frame {
        gap: 24rem
    }

    .material__body-frame .item {
        gap: 48rem
    }

    .material__body-frame .item img {
        border-radius: 24rem
    }

    .material__body-frame .item .info h3 {
        font-size: 42rem
    }

    .material__body-frame .item .info p {
        max-width: 60%;
        font-size: 24rem
    }

    .work__heading {
        margin-top: 207rem
    }

    .work__heading-body {
        gap: 60rem
    }

    .work__preview-body {
        gap: 70rem
    }

    .work__preview-body img {
        border-radius: 24rem
    }

    .work__preview-body-attr {
        gap: 70rem
    }

    .work__preview-body-attr .item {
        gap: 18rem
    }

    .work__preview-body-attr .item span {
        font-size: 24rem
    }

    .work__preview-body-attr .item p {
        font-size: 32rem
    }

    .work__blocks-body {
        gap: 70rem
    }

    .work__blocks-body-about {
        gap: 70rem
    }

    .work__blocks-body-about img {
        border-radius: 24rem
    }

    .work__blocks-body-attr .item {
        padding: 48rem;
        gap: 42rem
    }

    .work__blocks-body-attr .item h3 {
        font-size: 42rem
    }

    .work__blocks-body-gallery {
        gap: 24rem
    }
    .work__blocks-body-gallery img {
        border-radius: 24rem
    }
    .work__blocks-body-gallery img:last-child {
    height: 703rem;
    }
    .calculate__body{
        border-radius: 24rem;
        width: 1426rem;
    }
    .calculate__body img{
        width: 789rem;
        height: 1022rem;
        border-radius: 24rem;
    }
    .calculate__body-main{
        gap: 24rem;
        padding: 42rem;
        .head{
            h2{
                font-size: 32rem;
            }
            button{
                svg{
                    width: 32rem;
                    height: 32rem;
                }
            }
        }
        .calculate__body-main-form{
            gap: 16rem;
            .item--form{
                gap: 12rem;
                .item--form-radio{
                    gap: 12rem;
                    .radio-item{
                        padding: 21rem 30rem;
                        border-radius: 500rem;
                        border: 1rem solid var(--black);
                    }
                }
                .inputs{
                    gap: 18rem;
                    input{
                        padding: 21rem 0 21rem 30rem;
                        border-radius: 500px;
                        border: 1rem solid #00000099;
                    }
                }
                .selected:hover{
                    max-height: 1000px;
                }
                .selected{
                    width: 100%;
                    padding: 21rem 32rem;
                    border: 1px solid var(--black);
                    gap: 16rem;
                    max-height: 66rem;
                    border-radius: 33rem;
                    span{
                        cursor: pointer;
                    }
                }
            }
            .price{
                span{
                    font-size: 32rem;
                }
            }
            .calculate--button{
                height: 71rem;
            }
        }
    }
}

@media(max-width: 780px) {
    html {
        font-size: .2564102564vw
    }

    body {
        max-width: 390rem
    }

    .desk {
        display: none !important;
    }

    .mob {
        display: flex !important;
    }

    .el--fade {
        -webkit-transition: all .6s ease-out;
        transition: all .6s ease-out;
        opacity: 0;
        -webkit-transform: translateY(10%);
        -ms-transform: translateY(10%);
        transform: translateY(10%)
    }

    .main {
        overflow: hidden
    }

    .preloader .logo {
        width: 230rem;
        height: 88rem
    }

    .container {
        padding: 0 18rem;
    }

    :root {
        --base-text: 16rem;
        --medium-text: 16rem;
        --big-text: 52rem;
        --title-text: 28rem;
        --button-text: 18rem;
        --work-title: 24rem;
        --heading: 64rem
    }

    .button {
        gap: 8rem;
        border-radius: 60rem
    }

    .button-fade .wrap-animation {
        max-height: 22.5rem
    }

    .main-title span.walker {
        width: 16rem
    }

    .poster {
        height: 380rem;
        padding: 0;
    }

    .poster__body {
        gap: 24rem;
        padding: 64rem 18rem;
        border-radius: 0;
    }

    .poster__body-works--tab {
        gap: 12rem;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .poster__body-works--tab button {
        padding: 0 8rem 8rem 8rem;
        font-size: 16rem
    }

    .poster__body-works--tab button::after {
        height: 1rem
    }

    .about .container {
        padding: 0rem
    }

    .about__body {
        gap: 42rem
    }

    .about__body-frame {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        gap: 64rem
    }

    .about__body-frame img {
        width: 100%;
        height: auto;
        aspect-ratio: 1/1;
        border-radius: 18rem
    }

    .about__body-frame-info {
        gap: 64rem;
        padding: 0rem
    }

    .about__body-frame-info .item {
        gap: 24rem
    }

    .button--green svg {
        width: 14rem;
        height: 14rem
    }

    .button--white {
        border: 1.5rem solid var(--white)
    }

    .button--white svg {
        width: 14rem;
        height: 14rem
    }

    .button--small {
        padding: 18rem 28rem
    }

    .button--middle {
        padding: 24rem 40rem
    }

    .case__body-item {
        gap: 32rem
    }

    .case__body-item .case--item-head {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 15rem
    }

    .case__body-item .case--item-head button {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        max-width: none
    }

    .case__body-item .item--frame {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        row-gap: 16rem;
        -webkit-column-gap: 16rem;
        -moz-column-gap: 16rem;
        column-gap: 16rem;
        width: 100%
    }

    .case__body-item .item--frame-el {
        gap: 24rem;
        padding-bottom: 32rem;
        border-bottom: 1rem solid rgba(178, 178, 178, .2)
    }

    .case__body-item .item--frame-el .wrap {
        border-radius: 18rem
    }

    .case__body-item .item--frame-el .wrap img {
        border-radius: 18rem
    }

    .case__body-item .item--frame-el .wrap .circle {
        display: none !important;
        width: 64rem;
        height: 64rem;
        margin-top: -32rem;
        margin-left: -32rem
    }

    .case__body-item .item--frame-el .wrap .circle svg {
        width: 18rem;
        height: 18rem
    }

    .case__body-item .item--frame-el .info {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 18rem
    }

    .case__body-item .item--frame-el .info h4 {
        font-size: 24rem
    }

    .case__body-item .item--frame-el .info p {
        font-size: 16rem;
        max-width: none
    }

    .contact {
        padding: 126rem 0rem 64rem 0rem
    }

    .contact__body {
        gap: 16rem
    }

    .contact__body-request {
        border-radius: 18rem;
        padding: 24rem;
        gap: 24rem
    }

    .contact__body-request-head {
        gap: 24rem
    }

    .contact__body-request .request--form {
        gap: 24rem
    }

    .contact__body-request .request--form .inputs {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 18rem
    }

    .contact__body-request .request--form .inputs .input--form-wrap {
        gap: 12rem
    }

    .contact__body-request .request--form .inputs .input--form-wrap label {
        font-size: 18rem
    }

    .contact__body-request .request--form .inputs .input--form-wrap input {
        padding: 16rem 24rem;
        border-radius: 500rem;
        border: 1rem solid rgba(54, 59, 35, .2);
        font-size: 16rem
    }

    .contact__body-request .request--form .action {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 32rem
    }

    .contact__body-request .request--form .action .checkbox {
        gap: 24rem
    }

    .contact__body-request .request--form .action .checkbox span {
        width: 24rem;
        min-width: 24rem;
        border: .5rem solid #363b23;
        border-radius: 4rem
    }

    .contact__body-request .request--form .action .checkbox p {
        font-size: 14rem
    }

    .contact__body-request .request--form .action button {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin-top: 0rem;
        padding: 24rem 40rem
    }

    .contact__body-frame {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 16rem
    }

    .contact__body-frame div {
        padding: 24rem;
        border-radius: 18rem
    }

    .contact__body-frame-address {
        gap: 24rem
    }

    .contact__body-frame-address .info {
        gap: 18rem
    }

    .contact__body-frame-address .info h3 {
        color: var(--black)
    }

    .contact__body-frame-address .info p {
        border-bottom: 1.5rem solid rgba(0, 0, 0, .05);
        padding-bottom: 10rem
    }

    .contact__body-frame-address .info p::after {
        height: 1.5rem
    }

    .contact__body-frame-address iframe {
        height: 260rem;
        border-radius: 24rem
    }

    .contact__body-frame-item {
        gap: 18rem
    }

    .contact__body-frame-item a::after {
        height: 1.5rem
    }

    .contact__body-frame-item a {
        gap: 12rem;
        border-bottom: 1.5rem solid rgba(0, 0, 0, .05);
        padding-bottom: 6rem
    }

    .contact__body-frame-item a svg {
        width: 13rem;
        height: 13rem
    }

    .footer {
        margin-top: var(--heading);
        padding-bottom: var(--heading)
    }

    .footer__up {
        padding: 42rem 0;
        border-top: 1rem solid rgba(0, 0, 0, .05);
        border-bottom: 1rem solid rgba(0, 0, 0, .05);
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 24rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    .footer__up div:has(.button) {
        width: 100%
    }

    .footer__up .button {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .footer__up-container {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        row-gap: 32rem;
        -webkit-column-gap: 22rem;
        -moz-column-gap: 22rem;
        column-gap: 22rem
    }

    .footer__up-container .footer__contacts p {
        margin-top: 18rem;
        font-size: 16rem;
        max-width: 285rem
    }

    .footer__up-container .footer__contacts a {
        margin-top: 12rem;
        padding-bottom: 6rem;
        font-size: 18rem
    }

    .footer__up-container .footer__contacts a svg {
        margin-left: 12rem;
        width: 13rem;
        height: 13rem
    }

    .footer__up-container .footer__contacts a::after,
    .footer__up-container .footer__contacts a::before {
        height: 1.5rem
    }

    .footer__main {
        padding: 42rem 0;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 30rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    .footer__main .logo {
        width: 124rem;
        height: 32rem
    }

    .footer__main .info {
        gap: 34rem
    }

    .footer__main .info p {
        font-size: 32rem
    }

    .footer__main .info button {
        padding: 23rem 42rem
    }

    .footer__main .menus {
        row-gap: 42rem;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }

    .footer__main .menus nav {
        gap: 24rem
    }

    .footer__main .menus nav span {
        margin-bottom: 10rem
    }

    .footer__main .menus nav ul {
        gap: 20rem
    }

    .footer__soft {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 32rem;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .footer__soft button {
        gap: 6rem
    }

    .footer__soft button svg {
        width: 14rem;
        height: 14rem
    }

    .header__menu.active {
        height: 100vh;
        padding: 48rem 0rem;
    }

    .header__menu {
        width: 100%;
        height: 100vh;
        background: var(--white);
        padding: 0rem 18rem;
        height: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: flex-end;
        gap: 24rem;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-transition: all .3s ease-out;
        transition: all .3s ease-out;
        overflow: hidden;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 99
    }

    .header__menu nav {
        width: 100%
    }

    .header__menu nav ul {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 24rem;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .header__menu nav ul li {
        color: var(--black);
        opacity: .6
    }

    .header__menu nav ul li.current {
        opacity: 1
    }

    .header__menu .action {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 16rem;
        width: 100%;
        padding: 0 18rem
    }

    .header__menu .action a {
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .header__menu .action a.button--white {
        border: 1rem solid var(--black);
        color: var(--black)
    }

    .header.active .header__logo .dark {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    .header.active .header__logo .light {
        display: none
    }

    .header.active .burger {
        background: var(--black)
    }

    .header.active .burger span {
        background: var(--white)
    }

    .header {
        top: 44rem;
        z-index: 100
    }
    .header .container{
        padding: 0 18rem;
    }
    .header .container.home-container{
        padding: 0 25rem;
    }

    .header__body .header__logo {
        height: 28rem
    }

    .header__body .header__logo .dark {
        display: none
    }

    .header__body .header__logo .light {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex
    }

    .header__body .header__menu {
        padding: 18rem 40rem;
        border-radius: 500rem
    }

    .header__body .header__menu ul {
        gap: 36rem
    }

    .header__body .header__menu li {
        max-height: 22.5rem
    }

    .header__body .header__action {
        gap: 12rem
    }

    .header__body .header__action .language {
        gap: 6rem;
        border-radius: 500rem;
    }
    .language_child{
        border-radius: 16rem;
    }
    .header__body .header__action a {
        padding: 18rem 28rem
    }

    .header__body .burger.active {
        gap: 0;
        overflow: hidden
    }

    .header__body .burger.active span {
        position: absolute
    }

    .header__body .burger.active span:nth-child(1) {
        rotate: 45deg
    }

    .header__body .burger.active span:nth-child(2) {
        rotate: -45deg
    }

    .header__body .burger {
        width: 64rem;
        height: 38rem;
        background: var(--white);
        border-radius: 500rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 5rem;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        position: relative;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .header__body .burger span {
        width: 16rem;
        height: 2rem;
        -webkit-transition: all .3s ease;
        transition: all .3s ease;
        background: var(--black)
    }

    .hero {
        padding: 12rem 12rem 12rem 12rem;
        height: auto;
    }

    .hero__body {
        border-radius: 48rem;
        padding: 128rem 32rem 32rem 32rem;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        gap: 80rem
    }

    .hero__body img {
        border-radius: 48rem
    }

    .hero__body .hero-title {
        position: static;
        margin-top: 0rem;
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        transform: translate(0, 0)
    }

    .hero__body .hero-title p span.walker {
        width: 16rem
    }

    .hero__body .hero-title p:nth-child(2) {
        margin-left: 54rem
    }

    .hero__body .hero-module {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        gap: 42rem
    }

    .hero__body .hero-module p {
        font-size: 16rem
    }

    .hero__body .hero-module p br {
        display: none
    }

    .hero__body .hero-module .action {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 16rem;
        width: 100%
    }

    .hero__body .hero-module .action a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding: 24rem 40rem;
        white-space: nowrap;
        width: 100%
    }
    .hero__body .hero-module .action a .wrap-animation{
        max-width: max-content;
    }

    .partners__body {
        gap: 24rem
    }

    .partners__body .partners__stroke-wrap::after {
        width: 175rem
    }

    .partners__body .partners__stroke-wrap::before {
        width: 175rem
    }

    .partners__body .partners__stroke {
        gap: 24rem
    }

    .partners__body-frame {
        gap: 24rem
    }

    .partners__body-frame img {
        max-width: 110rem;
        max-height: 18rem
    }

    .works {
        padding-left: 0rem;
        padding: 0 18rem
    }

    .works__body {
        gap: 42rem
    }

    .works__body .works-head {
        padding-right: 0rem;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 15rem;
        width: 100%
    }

    .works__body .works-head a {
        padding: 24rem 40rem;
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center
    }

    .works__body .works-container .work {
        width: 100% !important;
        border-radius: 18rem;
        min-width: auto;
        aspect-ratio: 1/1;
        height: auto;
        padding: 24rem
    }

    .works__body .works-container .work .work-information {
        gap: 24rem
    }

    .works__body .works-container .work .circle {
        display: none !important;
        width: 64rem;
        height: 64rem;
        margin-top: -32rem;
        margin-left: -32rem
    }

    .works__body .works-container .work .circle svg {
        width: 18rem;
        height: 18rem
    }

    .indicators__body {
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        row-gap: 42rem;
        -webkit-column-gap: 44rem;
        -moz-column-gap: 44rem;
        column-gap: 44rem
    }

    .indicators__body .item {
        gap: 24rem
    }

    .indicators__body .item .awesome .animate-number {
        max-height: 52rem
    }

    .request__body {
        border-radius: 24rem;
        grid-template-columns: 1fr;
        gap: 42rem
    }

    .request__body .request__image {
        border-radius: 24rem;
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        width: 100%;
        aspect-ratio: 1/1
    }

    .request__body .request__image img {
        position: static
    }

    .request__body-frame {
        padding: 24rem 24rem 0 24rem;
        gap: 30rem
    }

    .request__body-frame .request__head {
        gap: 24rem
    }

    .request__body-frame .request__form {
        gap: 24rem
    }

    .request__body-frame .request__form .inputs {
        gap: 18rem
    }

    .request__body-frame .request__form .inputs .input-wrap {
        gap: 12rem
    }

    .request__body-frame .request__form .inputs .input-wrap label {
        font-size: 18rem
    }

    .request__body-frame .request__form .inputs .input-wrap input {
        padding: 16rem 24rem;
        border-radius: 500rem;
        border: 1rem solid rgba(54, 59, 35, .2);
        font-size: 15rem
    }

    .request__body-frame .request__form .checkbox {
        gap: 24rem
    }

    .request__body-frame .request__form .checkbox span {
        width: 24rem;
        min-width: 24rem;
        border: .5rem solid #363b23;
        border-radius: 4rem
    }

    .request__body-frame .request__form .checkbox p {
        font-size: 14rem
    }

    .request__body-frame .request__form button {
        margin-top: 8rem;
        padding: 24rem 40rem;
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        max-width: none
    }

    .material__body {
        gap: 42rem
    }

    .material__body-head {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 16rem;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }

    .material__body-head a {
        width: 100%;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding: 24rem
    }

    .material__body-frame {
        gap: 24rem;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }

    .material__body-frame .item {
        gap: 24rem
    }

    .material__body-frame .item img {
        border-radius: 18rem
    }

    .material__body-frame .item .info {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 18rem
    }

    .material__body-frame .item .info h3 {
        font-size: 24rem
    }

    .material__body-frame .item .info p {
        max-width: none;
        font-size: 16rem
    }

    .work__heading {
        margin-top: 126rem
    }

    .work__heading-body {
        gap: 24rem
    }

    .work__preview-body {
        gap: 32rem
    }

    .work__preview-body img {
        border-radius: 18rem;
        aspect-ratio: 1/1
    }

    .work__preview-body-attr {
        display: grid;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 1fr 1fr;
        row-gap: 18rem;
        -webkit-column-gap: 0;
        -moz-column-gap: 0;
        column-gap: 0
    }

    .work__preview-body-attr .item {
        gap: 18rem
    }

    .work__preview-body-attr .item span {
        font-size: 18rem
    }

    .work__preview-body-attr .item p {
        font-size: 15rem
    }

    .work__blocks-body {
        gap: 64rem
    }

    .work__blocks-body-about {
        gap: 32rem
    }

    .work__blocks-body-about .head {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 18rem
    }

    .work__blocks-body-about .head p {
        max-width: none
    }

    .work__blocks-body-about img {
        border-radius: 18rem;
        aspect-ratio: 1/1
    }

    .work__blocks-body-attr {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 42rem
    }

    .work__blocks-body-attr .item {
        padding: 0rem;
        gap: 18rem
    }

    .work__blocks-body-attr .item h3 {
        font-size: 24rem
    }

    .work__blocks-body-gallery {
        gap: 12rem
    }

    .work__blocks-body-gallery img {
        border-radius: 18rem
    }
    .work__blocks-body-gallery img:nth-child(1), .work__blocks-body-gallery img:nth-child(2) {
        width: 48.3%;
        aspect-ratio: 1/1;
    }
    .work__blocks-body-gallery img:last-child {
        height: 175rem;
    }
    .calculate{
        padding: 24rem;
    }
    .calculate__body{
        display: flex;
        border-radius: 18rem;
        flex-direction: column;
        gap: 42rem;
        width: 100%;
        top: 24rem;
        transform: translate(0, 0);
        position: static;
        overflow: auto;
        max-height: 100%;
    }
    .calculate__body img{
        width: 100%;
        height: 354rem;
        border-radius: 18rem;
        order: 1;
        display: none;
    }
    .calculate__body-main{
        gap: 24rem;
        padding: 24rem;
        .head{
            h2{
                font-size: 24rem;
            }
            button{
                svg{
                    width: 24rem;
                    height: 24rem;
                }
            }
        }
        .calculate__body-main-form{
            gap: 18rem;
            .item--form{
                gap: 12rem;
                .item--form-radio{
                    gap: 12rem;
                    .radio-item{
                        padding: 16rem 24rem;
                        border-radius: 500rem;
                        border: 1rem solid var(--black);
                    }
                }
                .inputs.dati{
                    input{
                        width: 100%;
                    }
                }
                .inputs{
                    display: grid;
                    grid-template-columns: repeat(2, 1fr);
                    grid-template-rows: repeat(2, 1fr);
                    gap: 12rem;
                    input{
                        padding: 16rem 0 16rem 24rem;
                        border-radius: 500px;
                        border: 1rem solid #00000099;
                        width: 135rem;
                        grid-column: span 1;
                        grid-row: span 1;
                        width: 100%;
                    }
                    input:last-child{
                        grid-column: 1 / span 2;
                        grid-row: 2;
                    }
                }
                .selected:hover{
                    max-height: 1000px;
                }
                .selected{
                    width: 100%;
                    padding: 16rem 24rem;
                    border: 1rem solid var(--black);
                    gap: 18rem;
                    max-height: 51rem;
                    border-radius: 25.5rem;
                    span{
                        cursor: pointer;
                    }
                }
            }
            .price{
                span{
                    font-size: 20rem;
                }
            }
            .calculate--button{
                height: 66rem;
            }
        }
    }
}