:root {
    --montserat: "Montserrat", sans-serif;
    --inter: "Inter", sans-serif;

    --pink: #D33FAF;
    --lightpink: #D447AA;
    --black: #000;
    --white: #FFF;
    --error: #e53232;
}
html {
    height: 100%;
}
* {
    padding: 0;
    margin: 0;

    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.long-logo {
    position: fixed;
    top: 50%;
    left: 6px;

    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    -o-transform: translateY(-50%);
    transform: translateY(-50%);
}
.long-logo.long-logo-bottom {
    position: absolute;
    top: auto;
    left: auto;
    right: 48px;
    bottom: 375px;
    width: 865px;
    max-width: 100%;
    height: auto;

    -webkit-transform: none;
    -moz-transform: none;
    -ms-transform: none;
    -o-transform: none;
    transform: none;
}
body.page-template-about-us-page .long-logo.long-logo-bottom,
body.page-template-cases-page .long-logo.long-logo-bottom {
    left: -2px;
    right: auto;
    bottom: 1273px;
}
body.page-template-about-us-page .long-logo.long-logo-bottom {
    left: 2px;
    bottom: 385px;
}

body {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: stretch;

    position: relative;
    font-family: var(--inter);
    font-optical-sizing: auto;
    font-style: normal;
    font-weight: 200;
    min-height: 100%;
}
img  {
    max-width: 100%;
    height: auto;
    vertical-align: top;
}
h1, h2, h3, h4, h5, h6 {
    font-weight: normal;
}
.wrapper {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-direction: column;

    position: relative;
    z-index: 50;
    flex: 1 1 100%;
    width: 100%;
    overflow: hidden;
    background: #090710;
}

.wrapper .blob {
    pointer-events: none;
}

.content-area {
    position: relative;
    z-index: 100;
    flex: 1 1 100%;
}

/* ==================
 * Header
 * ================== */
.main-header {
    position: relative;
    z-index: 130;
}

.main-inner-header {
    top: 0;
    left: 0;
    width: 100%;
    min-height: 214px;
    padding: 43px 56px 10px 27px;

    background: var(--black);
    background: -webkit-linear-gradient(
            180deg,
            var(--black) 50.42%,
            rgba(0, 0, 0, 0) 94.54%,
            rgba(102, 102, 102, 0) 94.55%
    );
    background: -moz-linear-gradient(
            180deg,
            var(--black) 50.42%,
            rgba(0, 0, 0, 0) 94.54%,
            rgba(102, 102, 102, 0) 94.55%
    );
    background: -o-linear-gradient(
            180deg,
            var(--black) 50.42%,
            rgba(0, 0, 0, 0) 94.54%,
            rgba(102, 102, 102, 0) 94.55%
    );
    background: linear-gradient(
            180deg,
            var(--black) 50.42%,
            rgba(0, 0, 0, 0) 94.54%,
            rgba(102, 102, 102, 0) 94.55%
    );
}
.main-header .social {
    flex-direction: column;
}

.banner__left {
    width: 45%;

    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
.banner.active .banner__left {
    position: static;
    width: 0;
}
.main-title {
    right: -102px;
    color: var(--white);
    font-size: 48px;
    font-style: normal;
    font-weight: 900;
    line-height: 120%; /* 57.6px */
    letter-spacing: 1.44px;
}
.main-title span {
    display: block;
}
.banner__right {
    width: 55%;
    height: 1024px;
    overflow: hidden;

    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.banner.active .banner__right {
    width: 100%;
    aspect-ratio: 16 / 9;
}
.banner__img {
    width: 100%;
    height: 1024px;
    object-fit: cover;

    /* Safari prefixed property first */
    -webkit-clip-path: polygon(174px 0, 100% 0, 100% 100%, 0 100%);
    clip-path: polygon(174px 0, 100% 0, 100% 100%, 0 100%);

    /* Small render hints for smoother edge on Safari/WebKit */
    will-change: clip-path;

    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.banner.active .banner__img {
    position: absolute;

    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%);
}

/* ==================
 * Home Page
 * ================== */
.video-wrapper {
    width: 100%;
    height: 100%;
}

.banner__video {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 120%;
    height: 120%;
    border: 0;
    pointer-events: none;

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

.lang-switcher ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;

    width: 74px;
    height: 36px;
    border: 1.353px solid rgba(255, 255, 255, 0.30);

    -webkit-border-radius: 77.125px;
    -moz-border-radius: 77.125px;
    border-radius: 77.125px;
}
.lang-switcher ul li {
    position: relative;
    list-style: none;
}
.lang-switcher ul li:after,
.lang-switcher ul li::after {
    position: absolute;
    top: 3px;
    right: -6px;
    width: 1px;
    height: 13px;
    background-color: var(--white);
    content: '';
}
.lang-switcher ul li:last-child:after,
.lang-switcher ul li:last-child::after {
    display: none;
}
.lang-switcher ul li a {
    font-family: var(--montserat);
    color: var(--white);
    font-size: 14px;
    font-style: normal;
    font-weight: 250;
    line-height: 96%;
    letter-spacing: -0.42px;
    text-transform: uppercase;
    text-decoration: none;
}
.lang-switcher ul li.current-lang a {
    font-weight: 400;
}
.lang-switcher ul li a:hover {
    text-decoration: underline;
}

.lang-social {
    gap: 21px;
}
.social {
    gap: 16px;
}
.social svg rect,
.social a:nth-child(3) svg path {
    -webkit-transition: all 0.15s ease-in-out;
    -moz-transition: all 0.15s ease-in-out;
    -ms-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
}
.social a:first-child svg:hover rect {
    stroke: #E1A372;
}
.social a:nth-child(2) svg:hover rect {
    stroke: var(--pink);
}
.social a:nth-child(3) svg:hover path:first-child {
    stroke: #E81F1F;
}

.logo {
    padding-top: 7px;
}

svg.main-navigation-btn {
    position: relative;
    z-index: 300;
    cursor: pointer;
    transform-origin: center center;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

    -webkit-transition: all 0.15s ease-in-out;
    -moz-transition: all 0.15s ease-in-out;
    -ms-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
}
svg.main-navigation-btn.active {
    -webkit-transform: rotate(-90deg);
    -moz-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    -o-transform: rotate(-90deg);
    transform: rotate(-90deg);
}
svg.main-navigation-btn path,
svg.main-navigation-btn rect {
    -webkit-transition: all 0.15s ease-in-out;
    -moz-transition: all 0.15s ease-in-out;
    -ms-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
}
svg.main-navigation-btn.active path,
svg.main-navigation-btn.active rect,
svg.main-navigation-btn:hover path,
svg.main-navigation-btn:hover rect {
    fill: var(--lightpink);
}
svg.main-navigation-btn.active path,
svg.main-navigation-btn.active rect {
    fill-opacity: 1;
}

.main-navigation {
    top: 0;
    right: 0;
}
.main-menu-top {
    display: none;
    flex-direction: column;

    top: 0;
    right: 0;
    width: 492px;
    min-height: 748px;
    padding: 132px 43px 36px 80px;
    border: 1px solid rgba(255, 255, 255, 0.50);
    border-top: none;
    border-right: none;
    background: rgba(0, 0, 0, 0.80);
    overflow: hidden;

    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}
.main-menu-top .widget_nav_menu {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex: 1 1 auto;

    position: relative;
    z-index: 2;
}
.main-menu-top .widget_nav_menu > div {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex: 1 1 100%;
}
.main-menu-top .widget_nav_menu > div > ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex: 1 1 100%;
    gap: 40px;
    flex-direction: column;
    padding: 28px 0;

    border-top: 1px solid var(--white);
    border-bottom: 1px solid var(--white);
}
.main-menu-top .widget_nav_menu > div > ul > li {
    position: relative;
}
.main-menu-top .widget_nav_menu > div > ul > li > .menu-arrow-box {
    position: absolute;
    z-index: 100;
    top: 8px;
    right: 0;
    padding-left: 1px;
    overflow: hidden;
    pointer-events: auto !important;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

    -webkit-transition: all 0.15s linear;
    -moz-transition: all 0.15s linear;
    -ms-transition: all 0.15s linear;
    -o-transition: all 0.15s linear;
    transition: all 0.15s linear;
}
.menu-arrow-box.expanded {
    pointer-events: auto !important;
}
.menu-arrow-box svg {
    pointer-events: none;
}
.main-menu-top .widget_nav_menu > div > ul > li > .menu-arrow-box:before,
.main-menu-top .widget_nav_menu > div > ul > li > .menu-arrow-box::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 27px;
    background: var(--white);
    content: '';

    -webkit-border-radius: 1px;
    -moz-border-radius: 1px;
    border-radius: 1px;

    -webkit-transition: all 0.15s linear;
    -moz-transition: all 0.15s linear;
    -ms-transition: all 0.15s linear;
    -o-transition: all 0.15s linear;
    transition: all 0.15s linear;
}
.main-menu-top .widget_nav_menu > div > ul > li.open > .menu-arrow-box.expanded::before,
.main-menu-top .widget_nav_menu > div > ul > li.open > .menu-arrow-box.expanded:before {
    height: 100%;
}

.main-menu-top .widget_nav_menu > div > ul > li > .menu-arrow-box svg {
    position: relative;
    top: 0;

    -webkit-transition: all 0.15s ease-in-out;
    -moz-transition: all 0.15s ease-in-out;
    -ms-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
}
.main-menu-top .widget_nav_menu > div > ul > li.open > .menu-arrow-box.expanded svg {
    top: 5px;
}

.main-menu-top .widget_nav_menu > div > ul li {
    list-style: none;

    -webkit-transition: all 0.15s ease-in-out;
    -moz-transition: all 0.15s ease-in-out;
    -ms-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
}
.main-menu-top .widget_nav_menu > div > ul > li.open + li {
    margin-top: -22px;
}

.main-menu-top .widget_nav_menu > div > ul > li > a {
    color: var(--pink);
    font-size: 36px;
    font-style: normal;
    font-weight: 200;
    line-height: normal;
    text-decoration: none;
    text-transform: uppercase;
}
.main-menu-top .widget_nav_menu > div > ul > li > a:hover {
    text-decoration: none;
}

.main-menu-top .widget_nav_menu > div > ul > li > ul.sub-menu {
    display: none;
    flex-direction: column;
    gap: 10px;
    padding-top: 20px;
    padding-left: 18px;
    padding-right: 0;
    overflow: hidden;
}
.main-menu-top .widget_nav_menu > div > ul > li > ul.sub-menu li a {
    position: relative;
    z-index: 102;
    color: var(--white);
    font-size: 24px;
    font-style: normal;
    font-weight: 200;
    line-height: normal;
    text-decoration: none;
}
.main-menu-top .widget_nav_menu > div > ul > li > ul.sub-menu li.current-menu-item a {
    color: var(--pink);
}
.main-menu-top .widget_nav_menu > div > ul > li > ul.sub-menu li a:hover {
    text-decoration: underline;
}

.menu-phone-number {
    padding-top: 36px;
    gap: 18px;
}
.menu-phone-number a {
    color: var(--white);
    font-size: 20px;
    font-style: normal;
    font-weight: 200;
    line-height: 120%; /* 24px */
    letter-spacing: 0.4px;
    text-decoration: none;
}
.menu-phone-number a:hover {
    text-decoration: underline;
}

.logo-text {
    top: 0;
    left: 0;
}

.banner__btn {
    right: 0;
    bottom: 0;
}
.banner.active .banner__btn {
    right: initial;
}

.carousel-wrapper {
    margin-top: 120px;
}
.services.block {
    padding-top: 122px;
    padding-bottom: 68px;
}
.services .container {
    width: 1280px;
}
.services .carousel {
    height: 577px;
}
.services-slide__thumb img {
    max-width: 100%;
}
.services .carousel .carousel-item {
    width: 640px;
    height: 577px;
    opacity: 1 !important;
}
.carousel-navigation {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: flex-start;

    top: 50%;
    height: 30px;
    cursor: pointer;
    background: none;
    border: none;
    outline: none;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

    -webkit-transform: translateY(calc(-50% - 55px));
    -moz-transform: translateY(calc(-50% - 55px));
    -ms-transform: translateY(calc(-50% - 55px));
    -o-transform: translateY(calc(-50% - 55px));
    transform: translateY(calc(-50% - 55px));
}
.carousel-navigation.carousel-prev {
    left: 91px;
}
.carousel-navigation.carousel-next {
    justify-content: flex-end;
    right: -65px;
}

.carousel .carousel-item.fake-left {
    opacity: 0 !important;
    pointer-events: none;
    transform: scale(0.8);
    transition: opacity 0.3s ease;
}

.slide-hover {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 58px 50px;
    background: rgba(0, 0, 0, 0.50);

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

    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
.services .carousel-item:not(.active) .slide-hover {
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px);
}
.slide-hover > * {
    opacity: 0;
    visibility: hidden;

    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
.services .carousel-item.active:hover .slide-hover > * {
    opacity: 1;
    visibility: visible;
}
.carousel-item.active .slide-hover > *:not(a) {
    display: block;
}
.slide-hover__title {
    position: relative;
    padding-bottom: 26px;
    margin-bottom: 11px;
    color: var(--white);
    font-size: 16px;
    font-style: normal;
    font-weight: 900;
    line-height: 130%; /* 20.8px */
    letter-spacing: 0.8px;
}
.slide-hover__title a {
    color: var(--white);
    text-decoration: none;
}
.slide-hover__title a:hover {
    text-decoration: underline;
}
.slide-hover__title:after,
.slide-hover__title:after {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 149px;
    height: 1px;
    background: var(--white);
    content: '';
}
.slide-hover__desc {
    color: var(--white);
    font-size: 14px;
    font-style: normal;
    font-weight: 300;
    line-height: 150%; /* 21px */
    letter-spacing: 0.7px;
}
.slide-hover__more.btn {
    justify-content: flex-start;
    gap: 10px;

    right: 0;
    bottom: 33px;
    width: 268px;
    height: 84px;
    padding-left: 36px;
    text-align: left;

    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.services .carousel-item.active:hover .slide-hover__more.btn {
    right: -86px;
}
.services .carousel-item.active .slide-hover {
    backdrop-filter: blur(0);
    -webkit-backdrop-filter: blur(0);
}
.services .carousel-item.active:hover .slide-hover {
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
}

.our-clients__gallery {
    position: relative;
    padding: 53px 0;
}
.our-clients__gallery:before,
.our-clients__gallery:before {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.5;
    background: #E1A372;
    background: -webkit-linear-gradient(92deg, #E1A372 -0.72%, var(--pink) 100.18%);
    background: -moz-linear-gradient(92deg, #E1A372 -0.72%, var(--pink) 100.18%);
    background: linear-gradient(92deg, #E1A372 -0.72%, var(--pink) 100.18%);
    content: '';
}
.our-clients__gallery .slick-list {
    position: relative;
    z-index: 2;
}
.our-clients__gallery .slick-track,
.our-clients__gallery .our-clients__logo {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
}

.about-us {
    margin-bottom: 60px;
}
.about-us__video .video-box {
    padding: 56px 3px 0;
}
.about-us__video .video-box img,
.about-us__video .video-box iframe {
    height: 860px;
}

.cases {
    margin-bottom: 45px;
}
.cases-slide__inner {
    gap: 101px;
}
.cta-actions {
    gap: 47px;
}
.cases-slide__title {
    position: relative;
    padding-bottom: 34px;
    margin-bottom: 30px;
    color: var(--white);
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 120%; /* 28.8px */
    letter-spacing: 0.48px;
}
.cases-slide__title:after,
.cases-slide__title::after {
    position: absolute;
    left: 0;
    bottom: 0;
    display: block;
    width: 134px;
    height: 3px;
    background: #D347A9;
    content: '';
}
.cases-slide__text {
    color: var(--white);
    font-size: 14px;
    font-style: normal;
    font-weight: 300;
    line-height: 120%; /* 16.8px */
    letter-spacing: 0.28px;
}
.cases-slide__text p {
    margin-bottom: 33px;
}

.cases > .container {
    width: 1170px;
}
.cases-carousel {
    padding-top: 53px;
}
.cases .block-title {
    margin-bottom: 47px;
}
.cases-slide__thumb {
    padding-top: 20px;
    flex: 1 1 593px;
}
.cases-slide__content {
    flex: 1 1 444px;
}

.cases-gallery {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 20px;

    height: 591px;
    overflow: hidden;
}

.thumbs-swiper {
    flex: 0 1 186px;
    height: 591px;
}

.main-swiper {
    flex: 0 1 387px;
    height: 591px;
}

.cases-gallery img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.map {
    padding-bottom: 140px;
}

.contacts {
    margin-bottom: 64px;
}
.contacts .block-title {
    margin-bottom: 56px;
}
.contact-list {
    gap: 157px;
}
.contact-list__item {
    gap: 20px;
    max-width: 295px;
}
.contact-list__row {
    gap: 4px;
}
.contact-list__label {
    color: var(--white);
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 120%; /* 19.2px */
    letter-spacing: 0.32px;
}
.contact-list__text,
.contact-list__text a {
    color: var(--white);
    font-size: 14px;
    font-style: normal;
    font-weight: 300;
    line-height: 120%; /* 16.8px */
    letter-spacing: 0.28px;
    text-decoration: none;
}
.contact-list__text a:hover {
    text-decoration: underline;
}

.feedback-form {
    margin-bottom: 58px;
}
.feedback-form form {
    padding: 0 14px;
}
.form-body {
    gap: 70px;
}
.form-left {
    color: var(--white);
    font-size: 14px;
    font-style: normal;
    font-weight: 200;
    line-height: 150%; /* 21px */
    letter-spacing: 0.42px;
}
.form-title {
    margin-bottom: 11px;
    color: var(--white);
    font-size: 16px;
    font-style: normal;
    font-weight: 800;
    line-height: 130%; /* 20.8px */
    letter-spacing: -0.48px;
}
.form-right {
    gap: 59px;
    padding-top: 28px;
}
.form-row-field-send {
    position: relative;
    padding-left: 11px;
}
.form-row-field-send .wpcf7-spinner {
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -12px;
}
.form-row-field-send .btn {
    width: 208px;
}

/* ==================
 * 404
 * ================== */
body.error404 .main-inner-header.absolute {
    position: relative;
}
.not-found-page {
    padding-top: 35px;
    padding-bottom: 106px;
}
.not-found-page__title {
    margin-bottom: 30px;
    color: #E9E9E9;
    font-size: 32px;
    font-style: normal;
    font-weight: 800;
    line-height: normal;
    letter-spacing: 1.6px;
}
.not-found-page__image {
    margin-bottom: 70px;
}
.not-found-page__home-text {
    gap: 130px;
}
.not-found-page__home-text p {
    font-size: 16px;
    font-style: normal;
    font-weight: 800;
    line-height: 130%; /* 20.8px */
    letter-spacing: -0.48px;
}
.not-found-page__home-link.btn {
    width: 208px;
    padding-left: 35px;
    padding-right: 35px;
}
.not-found-page__home-link.btn svg {
    left: 0;

    -webkit-transform: translateX(-79px);
    -moz-transform: translateX(-79px);
    -ms-transform: translateX(-79px);
    -o-transform: translateX(-79px);
    transform: translateX(-79px);
}

body.error404 .long-logo {
    width: 131px;
    height: 592px;
}

/* ==================
 * Vertical line
 * animation
 * ================== */
.lines-wrapper {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    pointer-events: none;
    align-items: stretch;
}

.line {
    position: relative;
    width: 1px;
    height: 100%;
}

/* Безкінечна лінія з маскою для розриву */
.line:before,
.line::before  {
    position: absolute;
    top: 0;
    left: 0;
    width: 1px;
    height: 100%;
    content: '';
}

.text-container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 200px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 20px;
    z-index: 2;
}
.text-container:after,
.text-container::after {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 3px;
    height: 41px;
    /*background: #090710;*/
    content: '';

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

.text {
    position: relative;
    z-index: 100;
    /* Додаємо відступи для плавного переходу */
    padding-top: 6px;
    padding-bottom: 6px;

    writing-mode: vertical-rl;
    text-orientation: mixed;

    color: var(--white);
    opacity: 0.5;
    font-size: 10px;
    font-style: normal;
    font-weight: 200;
    line-height: 96%; /* 9.6px */
    letter-spacing: 0.5px;
    text-transform: lowercase;
    white-space: nowrap;
}

/* ==================
 * Services Page
 * ================== */
.content-area.content-area-video {
    z-index: 500;
}

.services-page .services-banner {
    margin-bottom: 110px;
}
.services-page .services-banner .container {
    padding: 0 41px;
}
.services-banner__row {
    gap: 125px;
    align-items: flex-start;
}
.services-banner__video {
    flex: 1 1 500px;
}
.services-banner__video img {
    width: 100%;
    height: 972px;
    object-fit: cover;
}

.services-banner__video-area .play {
    opacity: 0;
    visibility: visible;
}

.services-banner__video-area .video-box iframe {
    width: 100%;
    height: 972px;
}

.services-banner__text {
    flex: 1 1 552px;
    margin-top: 230px;
}
.services-banner__text-area {
    padding-left: 34px;
    margin-bottom: 138px;
}
.services-banner__text-area:before,
.services-banner__text-area:before {
    position: absolute;
    top: 5px;
    left: 0;
    width: 5px;
    height: calc(100% - 9px);
    background: var(--pink);
    content: '';
}
.services-banner__main-title {
    margin-bottom: 20px;
    color: var(--white);
    font-family: var(--montserat);
    font-size: 36px;
    font-style: normal;
    font-weight: 800;
    line-height: 50px; /* 138.889% */
    letter-spacing: 1.8px;
}
.services-banner__desc {
    color: var(--white);
    font-family: var(--montserat);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 25px; /* 156.25% */
    letter-spacing: 1.6px;
}

.services-variation .services-carousel .slick-list {
    overflow: visible;
}

.service-item {
    width: 370px;
    min-width: 370px;
    margin: 0 10px;
    overflow: hidden;

    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
.service-item:hover {
    z-index: 100;

    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -ms-transform: scale(1.2);
    -o-transform: scale(1.2);
    transform: scale(1.2);
}
.service-item__title {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: center;

    top: 30px;
    left: 0;
    width: 100%;
    height: 63px;
    background: rgba(0, 0, 0, 0.80);

    color: var(--white);
    text-align: center;
    font-size: 24px;
    font-style: normal;
    font-weight: 900;
    line-height: 130%; /* 31.2px */
    letter-spacing: 0.48px;
    text-transform: capitalize;

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

    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.service-item:hover .service-item__title {
    top: -100%;
}
.service-item__image img {
    width: 100%;
    height: 697px;
    object-fit: cover;
}

.service-item__info {
    left: 0;
    bottom: -100%;
    width: 100%;
    height: 50%;
    padding: 30px 30px 30px 30px;
    background: rgba(0, 0, 0, 0.94);
    border: 1px solid rgba(255, 255, 255, 0.10);

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

    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.service-item:hover .service-item__info {
    bottom: 0;
}
.service-item__info-title {
    position: relative;
    padding-bottom: 25px;
    margin-bottom: 25px;
    color: var(--white);
    font-size: 24px;
    font-style: normal;
    font-weight: 900;
    line-height: 130%; /* 31.2px */
    letter-spacing: 0.48px;
    text-transform: capitalize;
}
.service-item__info-title:after,
.service-item__info-title::after {
    position: absolute;
    z-index: 3;
    left: 0;
    bottom: 0;
    width: 115px;
    height: 3px;
    background: #D354A0;
    content: '';
}
.service-item__info-title a {
    color: var(--white);
    text-decoration: none;

    -webkit-transition: all 0.15s ease-in-out;
    -moz-transition: all 0.15s ease-in-out;
    -ms-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
}
.service-item__info-title a:hover {
    color: #D354A0;
}
.service-item__info-desc {
    color: var(--white);
    font-family: var(--montserat);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 25px; /* 156.25% */
    letter-spacing: 0.8px;
}

.service-item__info-more.btn {
    right: 40px;
    bottom: 41px;
    width: 161px;
    height: 52px;
    background: #D354A0;
}
.service-item__info-more.btn svg {
    left: 0;

    -webkit-transform: translateX(-43px);
    -moz-transform: translateX(-43px);
    -ms-transform: translateX(-43px);
    -o-transform: translateX(-43px);
    transform: translateX(-43px);
}

.services-banner__left-btn {
    right: 10px;
    bottom: 0;
}

.services-banner__btn {
    padding-left: 34px;
}
.services-banner__btn a.btn {
    width: 208px;
}

.services-variation {
    margin-bottom: 115px;
}
body.page-template-services-page .feedback-form {
    margin-bottom: 85px;
}

/* ==================
 * Service Page
 * ================== */
.service-banner {
    position: relative;
    width: 100%;
    height: 100vh;
    overflow: visible;
}

.service-banner__inner {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.service-banner__video {
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    width: 100vw;
    height: 56.25vw;
    min-height: 100vh;
    min-width: 177.78vh;
    background: var(--black);

    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.service-banner__video iframe {
    width: 100%;
    height: 100%;
    border: 0;
    object-fit: cover;
    pointer-events: none;
}

.service-banner__content {
    right: 110px;
    bottom: -32px;
    width: 500px;
    height: calc(100% - 90px);
    padding: 139px 71px 70px 70px;
    background: var(--black);
    border: 2px solid rgba(255, 255, 255, 0.1);

    -webkit-box-shadow: 0 0 100px 0 var(--black);
    -moz-box-shadow: 0 0 100px 0 var(--black);
    box-shadow: 0 0 100px 0 var(--black);

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.service-banner__title {
    margin-bottom: 18px;
    color: var(--pink);
    font-family: var(--montserat);
    font-size: 36px;
    font-style: normal;
    font-weight: 700;
    line-height: 40px; /* 111.111% */
    letter-spacing: 1.8px;
}
.service-banner__desc {
    margin-bottom: 80px;
    color: var(--white);
    font-family: var(--montserat);
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 25px; /* 125% */
    letter-spacing: 1px;
}

.service-banner__btn a.btn,
.service-banner__btn button.btn {
    width: 208px;
    text-transform: uppercase;
}
body.page-template-service-page .services.block {
    padding-top: 40px;
    padding-bottom: 70px;
}

.introduction.block {
    padding-top: 215px;
    padding-bottom: 50px;
}
.introduction__content {
    color: var(--white);
    font-family: var(--montserat);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px; /* 157.143% */
    letter-spacing: 0.42px;
}
.introduction__content.introduction__content-top {
    padding-right: 90px;
}
.introduction__content.introduction__content-top p {
    font-size: 16px;
}
.introduction__content.introduction__content-top p b,
.introduction__content.introduction__content-top p strong {
    color: var(--pink);
}
.introduction__content h1,
.introduction__content h2,
.introduction__content h3,
.introduction__content h4,
.introduction__content h5,
.introduction__content h6 {
    margin-bottom: 30px;
    color: var(--white);
    font-family: var(--montserat);
    font-size: 25px;
    font-style: normal;
    font-weight: 800;
    line-height: 22px; /* 88% */
    letter-spacing: 1.25px;
}
.introduction__content ul {
    padding-left: 25px;
    margin-top: 40px;
}
.introduction__content ul li {
    position: relative;
    padding-left: 25px;
    margin-bottom: 20px;
    list-style: none;
}
.introduction__content ul li:before,
.introduction__content ul li::before {
    position: absolute;
    top: 2px;
    left: 0;
    width: 15px;
    height: 15px;
    background: url(../image/bullet-item.svg) no-repeat center center;
    content: '';
}

.introduction__content.introduction__content-bottom {
    padding-top: 35px;
    padding-left: 46px;
}
.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 {
    margin-left: -46px;
}

.introduction__list {
    flex-wrap: wrap;
    gap: 25px 95px;
    counter-reset: list-counter;
    padding-top: 25px;
}
.introduction__list-item {
    position: relative;
    flex: 0 1 calc(510px - 50px);
    width: calc(510px - 50px);
    padding-left: 40px;
    color: var(--white);
    font-family: var(--montserat);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px; /* 157.143% */
    letter-spacing: 0.42px;
}

.introduction__list-item:before,
.introduction__list-item::before {
    counter-increment: list-counter;
    position: absolute;
    top: 0;
    left: 0;

    font-family: var(--montserat);
    font-weight: 900;
    font-size: 32px;
    font-style: normal;
    line-height: 22px; /* 68.75% */
    letter-spacing: 0.05em;
    background: linear-gradient(135deg, var(--pink) 0%, #e1a372 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;

    content: counter(list-counter);
}
.introduction__desc {
    padding-top: 50px;
    color: var(--white);
    font-family: Montserrat;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px; /* 137.5% */
    letter-spacing: 0.8px;
}
.introduction__desc b,
.introduction__desc strong {
    color: var(--pink);
    font-weight: 800;
}

.introduction__advice {
    gap: 88px;
    padding-top: 30px;
}
.introduction__advice-item {
    flex: 1 1 30%;
    gap: 45px;
    width: 30%;
}
.introduction__advice-item:nth-child(2) {
    flex-basis: 35%;
    width: 35%;
}
.introduction__advice-item-desc {
    color: var(--white);
    font-family: var(--montserat);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px; /* 157.143% */
    letter-spacing: 0.42px;
}

/* ==================
 * Gallery Carousel
 * ================== */
.introduction__row {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.introduction__gallery {
    padding-top: 5px;
}
.introduction-slider {
    width: 494px;
    margin: 0;
    overflow: visible;
}

.introduction__gallery .swiper-slide {
    width: 494px !important;
    height: 445px;

    transform-origin: center right;

    -webkit-transition: transform 0.8s ease, opacity 0.8s ease;
    -moz-transition: transform 0.8s ease, opacity 0.8s ease;
    -ms-transition: transform 0.8s ease, opacity 0.8s ease;
    -o-transition: transform 0.8s ease, opacity 0.8s ease;
    transition: transform 0.8s ease, opacity 0.8s ease;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.introduction__gallery .swiper-slide-active {
    transform: translateX(0) scale(1);
    z-index: 3;
}

.introduction__gallery .swiper-slide-prev {
    transform: translateX(-70%) rotateY(25deg) scale(0.85);
    z-index: 2;
}

.introduction__gallery .swiper-slide-prev-prev-prev {
    opacity: 0;
}
.introduction__gallery .swiper-slide-prev-prev {
    transform: translateX(-140%) rotateY(45deg) scale(0.7);
    z-index: 1;
}

/* приховуємо всі після активного */
.introduction__gallery .swiper-slide-next,
.introduction__gallery .swiper-slide-next ~ .swiper-slide {
    opacity: 0;
    pointer-events: none;
    transform: translateX(100%) scale(0.6);
}
.introduction-next.swiper-button-next {
    top: 50%;
    right: -51px;

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

.cases__carousel {
    padding-top: 45px;
}
.case__item {
    position: relative;
    z-index: 10;
    width: 434px;
    margin-right: 15px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.10);

    -webkit-transform: skew(-7.6deg) scale(1);
    -moz-transform: skew(-7.6deg) scale(1);
    -ms-transform: skew(-7.6deg) scale(1);
    -o-transform: skew(-7.6deg) scale(1);
    transform: skew(-7.6deg) scale(1);

    -webkit-transition: all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    -o-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}
.case__item:hover {
    z-index: 100;

    -webkit-transform: skew(-7.6deg) scale(1.19);
    -moz-transform: skew(-7.6deg) scale(1.19);
    -ms-transform: skew(-7.6deg) scale(1.19);
    -o-transform: skew(-7.6deg) scale(1.19);
    transform: skew(-7.6deg) scale(1.19);

    /*-webkit-transform: skew(-7.6deg) scaleX(2.63) scaleY(1.19);*/
    /*-moz-transform: skew(-7.6deg) scaleX(2.63) scaleY(1.19);*/
    /*-ms-transform: skew(-7.6deg) scaleX(2.63) scaleY(1.19);*/
    /*-o-transform: skew(-7.6deg) scaleX(2.63) scaleY(1.19);*/
    /*transform: skew(-7.6deg) scaleX(2.63) scaleY(1.19);*/
}
.cases__carousel .slick-list {
    overflow: visible;
}
.case__item-element {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: flex-end;
    height: 842px;
}
.case__item-img {
    width: 100%;
    height: 100%;
    object-fit: cover;

    -webkit-transform: skew(7.6deg) scale(1.3);
    -moz-transform: skew(7.6deg) scale(1.3);
    -ms-transform: skew(7.6deg) scale(1.3);
    -o-transform: skew(7.6deg) scale(1.3);
    transform: skew(7.6deg) scale(1.3);
}
.case__item-meta {
    padding: 9px 13px 30px 50px;
    background: var(--black);
    color: var(--white);
    font-size: 14px;
    font-style: normal;
    font-weight: 200;
    line-height: 150%; /* 21px */
    letter-spacing: 0.7px;

    -webkit-transform: skew(0deg);
    -moz-transform: skew(0deg);
    -ms-transform: skew(0deg);
    -o-transform: skew(0deg);
    transform: skew(0deg);
}
.case__item-meta:before,
.case__item-meta::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 92px;
    background-color: var(--black);
    content: '';
    clip-path: polygon(0 0, 0% 100%, 100% 100%);

    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
}
.case__item-title,
.case__item-desc,
.case__item-more {
    -webkit-transform: skew(7.6deg);
    -moz-transform: skew(7.6deg);
    -ms-transform: skew(7.6deg);
    -o-transform: skew(7.6deg);
    transform: skew(7.6deg);
}
.case__item-title {
    margin-left: -11px;
    margin-bottom: 20px;
    color: #CA3CA7;
    font-size: 20px;
    font-style: normal;
    font-weight: 900;
    line-height: 130%; /* 26px */
    letter-spacing: 1px;
    text-transform: capitalize;
}
.case__item-title a {
    color: #CA3CA7;
    text-decoration: none;
}
.case__item-title a:hover {
    text-decoration: underline;
}
.case__item-more {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: flex-end;
    padding: 20px 28px 0;
}
.case__item-more a path {
    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
.case__item-more a:hover path {
    fill: var(--lightpink);
}

body.page-template-service-page .services .custom-indicators {
    display: none;
}

.clients.block {
    padding-top: 0;
}
.clients {
    margin-bottom: 120px;
}
.clients .block-title {
    margin-bottom: 95px;
}
.reviews-carousel {
    margin: 60px auto;
    max-width: 1200px;
}
.review-item {
    margin-right: 50px;
}
.review-card {
    min-height: 280px;
    padding: 35px 18px 15px 33px;
    background: var(--black);
    border: 1px solid rgba(255, 255, 255, 0.10);

    -webkit-box-shadow: 0 0 100px 0 var(--black), 0 0 100px 0 var(--black);
    -moz-box-shadow: 0 0 100px 0 var(--black), 0 0 100px 0 var(--black);
    box-shadow: 0 0 100px 0 var(--black), 0 0 100px 0 var(--black);
}
.review-card__body {
    gap: 38px;
}
.review-photo {
    width: 59px;
    height: 59px;
    flex: 0 0 59px;
}
.review-photo:before,
.review-photo::before {
    content: '';
}
.review-photo img {
    width: 100%;
    min-height: 100%;
    margin-bottom: 15px;
    object-fit: cover;
    border: 1px solid #D9D9D9;

    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
}
.review-name {
    margin: 0 0 6px;
    color: var(--white);
    font-family: var(--montserat);
    font-size: 20px;
    font-style: normal;
    font-weight: 600;
    line-height: 22px; /* 110% */
}
.review-role {
    margin-bottom: 11px;
    color: var(--white);
    font-family: var(--montserat);
    font-size: 14px;
    font-style: italic;
    font-weight: 200;
    line-height: 22px; /* 157.143% */
}
.review-rating {
    margin-bottom: 8px;
}
.review-text {
    color: var(--white);
    font-family: var(--montserat);
    font-size: 14px;
    font-style: normal;
    font-weight: 300;
    line-height: 22px; /* 157.143% */
    letter-spacing: 0.7px;
}

body.page-template-service-page .reviews-slider .slick-slide {
    width: 523px;
    margin: 0 25px;
}
body.page-template-service-page .review-card {
    width: 100%;
}

/* ==================
 * Animation
 * ================== */
.lava {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 260px;
    height: 260px;
    transform: translate(-50%, -50%);
    filter: blur(30px);
    mix-blend-mode: screen;
}

.photo {
    position: relative;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    border: 5px solid white;
    z-index: 2;
    display: block;
    margin: 0 auto;
}

.review-blob {
    position: absolute;
    z-index: 0;
    top: 50%;
    left: 50%;
    width: 155%;
    height: 155%;
    pointer-events: none;
    mix-blend-mode: screen;
    overflow: visible; /* критично */

    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.review-blob.review-blob-2 {
    width: 165%;
    height: 165%;
}
.review-blob.review-blob-3 {
    width: 190%;
    height: 190%;
}
.review-blob path {
    /* щоб трансформ-оріджин працював однаково у всіх браузерах */
    transform-box: fill-box;
    transform-origin: 50% 50%;
}

/* ==================
 * Contacts Page
 * ================== */
.contacts-banner {
    margin-bottom: 95px;
}

.contacts-banner__info {
    z-index: 10;
    top: 0;
    left: 111px;
    width: 500px;
    min-height: 691px;
    padding: 209px 70px 105px 80px;
    border: 2px solid rgba(255, 255, 255, 0.10);
    background: var(--black);

    -webkit-box-shadow: 0 0 100px 0 var(--black);
    -moz-box-shadow: 0 0 100px 0 var(--black);
    box-shadow: 0 0 100px 0 var(--black);
}
.contacts-banner__title {
    margin-bottom: 26px;
    color: var(--pink);
    font-family: var(--montserat);
    font-size: 36px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
}
.contacts-banner__desc {
    color: var(--white);
    font-family: var(--montserat);
    font-size: 14px;
    font-style: normal;
    font-weight: 300;
    line-height: 22px; /* 157.143% */
    letter-spacing: 0.7px;
}
.contacts-banner__desc b,
.contacts-banner__desc strong {
    font-weight: 600;
}
.contacts-banner__desc p {
    margin-bottom: 20px;
}

.contacts-banner__image {
    border-bottom: 1px solid rgba(255, 255, 255, 0.10);
}
.contacts-banner__image img {
    width: 100%;
    height: 1080px;
    object-fit: cover;
}

body.page-template-contacts-page .contacts {
    margin-bottom: 37px;
}
body.page-template-contacts-page .contacts .block-title {
    margin-bottom: 90px;
}
.contacts-page__social {
    margin-bottom: 80px;
}
.contacts-page__social-title {
    margin-bottom: 15px;
    color: var(--white);
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 120%; /* 19.2px */
    letter-spacing: 0.32px;
}

body.page-template-contacts-page .map {
    padding-bottom: 55px;
}

body.page-template-contacts-page .feedback-form {
    margin-bottom: 126px;
}

/* ==================
 * About Us
 * ================== */
.about-us-banner {
    padding: 315px 0 231px;
}
.about-us-banner__container {
    width: 931px;
    max-width: 100%;
}
.about-us-banner__image {
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top center;
}
.about-us-banner__center {
    padding: 60px 15px 25px;
    font-family: var(--montserat);
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px; /* 157.143% */
    letter-spacing: 0.7px;
    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);
}
.about-us-banner__center .about-us-banner__title {
    margin-bottom: 37px;
    font-size: 36px;
    font-style: normal;
    font-weight: 800;
    line-height: 50px; /* 138.889% */
    letter-spacing: 1.8px;
}
.about-us-banner__desc p {
    margin-bottom: 20px;
}

.about-us-promo {
    padding: 105px 0;
}
.about-us-promo__title {
    padding: 0 10px;
    color: #E9E9E9;
    font-size: 32px;
    font-style: normal;
    font-weight: 800;
    line-height: normal;
    letter-spacing: 1.6px;
}

.about-us-statistics__item {
    min-height: 281px;
    padding: 52px 135px 34px 35px;
}
.about-us-statistics__item.about-us-statistics__item-1 {
    background: var(--pink);
}
.about-us-statistics__item.about-us-statistics__item-2 {
    background: #EE8837;
}
.about-us-statistics__item.about-us-statistics__item-3 {
    background: #1B0D1A;
}
.about-us-statistics__title {
    color: var(--black);
    font-size: 100px;
    font-style: normal;
    font-weight: 900;
    line-height: 130%; /* 130px */
    letter-spacing: 2px;
    text-transform: capitalize;
}
.about-us-statistics__item.about-us-statistics__item-3 .about-us-statistics__title {
    color: var(--white);
}
.about-us-statistics__title small {
    font-size: 64px;
}
.about-us-statistics__title span {
    color: var(--white);
    font-size: 20px;
    font-style: normal;
    font-weight: 900;
    line-height: 130%; /* 26px */
    letter-spacing: 1px;
    text-transform: lowercase;
}
.about-us-statistics__item.about-us-statistics__item-3 .about-us-statistics__title span {
    color: var(--pink);
}
.about-us-statistics__desc {
    color: var(--black);
    font-size: 15px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%; /* 19.5px */
}
.about-us-statistics__item.about-us-statistics__item-3 .about-us-statistics__desc {
    color: var(--white);
}

body.page-template-about-us-page .services.block {
    padding-top: 82px;
}
body.page-template-about-us-page .custom-indicators {
    display: none;
}
body.page-template-about-us-page .feedback-form {
    margin-bottom: 130px;
}

/* ==================
 * Cases Page
 * ================== */
body.page-template-cases-page .services.block {
    padding-top: 80px;
    padding-bottom: 115px;
}
body.page-template-cases-page .custom-indicators {
    display: none;
}

.cases-banner-box {
    top: -70px;
    height: 1100px;
    overflow: hidden;
}
.cases-banner-box:after,
.cases-banner-box::after {
    position: absolute;
    z-index: 2;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 300px;
    pointer-events: none;

    background: rgba(0, 0, 0, 0.8);
    background: -webkit-linear-gradient(to top, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0.8) 20%, rgba(255, 255, 255, 0) 100%);
    background: -moz-linear-gradient(to top, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0.8) 20%, rgba(255, 255, 255, 0) 100%);
    background: -o-linear-gradient(to top, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0.8) 20%, rgba(255, 255, 255, 0) 100%);
    background: linear-gradient(to top, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0.8) 20%, rgba(255, 255, 255, 0) 100%);

    content: '';
}
.cases-banner-area {
    display: flex;
    gap: 40px;
    justify-content: center;
    position: relative;
    left: -70px;
    width: 110%;
    overflow: hidden;

    -webkit-transform: rotate(13deg);
    -moz-transform: rotate(13deg);
    -ms-transform: rotate(13deg);
    -o-transform: rotate(13deg);
    transform: rotate(13deg);
}
.cases-banner-area__carousel {
    flex-shrink: 0;
    width: 376px;
    height: 1250px;
    overflow: hidden;
}
.inner-scroll {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 40px;
}
.cases-banner-area__slide {
    width: 100%;
    height: 588px !important;
}
.cases-banner-area__slide img {
    display: block;
    width: 100%;
    height: 100%;
    border: 2px solid #5C5C5C;
    object-fit: cover;
}

/* --- SCROLL UP --- */
@-webkit-keyframes scroll-up {
    0% { -webkit-transform: translateY(0); transform: translateY(0); }
    100% { -webkit-transform: translateY(-50%); transform: translateY(-50%); }
}
@-moz-keyframes scroll-up {
    0% { -moz-transform: translateY(0); transform: translateY(0); }
    100% { -moz-transform: translateY(-50%); transform: translateY(-50%); }
}
@-o-keyframes scroll-up {
    0% { -o-transform: translateY(0); transform: translateY(0); }
    100% { -o-transform: translateY(-50%); transform: translateY(-50%); }
}
@keyframes scroll-up {
    0% { -webkit-transform: translateY(0); transform: translateY(0); }
    100% { -webkit-transform: translateY(-50%); transform: translateY(-50%); }
}

/* --- SCROLL DOWN --- */
@-webkit-keyframes scroll-down {
    0% { -webkit-transform: translateY(-50%); transform: translateY(-50%); }
    100% { -webkit-transform: translateY(0); transform: translateY(0); }
}
@-moz-keyframes scroll-down {
    0% { -moz-transform: translateY(-50%); transform: translateY(-50%); }
    100% { -moz-transform: translateY(0); transform: translateY(0); }
}
@-o-keyframes scroll-down {
    0% { -o-transform: translateY(-50%); transform: translateY(-50%); }
    100% { -o-transform: translateY(0); transform: translateY(0); }
}
@keyframes scroll-down {
    0% { -webkit-transform: translateY(-50%); transform: translateY(-50%); }
    100% { -webkit-transform: translateY(0); transform: translateY(0); }
}

.cases-categories {
    padding-top: 20px;
    margin-bottom: 35px;
}
.cases-categories__list {
    flex-wrap: wrap;
}
.cases-categories__item {
    flex: 0 1 200px;
    position: relative;
    width: 200px;
    max-width: 100%;
    padding: 0 20px;
    list-style: none;
    cursor: pointer;

    font-family: var(--montserat);
    font-size: 20px;
    font-style: normal;
    font-weight: 300;
    line-height: 22px; /* 110% */
    letter-spacing: 1px;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

    -webkit-transition: all 0.15s linear;
    -moz-transition: all 0.15s linear;
    -ms-transition: all 0.15s linear;
    -o-transition: all 0.15s linear;
    transition: all 0.15s linear;
}
.cases-categories__item:first-child {
    /*flex: 0 1 100px;*/
    width: 100px;
}
.cases-categories__item:last-child {
    flex: 0 1 230px;
    width: 230px;
}
.cases-categories__item.cases-categories__item-active {
    font-weight: 600;
    cursor: default;
}
.cases-categories__item:not(.cases-categories__item-active):hover {
    color: var(--pink);
}
.cases-categories__item:after,
.cases-categories__item::after {
    position: absolute;
    top: -5px;
    right: 0;
    width: 2px;
    height: 30px;
    background: var(--pink);
    content: '';
}
.cases-categories__item:last-child:after,
.cases-categories__item:last-child::after {
    display: none;
}

.cases-list.block {
    margin-bottom: 90px;
}
.cases-list__wrapper {
    gap: 150px;
}
.case-item.reverse {
    flex-direction: row-reverse;
}
.case-item__image {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex: 1 1 633px;
    height: 633px;
}
.case-item__image img {
    width: 100%;
    object-fit: cover;
    border: 2px solid #5C5C5C;
}
.case-item__content {
    flex: 1 1 594px;
    padding-top: 20px;
    padding-left: 100px;
}
.case-item.reverse .case-item__content {
    padding-left: 0;
    padding-right: 100px;
}
.case-item__title {
    margin-bottom: 23px;
    font-size: 24px;
    font-style: normal;
    font-weight: 500;
    line-height: normal;
}
.case-item__title a {
    color: #E9E9E9;
    text-decoration: none;

    -webkit-transition: all 0.15s linear;
    -moz-transition: all 0.15s linear;
    -ms-transition: all 0.15s linear;
    -o-transition: all 0.15s linear;
    transition: all 0.15s linear;
}
.case-item__title a:hover {
    color: var(--pink);
    text-decoration: none;
}
.case-item__desc {
    font-size: 14px;
    font-style: normal;
    font-weight: 300;
    line-height: 22px; /* 157.143% */
    letter-spacing: 0.7px;
}
.case-item__desc p {
    margin-bottom: 40px;
}
.case-item__desc b,
.case-item__desc strong {
    font-weight: 600;
}
.case-item__btn {
    right: 0;
    bottom: 0;
}

.case-item__image .corner-btn {
    width: 156px;
}
.case-item__image .case-item__btn {
    right: 8px;
}

@-webkit-keyframes highlight {
    0% {
        opacity: 0.6;

        -webkit-transform: scale(0.98);
        -moz-transform: scale(0.98);
        -ms-transform: scale(0.98);
        -o-transform: scale(0.98);
        transform: scale(0.98);
    }
    50% {
        opacity: 1;

        -webkit-transform: scale(1.02);
        -moz-transform: scale(1.02);
        -ms-transform: scale(1.02);
        -o-transform: scale(1.02);
        transform: scale(1.02);
    }
    100% {
        opacity: 1;

        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
}
@-moz-keyframes highlight {
    0% {
        opacity: 0.6;

        -webkit-transform: scale(0.98);
        -moz-transform: scale(0.98);
        -ms-transform: scale(0.98);
        -o-transform: scale(0.98);
        transform: scale(0.98);
    }
    50% {
        opacity: 1;

        -webkit-transform: scale(1.02);
        -moz-transform: scale(1.02);
        -ms-transform: scale(1.02);
        -o-transform: scale(1.02);
        transform: scale(1.02);
    }
    100% {
        opacity: 1;

        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
}
@-o-keyframes highlight {
    0% {
        opacity: 0.6;

        -webkit-transform: scale(0.98);
        -moz-transform: scale(0.98);
        -ms-transform: scale(0.98);
        -o-transform: scale(0.98);
        transform: scale(0.98);
    }
    50% {
        opacity: 1;

        -webkit-transform: scale(1.02);
        -moz-transform: scale(1.02);
        -ms-transform: scale(1.02);
        -o-transform: scale(1.02);
        transform: scale(1.02);
    }
    100% {
        opacity: 1;

        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
}
@keyframes highlight {
    0% {
        opacity: 0.6;

        -webkit-transform: scale(0.98);
        -moz-transform: scale(0.98);
        -ms-transform: scale(0.98);
        -o-transform: scale(0.98);
        transform: scale(0.98);
    }
    50% {
        opacity: 1;

        -webkit-transform: scale(1.02);
        -moz-transform: scale(1.02);
        -ms-transform: scale(1.02);
        -o-transform: scale(1.02);
        transform: scale(1.02);
    }
    100% {
        opacity: 1;

        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
}
@keyframes highlight {
    0% {
        opacity: 0.6;

        -webkit-transform: scale(0.98);
        -moz-transform: scale(0.98);
        -ms-transform: scale(0.98);
        -o-transform: scale(0.98);
        transform: scale(0.98);
    }
    50% {
        opacity: 1;

        -webkit-transform: scale(1.02);
        -moz-transform: scale(1.02);
        -ms-transform: scale(1.02);
        -o-transform: scale(1.02);
        transform: scale(1.02);
    }
    100% {
        opacity: 1;

        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }
}

.case-item.highlight {
    animation: highlight 0.4s ease-in-out;
}

.case-banner {
    padding-top: 325px;
    padding-bottom: 305px;
    margin-bottom: 50px;
}
.case-banner__box {
    width: 660px;
    max-width: 100%;
    padding: 50px 99px 78px 50px;
    border: 2px solid rgba(255, 255, 255, 0.10);
    border-right: none;
    background: var(--black);

    -webkit-box-shadow: 0 0 100px 0 var(--black);
    -moz-box-shadow: 0 0 100px 0 var(--black);
    box-shadow: 0 0 100px 0 var(--black);
}
.case-banner__title {
    margin-bottom: 25px;
    color: var(--pink);
    font-family: var(--montserat);
    font-size: 36px;
    font-style: normal;
    font-weight: 700;
    line-height: 40px; /* 111.111% */
}
.case-banner__desc {
    color: var(--white);
    font-size: 14px;
    font-style: normal;
    font-weight: 300;
    line-height: 22px; /* 157.143% */
    letter-spacing: 0.98px;
}
.case-banner__desc h1,
.case-banner__desc h2,
.case-banner__desc h3,
.case-banner__desc h4,
.case-banner__desc h5,
.case-banner__desc h6 {
    margin-bottom: 15px;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 25px; /* 125% */
    letter-spacing: 1px;
}
.case-banner__desc b,
.case-banner__desc strong {
    font-style: normal;
    font-weight: 400;
}

.case-info {
    margin-bottom: 95px;
}
.case-info__box {
    padding-left: 78px;
    padding-right: 78px;
    gap: 30px;
}
.case-info__item-key {
    flex: 0 1 342px;

    color: #E9E9E9;
    font-size: 20px;
    font-style: normal;
    font-weight: 400;
    line-height: 25px; /* 125% */
}
.case-info__item-key svg {
    left: 0;
    bottom: 12px;
}
.case-info__item-val {
    flex: 0 1 577px;

    font-size: 14px;
    font-style: normal;
    font-weight: 300;
    line-height: 22px; /* 157.143% */
    letter-spacing: 0.7px;
}

.initiative {
    margin-bottom: 38px;
}
.initiative__desc {
    font-family: var(--montserat);
    font-size: 14px;
    font-style: normal;
    font-weight: 300;
    line-height: 22px;
    letter-spacing: 0.7px;
}
.initiative__desc p {
    margin-bottom: 10px;
}
.initiative__desc h1,
.initiative__desc h2,
.initiative__desc h3,
.initiative__desc h4,
.initiative__desc h5,
.initiative__desc h6 {
    margin-bottom: 20px;
    font-size: 24px;
    font-weight: 500;
    line-height: normal;
}
.initiative__desc b,
.initiative__desc strong {
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 22px; /* 157.143% */
    letter-spacing: 0.7px;
}
.initiative__desc a {
    color: #FFF;
    text-decoration: underline;
}
.initiative__desc a:hover {
    text-decoration: none;
}

.client-review__row {
    gap: 96px;
    padding-top: 35px;
}
.client-review__content {
    flex: 1 1 585px;
    padding-left: 21px;
}
.client-review__video {
    flex: 1 1 543px;
}
.client-review .video-box img {
    height: 441px;
    object-fit: cover;
    border: 2px solid #5C5C5C;

    -webkit-box-shadow: 0 0 100px 0 #000;
    -moz-box-shadow: 0 0 100px 0 #000;
    box-shadow: 0 0 100px 0 #000;
}
.review-photo img,
.review-photo {
    width: 60px;
    height: 60px;
}
body.page-template-case-page .review-photo img,
body.page-template-case-page .review-photo {
    width: 92px;
    height: 92px;
}
.review-photo img {
    max-width: none;
}
.client-review__date {
    font-family: var(--montserat);
    font-size: 14px;
    font-style: italic;
    font-weight: 600;
    line-height: 22px; /* 157.143% */
}
.client-review .review-text {
    font-weight: 400;
    letter-spacing: 0.28px;
}
.client-review .review-card__body {
    margin-bottom: 20px;
}
.client-review .review-name {
    margin: 0 0 18px;
}

body.page-template-case-page .video-block {
    margin-bottom: 40px;
}
body.page-template-case-page .client-review {
    margin-bottom: 40px;
}
body.page-template-case-page .feedback-form {
    margin-bottom: 128px;
}

.client-review__logo {
    top: 97px;
    left: 36px;
}

.double-swiper {
    width: 100vw;
    overflow: hidden;
    background: #0a0611;
    display: flex;
    flex-direction: column;
    gap: 20px;
    position: relative;
}

.double-swiper__area.swiper {
    width: 100%;
}
.double-swiper .swiper-top.swiper {
    width: 100%;
    height: 587px;
}
.double-swiper .swiper-bottom.swiper {
    width: 100%;
    height: 426px;
}

.double-swiper {
    gap: 49px;
}

.double-swiper .swiper-slide {
    width: auto !important;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.double-swiper .swiper-slide img {
    height: 100%;
    width: auto;
    object-fit: cover;
    pointer-events: none;
    user-select: none;
    border: 2px solid #464646;
}

.double-swiper .swiper-wrapper {
    transition-timing-function: linear !important;
}

/* ==================
 * Footer
 * ================== */
.main-footer {
    position: relative;
    z-index: 200;
    padding-top: 55px;
    padding-bottom: 71px;

    background: #26112c;
    background: -webkit-radial-gradient(circle at 40% center, #0c0713 0%, #26112c 50%, #3a162a 100%);
    background: -moz-radial-gradient(circle at 40% center, #0c0713 0%, #26112c 50%, #3a162a 100%);
    background: radial-gradient(circle at 40% center, #0c0713 0%, #26112c 50%, #3a162a 100%);

    -webkit-box-shadow: 0 -6px 10px 2px rgba(0, 0, 0, 0.55);
    -moz-box-shadow: 0 -6px 10px 2px rgba(0, 0, 0, 0.55);
    box-shadow: 0 -6px 10px 2px rgba(0, 0, 0, 0.55);
}
.main-footer:before,
.main-footer::before,
.main-footer:after,
.main-footer::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background: rgba(217, 217, 217, 0.10);
    content: '';
}
.main-footer:after,
.main-footer::after {
    top: 3px;
}

.main-footer__row {
    gap: 100px;
}
.footer-logo {
    gap: 15px;
}
.footer-logo img {
    width: 173px;
    max-width: 100%;
}

.footer-menu {
    padding-top: 33px;
}
.footer-menu ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    gap: 100px;
}
.footer-menu ul li {
    list-style: none;
}
.footer-menu ul li a {
    color: var(--white);
    font-size: 14px;
    font-style: normal;
    font-weight: 200;
    line-height: 96%; /* 13.44px */
    letter-spacing: 0.7px;
    text-decoration: none;
}
.footer-menu ul li a:hover {
    text-decoration: underline;
}

/* ==================
 * Classes
 * ================== */
body .wrapper .desktop {
    display: block;
    margin: 0 auto;
}
body .wrapper .mobile {
    display: none;
}
.d-flex {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
}

.align-start {
    align-items: flex-start;
}
.align-center {
    align-items: center;
}
.align-end {
    align-items: flex-end;
}

.wrap {
    flex-wrap: wrap;
}

.justify-start {
    justify-content: flex-start;
}
.justify-center {
    justify-content: center;
}
.justify-end {
    justify-content: flex-end;
}
.justify-between {
    justify-content: space-between;
}

.column {
    flex-direction: column;
}
.row {
    flex-direction: row;
}

.uppercase {
    text-transform: uppercase;
}
.hide {
    display: none !important;
}

.half {
    width: 50%;
    flex: 1 1 50%;
}
.third {
    width: 33.33%;
    flex: 1 1 33.33%;
}
.disabled-grow {
    flex-grow: 0;
}

.alignleft {
    float: left;
}
.alignright {
    float: right;
}
.aligncenter {
    display: block;
    margin: 0 auto 20px;
}

.absolute {
    position: absolute;
}
.relative {
    position: relative;
}

.grow {
    flex-grow: 1;
}

.overflow-hidden {
    overflow: hidden;
}

.index-1 {
    z-index: 1;
}
.index-2 {
    z-index: 2;
}
.index-3 {
    z-index: 3;
}
.index-100 {
    z-index: 100;
}
.index-200 {
    z-index: 200;
}

.container {
    width: 1260px;
    max-width: 100%;
    padding-left: 15px;
    padding-right: 15px;
    margin: 0 auto;
}

.text-left {
    text-align: left;
}
.text-right {
    text-align: right;
}
.text-center {
    text-align: center;
}

.corner-btn {
    width: 188px;
    height: 105px;
    background-color: #D655A2;
    cursor: pointer;

    -webkit-transform: skew(-6deg);
    -moz-transform: skew(-6deg);
    -ms-transform: skew(-6deg);
    -o-transform: skew(-6deg);
    transform: skew(-6deg);

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.corner-btn-flat-side {
    position: absolute;
    top: 0;
    right: -7px;
    width: 50px;
    height: 100%;
    background-color: #D655A2;

    -webkit-transform: skew(6deg);
    -moz-transform: skew(6deg);
    -ms-transform: skew(6deg);
    -o-transform: skew(6deg);
    transform: skew(6deg);
}
.corner-btn:before,
.corner-btn:before,
.corner-btn:after,
.corner-btn::after {
    position: absolute;
    top: 0;
    left: -20px;
    width: 12px;
    height: 105px;
    background-color: rgba(214, 85, 162, 0.50);
    content: '';
}
.corner-btn:after,
.corner-btn::after {
    left: -40px;
    background-color: rgba(214, 85, 162, 0.20);
}
.corner-btn:hover:after,
.corner-btn:hover::after {
    -webkit-animation: blink-2 0.3s ease-in-out infinite alternate 0.15s;
    -o-animation: blink-2 0.3s ease-in-out infinite alternate 0.15s;
    animation: blink-2 0.3s ease-in-out infinite alternate 0.15s;
}
.corner-btn:hover:before,
.corner-btn:hover::before {
    -webkit-animation: blink-1 0.3s ease-in-out infinite alternate 0.15s;
    -o-animation: blink-1 0.3s ease-in-out infinite alternate 0.15s;
    animation: blink-1 0.3s ease-in-out infinite alternate 0.15s;
}
.corner-btn svg {
    top: 50%;
    right: 0;

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

    -webkit-transition: all 0.15s ease-in-out;
    -moz-transition: all 0.15s ease-in-out;
    -ms-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
}
.corner-btn:hover svg {
    -webkit-transform: skew(6deg) translate(-10%, -50%);
    -moz-transform: skew(6deg) translate(-10%, -50%);
    -ms-transform: skew(6deg) translate(-10%, -50%);
    -o-transform: skew(6deg) translate(-10%, -50%);
    transform: skew(6deg) translate(-10%, -50%);
}

@keyframes blink-1 {
    from {
        background-color: rgba(214, 85, 162, 0.50);
    }
    to {
        background-color: rgba(214, 85, 162, 0.20);
    }
}

@keyframes blink-2 {
    from {
        background-color: rgba(214, 85, 162, 0.20);
    }
    to {
        background-color: rgba(214, 85, 162, 0.50);
    }
}

.white-text {
    color: var(--white);
}
.block {
    padding-top: 55px;
}

.block-title {
    margin-bottom: 67px;
    font-size: 40px;
    font-style: normal;
    font-weight: 700;
    line-height: 120%; /* 48px */
    letter-spacing: 2px;
}
.block-title__white {
    color: var(--white);
}
.block-title__pink {
    color: var(--lightpink);
    font-weight: 900;
}

.video-thumbnail {
    display: block;
    width: 100%;
    margin: 0 auto;
    object-fit: cover;
}
.play {
    top: 50%;
    left: 50%;
    cursor: pointer;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -o-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);

    -webkit-transition: all 0.15s ease-in-out;
    -moz-transition: all 0.15s ease-in-out;
    -ms-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
}
.play:hover {
    -webkit-transform: translate(-50%, -50%) scale(1.1);
    -moz-transform: translate(-50%, -50%) scale(1.1);
    -ms-transform: translate(-50%, -50%) scale(1.1);
    -o-transform: translate(-50%, -50%) scale(1.1);
    transform: translate(-50%, -50%) scale(1.1);
}
.video-box iframe {
    width: 100%;
    height: 450px;
}

.btn {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    align-items: center;
    justify-content: center;

    min-width: 182px;
    max-width: 100%;
    height: 58px;
    padding-left: 24px;
    padding-right: 24px;

    font-family: var(--inter);
    color: var(--white);
    text-align: center;
    font-size: 16px;
    font-style: normal;
    font-weight: 300;
    line-height: 120%; /* 19.2px */
    letter-spacing: 0.8px;
    cursor: pointer;
    text-decoration: none;
    outline: none;
    border: none;

    background: #e1a372;
    background: -webkit-linear-gradient(131deg, #e1a372 0%, var(--pink) 100%);
    background: -moz-linear-gradient(131deg, #e1a372 0%, var(--pink) 100%);
    background: -o-linear-gradient(131deg, #e1a372 0%, var(--pink) 100%);
    background: linear-gradient(131deg, #e1a372 0%, var(--pink) 100%);

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

    -webkit-transition: all 0.2s ease-in-out;
    -moz-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
.btn.btn-border {
    position: relative;
    background: none;
    border: 2px solid; /* товщина бордеру */
    border-image: linear-gradient(92deg, #E1A372 -0.72%, var(--pink) 100.18%) 1;
    border-image-slice: 1;
}
.btn:hover {
    text-decoration: none;
}

.custom-indicators,
.carousel .indicators,
.slick-dots {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    gap: 11px;
    padding-top: 61px;
}

.carousel .indicators {
    display: none;
    padding-top: 0;
    bottom: 0;
}
.custom-indicators {
    padding-top: 104px;
}
.custom-indicators .custom-bullet,
.carousel .indicators .indicator-item,
.slick-dots {
    list-style: none;
}
.custom-indicators .custom-bullet,
.carousel .indicators .indicator-item {
    margin: 0;
}
.custom-indicators .custom-bullet,
.carousel .indicators .indicator-item,
.slick-dots button {
    width: 11px;
    height: 11px;
    background: #CECECE;
    opacity: 0.3;
    outline: none;
    font-size: 0;
    border: none;
    cursor: pointer;

    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;

    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;

    -webkit-transition: all 0.15s ease-in-out;
    -moz-transition: all 0.15s ease-in-out;
    -ms-transition: all 0.15s ease-in-out;
    -o-transition: all 0.15s ease-in-out;
    transition: all 0.15s ease-in-out;
}
.custom-indicators .custom-bullet.active,
.carousel .indicators .indicator-item.active,
.slick-dots .slick-active button {
    width: 32px;
    background: var(--pink);
    opacity: 1;

    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    border-radius: 10px;
}

/* ==================
 * Form
 * ================== */
.form-field {
    width: 214px;
    max-width: 100%;
    height: 49px;
    padding-left: 5px;
    font-family: var(--inter);
    color: var(--white);
    font-size: 12px;
    font-weight: 400;
    line-height: 130%; /* 15.6px */
    letter-spacing: 0.6px;
    outline: none;
    border: none;
    border-bottom: 1px solid #D9D9D9;
    background: none;
}
input::placeholder,
textarea::placeholder {
    font-family: var(--inter);
    color: var(--white);
    font-size: 12px;
    font-style: italic;
    font-weight: 200;
    line-height: 130%;
    letter-spacing: 0.6px;
    text-transform: capitalize;
}

/* Кросбраузерні префікси */
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    font-family: var(--inter);
    color: var(--white);
    font-size: 12px;
    font-style: italic;
    font-weight: 200;
    line-height: 130%;
    letter-spacing: 0.6px;
    text-transform: capitalize;
}

input:-moz-placeholder,
textarea:-moz-placeholder {
    font-family: var(--inter);
    color: var(--white);
    font-size: 12px;
    font-style: italic;
    font-weight: 200;
    line-height: 130%;
    letter-spacing: 0.6px;
    text-transform: capitalize;
    opacity: 1; /* Firefox */
}

input::-moz-placeholder,
textarea::-moz-placeholder {
    font-family: var(--inter);
    color: var(--white);
    font-size: 12px;
    font-style: italic;
    font-weight: 200;
    line-height: 130%;
    letter-spacing: 0.6px;
    text-transform: capitalize;
    opacity: 1; /* Firefox */
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    font-family: var(--inter);
    color: var(--white);
    font-size: 12px;
    font-style: italic;
    font-weight: 200;
    line-height: 130%;
    letter-spacing: 0.6px;
    text-transform: capitalize;
}
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output,
.wpcf7-not-valid-tip {
    display: none;
}

.wpcf7 form.sent .wpcf7-response-output {
    border: none;
    color: var(--white);
    text-align: right;
    font-size: 12px;
    padding: 10px 0 0;
    margin: 0;
}
.form-field {
    color: var(--error);
}
.form-field.wpcf7-not-valid.wpcf7-success-val,
.form-field.wpcf7-not-valid {
    color: #ff2424;
    background-image: url(../image/error.svg);
    background-repeat: no-repeat;
    background-position: right center;
}
.form-field.wpcf7-success-val {
    color: var(--white);
    background-image: url(../image/success.svg);
    background-repeat: no-repeat;
    background-position: right center;
}

.form-field.wpcf7-not-valid::placeholder {
    color: var(--error);
}
.form-field.wpcf7-not-valid::-webkit-input-placeholder {
    color: var(--error);
}
.form-field.wpcf7-not-valid:-moz-placeholder {
    color: var(--error);
}
.form-field.wpcf7-not-valid::-moz-placeholder {
    color: var(--error);
}
.form-field.wpcf7-not-valid:-ms-input-placeholder{
    color: var(--error);
}

.video-block__area {
    height: 726px;
    overflow: hidden;
}
.video-block__title {
    top: 41px;
    left: 0;
    padding: 18px 72px 25px 42px;
    background: rgba(0, 0, 0, 0.60);

    font-family: var(--montserat);
    font-size: 24px;
    font-style: normal;
    font-weight: 300;
    line-height: normal;

    -webkit-box-shadow: 0 0 100px 0 var(--black);
    -moz-box-shadow: 0 0 100px 0 var(--black);
    box-shadow: 0 0 100px 0 var(--black);
}
.video-block__title span {
    font-weight: 500;
}
.video-block__thumbnail {
    width: 100%;
    height: 726px;
    object-fit: cover;
    object-position: top center;
}
.video-block__area .video-box iframe {
    position: relative;
    z-index: 3;
    width: 100%;
    height: 726px;
}