@media (max-width: 1455px) {
    .about-us-statistics__item {
        padding-right: 35px;
    }
    .cases-banner-area {
        left: -100px;
        width: 120%;
    }
}

@media (max-width: 1360px) {
    body.page-template-service-page .introduction__content.introduction__content-top {
        padding-right: 100px;
    }
    body.page-template-service-page .introduction__gallery {
        padding-left: 73px;
        justify-content: flex-start;
    }
}

@media (max-width: 1250px) {
    body.page-template-service-page .introduction__gallery .swiper-slide {
        width: 470px !important;
        height: 425px;
    }
    body.page-template-service-page .introduction-next.swiper-button-next {
        right: -30px;
    }
    body.page-template-service-page .introduction__content.introduction__content-top {
        padding-right: 70px;
    }
}

@media (max-width: 1200px) {
    .form-body {
        gap: 30px;
    }
    .form-right {
        gap: 30px;
    }

    .services-banner__row {
        gap: 90px;
    }

    body.page-template-service-page .introduction__gallery {
        padding-left: 33px;
    }

    .client-review__logo,
    .long-logo.long-logo-bottom {
        bottom: 410px;
        width: 700px;
    }

    .client-review__logo,
    body.page-template-cases-page .long-logo.long-logo-bottom {
        bottom: 1320px;
    }
    body.page-template-about-us-page .long-logo.long-logo-bottom {
        bottom: 420px;
    }
}

@media (max-width: 1185px) {
    .main-title {
        font-size: 38px;
    }
}

@media (max-width: 1150px) {
    .about-us-statistics__row {
        flex-wrap: wrap;
    }
    .about-us-statistics__item.about-us-statistics__item-3 {
        flex-basis: 100%;
    }

    .cases-slide__inner {
        gap: 70px;
    }
}

@media (max-width: 1120px) {
    body.page-template-service-page .introduction__gallery {
        align-items: flex-start;
        padding-left: 10px;
    }
    body.page-template-service-page .introduction__gallery .swiper-slide {
        width: 440px !important;
        height: 395px;
    }
    body.page-template-service-page .introduction-next.swiper-button-next {
        top: 65%;
        right: -20px;
    }
}

@media (max-width: 1100px) {
    .contact-list {
        gap: 100px;
    }

    .case-info__item {
        gap: 30px;
    }
}

@media (max-width: 1050px) {
    .form-body {
        flex-direction: column;
        width: 710px;
        max-width: 100%;
        margin: 0 auto;
    }
    .form-left,
    .form-right {
        width: 100%;
    }
    .case-info__item-key {
        flex: 0 1 382px;
    }
    .case-info__item-val {
        flex: 0 1 617px;
    }

    .services-banner__row {
        gap: 50px;
    }

    .introduction.block {
        padding-top: 135px;
    }
    .introduction__row {
        flex-direction: column-reverse;
        gap: 50px;
    }
    body.page-template-service-page .introduction__content.introduction__content-top,
    body.page-template-service-page .introduction__gallery {
        flex: initial;
        justify-content: center;
        width: 100%;
    }
    body.page-template-service-page .introduction__content.introduction__content-top {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        align-items: center;
        flex-direction: column;
    }
    .introduction__content.introduction__content-bottom,
    .introduction__content h1,
    .introduction__content h2,
    .introduction__content h3,
    .introduction__content h4,
    .introduction__content h5,
    .introduction__content h6 {
        text-align: center;
    }
    .introduction__content ul {
        margin-top: 0;
    }
    body.page-template-service-page .introduction-next.swiper-button-next {
        display: none;
    }

    .introduction__content.introduction__content-top p {
        text-align: center;
    }

    .client-review__logo,
    .long-logo.long-logo-bottom {
        bottom: 500px;
        width: 550px;
    }
    .client-review__logo,
    body.page-template-about-us-page .long-logo.long-logo-bottom,
    body.page-template-cases-page .long-logo.long-logo-bottom {
        bottom: 1430px;
    }
    body.page-template-about-us-page .long-logo.long-logo-bottom {
        bottom: 500px;
    }
}

@media (max-width: 992px) {
    .cases-slide__inner {
        flex-direction: column;
        align-items: center;
    }
    .cases-slide__title,
    .cases-slide__text {
        text-align: center;
    }
    .cases-slide__title:after,
    .cases-slide__title::after {
        left: 50%;

        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        transform: translateX(-50%);
    }
    .cases-slide__content {
        flex: 1 1 360px;
    }
    .cta-actions {
        justify-content: center;
    }
    .custom-indicators,
    .carousel .indicators,
    .slick-dots {
        padding-top: 30px;
    }

    .contact-list {
        gap: 50px;
    }

    .footer-menu ul {
        gap: 70px;
    }

    .video-block__title {
        width: 100%;
        padding-left: 15px;
        padding-right: 15px;
        text-align: center;
    }

    .cases-banner-area {
        width: 130%;
    }

    .cases-categories .cases-categories__list {
        display: -ms-grid;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(2, auto);
        width: 500px;
        margin: 0 auto;
        row-gap: 37px;
    }
    .cases-categories .cases-categories__list .cases-categories__item {
        flex: initial;
        width: 100%;
    }

    .cases-categories .cases-categories__list .cases-categories__item:first-child {
        order: 1;
    }
    .cases-categories .cases-categories__list .cases-categories__item:nth-child(2) {
        order: 3;
    }
    .cases-categories .cases-categories__list .cases-categories__item:nth-child(3) {
        order: 4;
    }
    .cases-categories .cases-categories__list .cases-categories__item:nth-child(4) {
        order: 2;
    }

    .cases-categories .cases-categories__list .cases-categories__item:nth-child(3):after,
    .cases-categories .cases-categories__list .cases-categories__item:nth-child(3)::after {
        display: none;
    }

    .cases-list__wrapper {
        gap: 80px;
    }
    .case-item__content {
        padding-left: 60px;
    }
    .case-info__box {
        padding-left: 30px;
        padding-right: 30px;
    }

    .client-review__row {
        gap: 50px;
    }

    .services-page .services-banner .container {
        padding: 0;
    }
    .services-banner__row {
        position: relative;
    }
    .services-banner__video {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
    }
    .services-banner__video img {
        height: 667px;
    }
    .services-banner__text {
        margin-top: 134px;
    }
    .services-banner__text-area {
        margin: 0;
        min-height: 0;
        padding: 20px 48px 7px;
        border: none;
        border-block: 2px solid rgba(255, 255, 255, 0.10);

        background: rgba(0, 0, 0, 0.50);
        backdrop-filter: blur(5px);

        -webkit-backdrop-filter: blur(5px);
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
    }
    .services-banner__text-area:before,
    .services-banner__text-area:before {
        display: none;
    }
    .services-banner__main-title {
        position: relative;
        padding-bottom: 20px;
        text-align: center;
    }
    .services-banner__main-title:after,
    .services-banner__main-title:after {
        position: absolute;
        top: auto;
        left: 50%;
        bottom: 0;
        width: 233px;
        height: 2px;
        background-color: var(--pink);
        content: '';

        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        transform: translateX(-50%);
    }
    .services-banner__text-area {
        padding: 53px 20px 57px;
    }
    .services-banner__desc {
        text-align: center;
    }

    .services-page .services-banner {
        height: 667px;
        margin-bottom: 50px;
        overflow: hidden;
    }
    .services-banner__video {
        flex: initial;
    }
    .services-banner__video-area .video-box iframe {
        height: 667px;

        -webkit-transform: scale(1.4);
        -moz-transform: scale(1.4);
        -ms-transform: scale(1.4);
        -o-transform: scale(1.4);
        transform: scale(1.4);
    }
    .services-banner__btn {
        display: none;
    }

    .service-banner__content {
        top: 0;
        left: 50%;
        right: auto;
        bottom: auto;
        height: auto;
        padding-top: 200px;
        padding-bottom: 0;

        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        transform: translateX(-50%);
    }
    .service-banner__title,
    .service-banner__desc {
        text-align: center;
    }
    .service-banner__title {
        margin-bottom: 40px;
    }
    .service-banner__desc {
        margin-bottom: 60px;
    }
    .service-banner__btn {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        justify-content: center;

        -webkit-transform: translateY(50%);
        -moz-transform: translateY(50%);
        -ms-transform: translateY(50%);
        -o-transform: translateY(50%);
        transform: translateY(50%);
    }
}

@media (max-width: 917px) {
    .case-info__item-key {
        flex: 0 1 492px;
    }
    .case-info__item-val {
        flex: 0 1 507px;
    }
}

@media (max-width: 865px) {
    .contact-list {
        flex-wrap: wrap;
    }
    .contact-list__item {
        justify-content: center;
    }
    .contact-list .contact-list__item:last-child {
        flex-basis: 100%;
    }

    .main-footer__row {
        gap: 70px;
    }
    .footer-menu ul {
        gap: 50px;
    }

    .case-item,
    .case-item.reverse {
        flex-direction: column;
        width: 700px;
        max-width: 100%;
        margin: 0 auto;
    }
    .case-item__image {
        flex: initial;
    }
    .case-item__content,
    .case-item.reverse .case-item__content {
        padding: 60px 0 0;
    }
    .case-item__content {
        flex: initial;
    }
    body:not(.home) .corner-btn svg {
        right: 6px;

        -webkit-transform: skew(6deg) translate(0, -50%);
        -moz-transform: skew(6deg) translate(0, -50%);
        -ms-transform: skew(6deg) translate(0, -50%);
        -o-transform: skew(6deg) translate(0, -50%);
        transform: skew(6deg) translate(0, -50%);
    }

    .client-review.block {
        display: none;
    }
}

@media (max-width: 768px) {
    .banner {
        position: relative;
        height: 608px;
        overflow: hidden;
    }

    .banner__video {
        width: 300%;
    }

    .main-inner-header {
        z-index: 105;
        flex-direction: row-reverse;
        min-height: 161px;
        padding: 21px 27px 0 25px;
    }

    .lang-social {
        position: static;
        z-index: 302;
        height: 60px;
        justify-content: flex-start;
        margin-top: 8px;
    }

    .main-header .social {
        flex-direction: row;
        gap: 10px;
        position: absolute;
        z-index: 303;
        top: 63px;
        left: 50%;

        -webkit-transform: translateX(-50%);
        -moz-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        -o-transform: translateX(-50%);
        transform: translateX(-50%);
    }
    .main-header .social svg {
        width: 25px;
        height: 25px;
    }

    .logo {
        z-index: 302;
        left: 9px;
        height: 40px;
        padding-top: 0;
    }
    .logo img {
        width: 129px;
    }

    svg.main-navigation-btn {
        z-index: 302;
        margin-top: 6px;
        width: 29px;
        height: 26px;
    }

    .lang-switcher ul {
        width: 46px;
        height: 22px;

        -webkit-border-radius: 77px;
        -moz-border-radius: 77px;
        border-radius: 77px;
    }
    .lang-switcher ul li {
        top: -3px;
    }
    .lang-switcher ul li a {
        font-size: 8px;
    }
    .lang-switcher ul li:after,
    .lang-switcher ul li::after {
        top: 9px;
        height: 8px;
    }

    .banner__left.relative {
        position: static;
    }
    .main-title {
        position: absolute;
        z-index: 100;
        top: 195px;
        left: 0;
        right: initial;
        width: 100%;
        font-size: 32px;
        text-align: center;
        line-height: 1.85;
    }

    .banner__right {
        position: absolute;
        z-index: 2;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
    .banner__img {
        left: -70px;
        width: 130%;
        max-width: none;
    }
    .banner__btn {
        z-index: 102;
        left: 30px;
        right: auto;
    }
    .corner-btn {
        width: 110px;
        height: 64px;
    }
    .corner-btn:before,
    .corner-btn:before,
    .corner-btn:after,
    .corner-btn::after {
        left: -12px;
        width: 8px;
        height: 64px;
    }
    .corner-btn:after,
    .corner-btn::after {
        left: -24px;
    }

    .corner-btn svg {
        right: -2px;
        width: 70px;
        height: 37px;
    }
    body.home .corner-btn svg {
        right: -32px;
    }
    body.home .banner .corner-btn svg {
        right: -3px;
    }

    .services.block {
        padding-top: 50px;
        padding-bottom: 0;
        overflow: hidden;
    }
    .block-title {
        font-size: 24px;
        line-height: 120%; /* 28.8px */
        letter-spacing: 1.2px;
    }
    .services.block .block-title {
        margin-bottom: 59px;
    }
    .carousel-wrapper {
        margin-top: 0;
    }
    .services .carousel .carousel-item {
        width: 323px;
        height: 292px;
    }
    .carousel-navigation {
        display: none;
    }
    .carousel .carousel-item.fake-left {
        opacity: 1 !important;
    }
    .services .carousel {
        height: 292px;
        overflow: visible;
    }

    .custom-indicators,
    .carousel .indicators,
    .slick-dots {
        gap: 8px;
    }
    .custom-indicators .custom-bullet,
    .carousel .indicators .indicator-item,
    .slick-dots button {
        width: 6px;
        height: 7px;
    }
    .custom-indicators .custom-bullet.active,
    .carousel .indicators .indicator-item.active,
    .slick-dots .slick-active button {
        width: 19px;
    }
    .custom-indicators {
        padding-top: 44px;
    }
    .services .carousel-item.active .slide-hover > *,
    .services .carousel-item.active:hover .slide-hover > * {
        opacity: 1;
        visibility: visible;
    }
    .services .carousel-item.active .slide-hover__more.btn,
    .services .carousel-item.active:hover .slide-hover__more.btn {
        position: absolute;
        right: 50%;
        bottom: -20px;

        -webkit-transform: translateX(50%);
        -moz-transform: translateX(50%);
        -ms-transform: translateX(50%);
        -o-transform: translateX(50%);
        transform: translateX(50%);
    }
    .slide-hover__title {
        font-size: 12px;
        line-height: 130%;
        letter-spacing: 0.05em;
    }
    .slide-hover__desc {
        font-size: 10px;
        line-height: 150%;
        letter-spacing: 0.05em;
    }
    .slide-hover {
        padding: 31px 25px;
    }
    .slide-hover__more.btn {
        width: 231px;
        height: 72px;
        font-size: 12px;
        line-height: 120%;
        letter-spacing: 0.05em;
    }
    .slide-hover__more.btn svg {
        position: absolute;
        right: 37px;
        width: 61px;
        height: 38px;
    }
    .slide-hover__title:after,
    .slide-hover__title:after {
        width: 75px;
        height: 1px;
    }
    .services .carousel-item.active .slide-hover,
    .services .carousel-item.active:hover .slide-hover {
        backdrop-filter: blur(5px);
        -webkit-backdrop-filter: blur(5px);
    }

    .form-left {
        width: 309px;
        margin: 0 auto;
        font-size: 12px;
        line-height: 150%;
        text-align: center;
    }
    .form-title {
        font-size: 14px;
        line-height: 130%;
        letter-spacing: -0.03em;
    }

    .form-right {
        display: block;
        width: 215px;
        max-width: 100%;
        margin: 0 auto;
    }
    .form-row-field-send {
        padding-left: 0;
    }
    .form-field {
        height: 25px;
    }
    .form-field,
    .form-row-field-send .btn {
        width: 100%;
    }
    .wpcf7-form-control-wrap {
        display: block;
    }
    .form-row-field.form-row-field-name {
        margin-bottom: 50px;
    }
    .form-row-field.form-row-field-email {
        margin-bottom: 54px;
    }
    .feedback-form form {
        padding-left: 0;
        padding-right: 0;
    }
    .container {
        padding-left: 12px;
        padding-right: 12px;
    }
    .btn {
        font-size: 14px;
    }
    .feedback-form {
        margin-bottom: 7px;
    }
    .our-clients__gallery:before,
    .our-clients__gallery:before {
        display: none;
    }
    .our-clients__logo.slick-slide {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        justify-content: space-around;
        align-items: center;
        padding: 0 15px;
    }
    .our-clients__logo.slick-slide img {
        width: auto;
        max-height: 90px;
    }
    .our-clients__gallery {
        padding: 0;
    }
    .our-clients .block-title {
        margin-bottom: 53px;
    }
    .our-clients.block {
        margin-bottom: 15px;
    }
    .about-us__video .video-box {
        padding: 0;
    }
    .about-us .block-title {
        margin-bottom: 58px;
    }
    .about-us__video .video-box img,
    .about-us__video .video-box iframe {
        height: 486px;
    }
    .about-us .container {
        padding-left: 0;
        padding-right: 0;
    }
    .play svg {
        width: 75px;
        height: 72px;
    }
    .about-us {
        margin-bottom: 25px;
    }

    .cases-carousel {
        padding-top: 13px;
    }
    .cases-slide__inner {
        gap: 53px;
    }

    .cases-gallery {
        flex-direction: column-reverse;
        flex: 0 0 100%;
        height: auto;
    }
    .cases-slide__thumb {
        width: 364px;
        padding-top: 0;
        flex: initial;
        max-width: 100%;
    }
    .thumbs-swiper,
    .main-swiper {
        flex: initial;
        max-width: 100%;
        height: 591px;
    }
    .thumbs-swiper {
        height: 169px;
    }
    body.home .cases .block-title {
        margin-bottom: 65px;
    }

    .cases-slide__title {
        padding-bottom: 27px;
        margin-bottom: 37px;
        font-size: 20px;
        line-height: 120%;
        letter-spacing: 0.02em;
    }
    .cases-slide__text p {
        margin-bottom: 35px;
    }
    .cases-slide__bottom {
        flex-direction: column;
        align-items: center;
        gap: 31px;
    }
    .cases-slide__bottom > * {
        width: 208px;
    }
    .cases-slide__top {
        padding-left: 15px;
        padding-right: 15px;
    }
    .custom-indicators,
    .carousel .indicators,
    .slick-dots {
        padding-top: 6px;
    }
    .cases {
        margin-bottom: 0;
    }
    .contacts.block {
        padding-top: 40px;
    }

    .contact-list {
        gap: 28px;
        flex-direction: column;
        width: 230px;
        max-width: 100%;
        margin: 0 auto;
    }
    .contact-list .contact-list__item,
    .contact-list .contact-list__item:last-child {
        flex: initial;
        justify-content: flex-start;
        max-width: 100%;
    }
    .contact-list__item svg {
        flex-shrink: 0;
        width: 40px;
        height: auto;
    }
    .contact-list__label {
        font-size: 15px;
        line-height: 120%;
        letter-spacing: 0.02em;
    }
    .contact-list__text,
    .contact-list__text a {
        font-size: 12px;
        line-height: 120%;
        letter-spacing: 0.02em;
    }

    body .wrapper .desktop {
        display: none;
    }
    body .wrapper .mobile {
        display: block;
    }
    .map {
        padding-bottom: 110px;
    }

    .main-footer__row,
    .footer-menu ul {
        flex-direction: column;
        align-items: center;
        gap: 0;
    }
    .footer-menu {
        padding-top: 0;
    }
    .footer-logo.footer-social {
        order: 1;
        gap: 28px;
        margin-bottom: 39px;
    }
    .footer-menu.footer-menu-1 {
        order: 2;
        margin-bottom: 12px;
    }
    .footer-menu.footer-menu-2 {
        order: 3;
    }
    .footer-menu ul li a {
        font-size: 13px;
        line-height: 96%;
        font-weight: 100;
        letter-spacing: 0.05em;
    }
    .logo img {
        width: 172px;
    }
    .main-footer {
        padding-top: 43px;
        padding-bottom: 53px;
    }
    .footer-menu ul li {
        margin-bottom: 12px;
    }
    .footer-menu ul li:last-child {
        margin-bottom: 0;
    }

    .main-navigation,
    .main-menu-top {
        width: 100%;
    }
    .main-navigation {
        z-index: 300;
    }
    .main-menu-top {
        min-height: 631px;
        padding: 112px 25px 30px 25px;
        border-left: none;
    }
    .main-menu-top .widget_nav_menu > div > ul {
        gap: 18px;
        padding-top: 24px;
    }
    .main-menu-top .widget_nav_menu > div > ul > li > a {
        font-size: 24px;
    }
    .main-menu-top .widget_nav_menu > div > ul > li > .menu-arrow-box svg {
        width: 52px;
        height: 27px;
    }
    .main-navigation img.logo-text {
        top: 97px;
        left: auto;
        right: -25px;
        width: 120px;
        height: 538px;
    }
    .menu-phone-number a {
        letter-spacing: 0.02em;
    }
    .menu-phone-number {
        padding-top: 30px;
    }

    .main-menu-top .widget_nav_menu > div > ul > li > ul.sub-menu li a {
        font-size: 16px;
    }
    .main-menu-top .widget_nav_menu > div > ul > li > ul.sub-menu {
        gap: 17px;
        padding-top: 36px;
        padding-bottom: 33px;
    }

    .not-found-page__title {
        margin-bottom: 10px;
        font-size: 20px;
        line-height: 150%;
    }
    .not-found-page__home-text {
        gap: 40px;
        flex-direction: column;
    }
    .not-found-page__image svg {
        width: 370px;
    }
    .not-found-page__home-link.btn {
        width: 215px;
        font-size: 14px;
    }
    .not-found-page__home-link.btn svg {
        position: absolute;
        left: 0;
        width: 61px;
        height: 38px;

        -webkit-transform: translateX(-29px);
        -moz-transform: translateX(-29px);
        -ms-transform: translateX(-29px);
        -o-transform: translateX(-29px);
        transform: translateX(-29px);
    }
    .not-found-page__image {
        margin-bottom: 30px;
    }

    .about-us-banner {
        padding: 230px 0 220px;
        margin-bottom: 55px;
    }
    .about-us-banner__center {
        padding: 52px 12px 50px;
    }
    .about-us-banner__center .about-us-banner__title {
        width: 390px;
        max-width: 100%;
        margin: 0 auto;
        font-size: 20px;
        line-height: 150%;
        font-weight: 700;
    }
    .about-us-banner__desc {
        font-weight: 400;
        font-size: 12px;
        line-height: 150%;
        letter-spacing: 0.05em;
    }
    .about-us-banner__desc.about-us-banner__desc-mobile {
        padding: 0 30px;
        margin: 0 auto;
    }
    .about-us-banner__desc p {
        margin-bottom: 35px;
    }
    .about-us-promo__title {
        padding: 0;
        margin: 0 auto;
        font-weight: 800;
        font-size: 20px;
        letter-spacing: 0.05em;
    }
    .about-us-promo {
        padding: 25px 0 75px;
    }

    .video-block__title {
        padding-top: 25px;
        padding-left: 30px;
        padding-right: 30px;
        font-weight: 400;
        font-size: 12px;
        line-height: 129%;
    }
    .video-block__title span {
        font-weight: 700;
        font-size: 14px;
    }

    .about-us-statistics__row {
        flex-direction: column;
    }
    .about-us-statistics__item,
    .about-us-statistics__item.about-us-statistics__item-3 {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        flex-direction: column;
        align-items: center;
        flex: initial;

        width: 100%;
        padding-left: 17px;
        padding-right: 17px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    }
    .about-us-statistics__title {
        margin-bottom: 12px;
        line-height: normal;
        letter-spacing: -0.03em;
    }
    .about-us-statistics__title span {
        letter-spacing: 1px;
    }
    .about-us-statistics__desc {
        text-align: center;
    }

    body.page-template-about-us-page .feedback-form {
        margin-bottom: 80px;
    }

    .contacts-banner__info {
        top: 157px;
        left: 0;
        width: 100%;
        min-height: 0;
        padding: 20px 48px 7px;
        border: none;
        border-block: 2px solid rgba(255, 255, 255, 0.10);
        background: rgba(0, 0, 0, 0.50);

        backdrop-filter: blur(5px);
        -webkit-backdrop-filter: blur(5px);

        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
    }
    .contacts-banner .contacts-banner__info-body {
        width: 100%;
        min-height: 0;
        padding: 0;
        border: none;
        background: transparent;

        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
    }
    .contacts-banner__title {
        margin-bottom: 18px;
        text-align: center;
    }
    .contacts-banner__desc {
        font-size: 13px;
        line-height: 138%;
        letter-spacing: 0.05em;
        text-align: center;
    }
    .contacts-banner__desc b,
    .contacts-banner__desc strong {
        font-weight: 700;
    }

    .contacts-banner {
        margin-bottom: 4px;
    }
    .contacts-banner {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        height: 616px;
    }
    .contacts-banner__image {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
    }
    .contacts-banner__image img {
        height: auto;
    }
    body.page-template-contacts-page .contacts {
        margin-bottom: 57px;
    }
    body.page-template-contacts-page .contacts .block-title {
        margin-bottom: 54px;
    }
    .contacts-page__social-title {
        margin-bottom: 17px;
    }
    .contacts-page__social {
        margin-bottom: 50px;
    }
    body.page-template-contacts-page .map {
        padding-bottom: 23px;
    }
    body.page-template-contacts-page .feedback-form {
        margin-bottom: 83px;
    }

    .cases-banner-box {
        height: 667px;
    }
    .cases-banner-area {
        width: 140%;
    }
    .cases-banner-area__carousel {
        width: 205px;
    }
    .cases-banner-area__slide {
        height: 356px !important;
    }

    .cases-categories .cases-categories__list {
        row-gap: 14px;
        grid-template-rows: repeat(2, 50%);
        width: 300px;
    }
    .cases-categories .cases-categories__list .cases-categories__item {
        padding: 0;
        font-size: 12px;
        line-height: 183%;
    }
    .cases-categories {
        padding-top: 0;
        margin-top: -46px;
    }

    .cases-list.block {
        margin-bottom: 3px;
    }
    .cases-list__wrapper {
        align-items: center;
        gap: 51px;
    }
    .case-item__image {
        width: 319px;
        height: 416px;
        margin: 0 auto;
    }
    .cases-list.block {
        padding-top: 23px;
    }
    body.page-template-cases-page .case-item__content {
        text-align: center;
    }
    .case-item__desc,
    body.page-template-cases-page .case-item__content {
        font-size: 12px;
        line-height: 183%;
        letter-spacing: 0.05em;
        font-weight: 300;
    }
    body.page-template-cases-page .case-item__title {
        font-weight: 500;
        font-size: 20px;
    }
    body.page-template-cases-page .case-item__desc b,
    body.page-template-cases-page .case-item__desc strong {
        font-weight: 600;
        line-height: 133%;
    }
    body.page-template-cases-page .case-item__content,
    body.page-template-cases-page .case-item.reverse .case-item__content {
        padding: 47px 0 0;
    }
    body.page-template-cases-page .case-item__desc p {
        margin-bottom: 27px;
    }
    body.page-template-cases-page .feedback-form {
        margin-bottom: 4px;
    }
    body.page-template-cases-page .services.block {
        padding-bottom: 80px;
    }
    .case-item__image img {
        border: none;
    }
    body.page-template-cases-page .case-item__image .corner-btn {
        width: 100px;
        height: 78px;
    }
    body.page-template-cases-page .case-item__image .corner-btn:before,
    body.page-template-cases-page .case-item__image .corner-btn:before,
    body.page-template-cases-page .case-item__image .corner-btn:after,
    body.page-template-cases-page .case-item__image .corner-btn::after {
        height: 78px;
    }
    body.page-template-cases-page .case-item__image .corner-btn svg {
        width: 74px;
        height: 45px;
    }

    .case-banner {
        padding-top: 121px;
        padding-bottom: 189px;
    }
    .case-banner__box {
        top: 157px;
        left: 0;

        width: 100%;
        min-height: 0;
        padding: 26px 25px 20px;
        border: none;
        border-block: 2px solid rgba(255, 255, 255, 0.10);
        background: rgba(0, 0, 0, 0.50);
        text-align: center;

        backdrop-filter: blur(5px);
        -webkit-backdrop-filter: blur(5px);
        -webkit-box-shadow: none;
        -moz-box-shadow: none;
        box-shadow: none;
    }
    .case-banner__title {
        margin-bottom: 10px;
        font-weight: 700;
        font-size: 24px;
        line-height: 146%;
    }
    .case-banner__desc {
        font-weight: 300;
        font-size: 13px;
        line-height: 138%;
        letter-spacing: 0.05em;
    }
    .case-banner__desc h1,
    .case-banner__desc h2,
    .case-banner__desc h3,
    .case-banner__desc h4,
    .case-banner__desc h5,
    .case-banner__desc h6 {
        padding: 0 10px;
        margin-bottom: 23px;
        font-weight: 500;
        font-size: 13px;
        line-height: 138%;
        letter-spacing: 0.05em;
    }

    body.page-template-case-page .case-info.block {
        padding-top: 8px;
        margin-bottom: 60px;
    }
    .case-info__box {
        gap: 22px;
        padding-left: 0;
        padding-right: 0;
    }
    .case-info__item-key {
        font-weight: 700;
        font-size: 13px;
        line-height: 192%;
    }
    .case-info__item-val {
        font-weight: 300;
        font-size: 11px;
        line-height: 136%;
        letter-spacing: 0.05em;
    }
    .case-info__item {
        gap: 4px;
        align-items: flex-start;
    }
    .case-info__item-key svg {
        bottom: -4px;
    }

    .case-info__item-key {
        flex: 1 1 144px;
    }
    .case-info__item-val {
        flex: 1 1 196px;
    }
    .swiper-top.swiper {
        height: 285px;
    }
    .swiper-bottom.swiper {
        height: 290px;
    }
    .double-swiper {
        gap: 26px;
    }

    .initiative {
        margin-bottom: 78px;
    }
    .initiative__desc {
        font-weight: 300;
        font-size: 12px;
        line-height: 150%;
        letter-spacing: 0.05em;
        text-align: center;
    }
    .initiative__desc b,
    .initiative__desc strong {
        font-weight: 500;
    }

    body.page-template-case-page .client-review ~ .feedback-form {
        margin-bottom: 80px;
        padding-top: 39px;
    }

    .services-banner__video-area .video-box iframe {
        height: 667px;

        -webkit-transform: scale(2.4);
        -moz-transform: scale(2.4);
        -ms-transform: scale(2.4);
        -o-transform: scale(2.4);
        transform: scale(2.4);
    }
    .services-page .services-banner {
        height: 667px;
        margin-bottom: 30px;
        overflow: hidden;
        padding-bottom: 162px;
    }
    .services-banner__desc {
        font-weight: 300;
        font-size: 14px;
        line-height: 143%;
        letter-spacing: 0.1em;
        text-align: center;
    }
    .services-banner__text-area {
        padding: 53px 20px 57px;
    }
    .services-banner__main-title {
        position: relative;
        padding-bottom: 40px;
        margin-bottom: 32px;
        font-weight: 800;
        font-size: 24px;
        line-height: 146%;
        letter-spacing: 0.05em;
        text-align: center;
    }
    .services-banner__btn {
        display: none;
    }
    .services-banner__video {
        flex: initial !important;
    }
    .services-banner__row {
        gap: 0;
    }

    .service-item {
        width: 202px;
        min-width: 202px;
        margin: 0 10px;
        overflow: hidden;
    }
    .service-item__image img {
        height: 383px;
    }
    .service-item__title {
        top: 17px;
        height: 34px;
        font-weight: 900;
        font-size: 14px;
        line-height: 130%;
        letter-spacing: 0.02em;
    }
    .services-variation.block .block-title {
        margin-bottom: 39px;
    }
    .service-item__info {
        display: none;
    }
    .service-item__info-link {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
    body.page-template-services-page .services-variation {
        margin-bottom: 27px;
    }
    body.page-template-services-page .feedback-form {
        margin-bottom: 80px;
    }

    .service-banner {
        height: 665px;
    }
    .service-banner__content {
        width: 344px;
        padding: 144px 0 0;
    }
    .service-banner__title {
        margin-bottom: 35px;
        font-weight: 700;
        font-size: 24px;
        line-height: 146%;
        letter-spacing: 0.3px;
    }
    .service-banner__desc {
        padding: 0 30px;
        margin-bottom: 33px;
        font-weight: 300;
        font-size: 13px;
        line-height: 192%;
        letter-spacing: 0.05em;
    }
    body.page-template-service-page .introduction.block {
        padding-top: 77px;
        padding-bottom: 0;
    }

    body.page-template-service-page .introduction__content.introduction__content-top {
        padding: 0;
    }
    body.page-template-service-page .introduction__content.introduction__content-top {
        font-family: var(--montserat);
        font-weight: 400;
        font-size: 12px;
        line-height: 150%;
        letter-spacing: 0.03em;
    }
    .introduction__content h1,
    .introduction__content h2,
    .introduction__content h3,
    .introduction__content h4,
    .introduction__content h5,
    .introduction__content h6 {
        margin-bottom: 40px;
        font-weight: 800;
        font-size: 20px;
        line-height: 110%;
        letter-spacing: 0.05em;
    }
    .introduction__content ul li {
        margin-bottom: 14px;
    }
    .introduction__row {
        flex-direction: column-reverse;
        gap: 80px;
        margin-bottom: 35px;
    }

    .introduction__content.introduction__content-bottom h1,
    .introduction__content.introduction__content-bottom h2,
    .introduction__content.introduction__content-bottom h3,
    .introduction__content.introduction__content-bottom h4,
    .introduction__content.introduction__content-bottom h5,
    .introduction__content.introduction__content-bottom h6 {
        padding: 0 0 19px;
        margin: 0;
        font-weight: 800;
        font-size: 20px;
        line-height: 110%;
        letter-spacing: 0.05em;
    }
    .introduction__content.introduction__content-bottom {
        padding: 0 32px 0;
        font-weight: 400;
        font-size: 14px;
        line-height: 157%;
        letter-spacing: 0.03em;
    }
    body.page-template-service-page .feedback-form.block {
        padding-top: 49px;
    }
    body.page-template-service-page .cases.block {
        padding-top: 71px;
    }
    body.page-template-service-page .cases .block-title {
        margin-bottom: 0;
    }
    body.page-template-service-page .case__item-title {
        margin-bottom: 12px;
        font-weight: 900;
        font-size: 14px;
        line-height: 130%;
        letter-spacing: 0.05em;
    }
    body.page-template-service-page .case__item-meta {
        padding-left: 22px;
        padding-bottom: 7px;
        font-weight: 200;
        font-size: 10px;
        line-height: 150%;
        letter-spacing: 0.05em;
    }
    body.page-template-service-page .case__item-meta a svg {
        width: 20px;
        height: 20px;
    }
    body.page-template-service-page .case__item-element {
        height: 476px;
    }
    body.page-template-service-page .case__item {
        height: 474px;
        width: 256px;
    }

    body.page-template-service-page .introduction__gallery .swiper-slide-next,
    body.page-template-service-page .introduction__gallery .swiper-slide-next ~ .swiper-slide {
        opacity: 1;
        pointer-events: initial;

        -webkit-transform: initial;
        -moz-transform: initial;
        -ms-transform: initial;
        -o-transform: initial;
        transform: initial;
    }
    body.page-template-service-page .introduction__gallery .swiper-slide {
        transform-origin: initial;
    }
    body.page-template-service-page .introduction__gallery .swiper-slide-prev,
    body.page-template-service-page .introduction__gallery .swiper-slide-active {
        -webkit-transform: initial;
        -moz-transform: initial;
        -ms-transform: initial;
        -o-transform: initial;
        transform: initial;
    }

    body.page-template-service-page .introduction__gallery .swiper-slide {
        width: 289px !important;
        height: 261px;
    }
    body.page-template-service-page .case__item-meta:before,
    body.page-template-service-page .case__item-meta::before {
        top: 1px;
        height: 47px;
    }
    body.page-template-service-page .case__item-more {
        padding: 20px 5px 4px;
    }
    body.page-template-service-page .services.block {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    body.page-template-service-page .clients .block-title {
        margin-bottom: 45px;
    }

    body.page-template-service-page .reviews-slider .slick-list {
        padding-left: 18px;
    }
    body.page-template-service-page .reviews-slider .slick-slide {
        width: 357px;
        margin: 0 9px;
    }
    body.page-template-service-page .review-card {
        width: 100%;
        padding-bottom: 25px;

        -webkit-box-shadow: initial;
        -moz-box-shadow: initial;
        box-shadow: initial;
    }

    .reviews-slider .review-photo img,
    .reviews-slider .review-photo {
        width: 60px;
        height: 60px;
    }
    .reviews-slider .review-name {
        margin-bottom: 10px;
        font-weight: 600;
        font-size: 15px;
        line-height: 147%;
    }
    .reviews-slider .review-role {
        font-weight: 200;
        font-size: 12px;
        line-height: 125%;
    }
    .reviews-slider .review-rating {
        margin-bottom: 2px;
    }
    .reviews-slider .review-text {
        font-weight: 300;
        font-size: 12px;
        line-height: 183%;
        letter-spacing: 0.05em;
    }
    .reviews-slider .slick-dots {
        padding-top: 38px;
    }

    body.page-template-service-page .clients.block {
        margin-bottom: 80px;
    }

    .introduction__list {
        padding-left: 40px;
        padding-right: 34px;
        row-gap: 16px;
    }
    .introduction__list-item {
        font-weight: 400;
        font-size: 11px;
        line-height: 200%;
    }
    .introduction__desc {
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 10px;
        font-size: 14px;
    }

    .introduction__advice {
        gap: 48px;
        flex-direction: column;
        padding-top: 4px;
    }
    .introduction__advice-item,
    .introduction__advice-item:nth-child(2),
    .introduction__advice-item:nth-child(3) {
        flex: initial;
        gap: 40px;
        width: 100%;
        padding: 0 45px;
    }
    .introduction__content.introduction__content-top p {
        padding: 0 10px;
        font-size: 14px;
        line-height: 157%;
        letter-spacing: 0.05em;
    }
    .introduction__advice-item-img img {
        width: 95px;
        height: auto;
    }
    .introduction__advice-item-desc {
        font-weight: 400;
        font-size: 14px;
        line-height: 157%;
        letter-spacing: 0.03em;
        text-align: center;
    }

    .long-logo {
        left: -1px;
        width: 79px;
        height: auto;
    }

    .services-mobile.block {
        padding-top: 82px;
        margin-bottom: 82px;
    }
    .services-mobile.block .block-title {
        margin-bottom: 43px;
    }
    .services-mobile__carousel {
        overflow: visible;
    }
    .services-mobile__item {
        margin: 0 10px;
        width: 202px !important;
        height: 380px !important;
        position: relative;
    }
    .services-mobile__item .services-mobile__item-title {
        top: 17px;
        width: 100%;
        min-height: 34px;
        padding: 8px 0;
        background: rgba(0, 0, 0, 0.8);
        font-weight: 900;
        font-size: 14px;
        line-height: 130%;
        letter-spacing: 0.02em;
        text-transform: capitalize;
    }
    .services-mobile__item a {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }
    .services-mobile__item img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    body.error404 .long-logo {
        width: 104px;
        height: 468px;
    }
}

@media (max-width: 500px) {
    .cases-banner-area {
        width: 150%;
    }
}