/*!
Theme Name: Gekaton
Description: Gekaton WP Theme
Version: 1.01
Text Domain: gekaton
*/

@font-face {
    font-family: Montserrat;
    src: url('fonts/Montserrat-Regular.ttf') format('truetype');
    font-display: swap;
    font-weight: 300;
}
@font-face {
    font-family: Montserrat;
    src: url('fonts/Montserrat-Medium.ttf') format('truetype');
    font-display: swap;
    font-weight: 500;
}
@font-face {
    font-family: Montserrat;
    src: url('fonts/Montserrat-SemiBold.ttf') format('truetype');
    font-display: swap;
    font-weight: 700;
}

html,
body {
    font-family: Montserrat, sans-serif, Arial;
    font-weight: 300;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    /*background-image: url(images/pageBack.png); */
    background-color: #fff;
    /* background-size: auto;
    background-repeat: repeat; */
    color: #232323;
    position: relative;
}

body {
    padding-top: 110px;
}

html::-webkit-scrollbar,
body::-webkit-scrollbar {
    width: 0;
    height: 0;
}

::-webkit-scrollbar-track {
	background-color: #E6E6EF;
    border-radius: 5px;
}

::-webkit-scrollbar {
	width: 5px;
    height: 5px;
	background-color: #E6E6EF;
    pointer-events: none;
    border-radius: 5px;
}

::-webkit-scrollbar-thumb {
	background-color: #8323FF;
    border-radius: 5px;
}

* {
    outline: none;
    box-shadow: none;
    font-family: Montserrat, sans-serif, Arial;
    font-weight: 300;
}

img {
    max-width: 100%;
    max-height: 100%;
}

a {
    color: #8323FF;
    text-decoration: none;
    transition: .3s all;
}

a:hover {
    color: #7021d6;
}

.center {
    text-align: center;
}

.button {
    padding: 16px 23px 17px;
    border-radius: 12px;
    font-size: 18px;
    /* font-weight: 500; */
    cursor: pointer;
    transition: .3s all;
    color: #fff !important;
    overflow: hidden;
    position: relative;
    display: flex;
    align-items: center;
    background: #8323FF;
    border: 1px solid #8323FF;
}

.button:hover {
    background: #6c1cd4;
}

.button:after {
    content: '';
    background: url(images/arrow.svg);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    width: 10px;
    height: 10px;
    margin-left: 17px;
    flex-shrink: 0;
    filter: grayscale(10) brightness(10);
    /* transition: .3s all; */
}

.buttonBordered {
    background: rgba(130, 35, 255, 0);
    color: #8323FF!important;
}

.buttonBordered:hover {
    background: rgba(130, 35, 255, 255);
    color: #fff!important;
}

.buttonBordered:after {
    filter: grayscale(0) brightness(1);
}

.buttonBordered:hover:after {
    filter: grayscale(10) brightness(10);
}

.buttonTransparent {
    background: rgba(255, 255, 255, 0.24);
    backdrop-filter: blur(12.5px);
    border: 1px solid #fff;
    color: #fff!important;
}

.buttonTransparent:hover {
    background: rgba(255, 255, 255, 255);
    border: 1px solid #fff;
    color: #232323!important;
}

strong {
    font-weight: 500;
}

.hidden {
    display: none!important;
}

.container {
    max-width: calc(100% - 80px);
    margin: 0 auto;
    width: 1300px;
}

.blockTitleWrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.blockTitle {
    width: 100%;
    margin: 0 0 40px;
    font-size: 44px;
    line-height: 135%;
    font-weight: 500;
}

.blockTitle span {
    color: #8323FF;
    font-weight: 700;
}

.blockTitleWrap .blockTitle {
    max-width: 615px;
}

.blockDesc {
    margin: 0 0 40px;
    font-size: 24px;
    line-height: 135%;
}

.blockTitleWrap .blockDesc {
    max-width: 585px;
}

.pageTitleWrap {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.pageTitleWrap .button {
    margin-bottom: 40px;
    margin-left: 35px;
    flex-shrink: 0;
}

header {
    position: fixed;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    justify-content: space-between;
    z-index: 10;
    padding: 16px 32px;
    width: 1236px;
    background: #8323FF;
    -moz-box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.08);
    -webkit-box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.08);
    box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.08);
    /* backdrop-filter: blur(15px); */
    border-radius: 15px;
}

.headerContacts {
    display: flex;
    align-items: center;
    gap: 0 16px;
}

.headerContacts a {
    width: 24px;
    height: 24px;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    text-decoration: none!important;
    border: none!important;
}

.linkMail {
    background: url(images/email.svg);
}

.linkPhone {
    background: url(images/phone.svg);
}

.linkTG {
    background: url(images/tg.svg);
}

.linkWA {
    background: url(images/wa.svg);
}

header ul,
footer ul {
    display: flex;
    align-items: center;
    gap: 0 35px;
    margin: -5px 0 0;
    padding: 0;
}

header li,
footer li {
    display: block;
}

header li a,
footer li a {
    color: #fff;
    font-weight: 300;
    font-size: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, 0);
    transition: .3s all;
}

header a:hover,
header li.current-menu-item a,
footer a:hover {
    color: #fff;
    font-weight: 500;
    border-bottom: 1px solid #fff;
}

.logo {
    width: 55px;
    border: none!important;
}

.menuToggle {
    display: none;
}

.bannerMain {
    height: 570px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    position: relative;
}

.bannerMain:after {
    content: '';
    position: absolute;
    right: 0;
    bottom: -100px;
    width: 56%;
    height: 625px;
    background: url(images/bannerMain.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: right bottom;
    pointer-events: none;
}

.bannerContent {
    position: relative;
    z-index: 3;
    max-width: 480px;
}

.bannerContent h1 {
    margin: 0 0 25px;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 60px;
}

.bannerContent p {
    margin: 0;
    font-size: 24px;
    line-height: 145%;
    font-weight: 500;
}

.bannerButtons {
    display: flex;
    align-items: center;
    gap: 0 24px;
    margin-top: 45px;
}

.videoWrap {
    padding: 50px;
    gap: 40px;
    background: #F7F7F7;
    border-radius: 30px;
}

.videoBlock {
    border-radius: 25px;
    overflow: hidden;
    position: relative;
    height: 545px;
    width: 100%;
	display: block;
}

.videoBlock:before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #160034;
    opacity: .4;
    z-index: 2;
}

.videoBlock img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.play {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 80px;
    height: 80px;
    background: rgba(255, 255, 255, 0.42);
    backdrop-filter: blur(12.5px);
    transform: translate(-50%, -50%);
    border-radius: 50%;
    z-index: 3;
    cursor: pointer;
}

.play:before {
    content: '';
    width: 25px;
    height: 25px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: url(images/play.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    margin-left: 3px;
}

.advantagesWrap {
    margin-top: 70px;
    padding-top: 70px;
}

.advantagesList {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.advantageItem {
    background: #F7F7F7;
    border-radius: 20px;
    padding: 40px;
    width: calc(32.5% - 80px);
    margin-bottom: 10px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    overflow: hidden;
    min-height: 230px;
}

.advantageItem.advantageMedia {
    background-position: top center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    position: relative;
    width: calc(66.5% - 80px);
}

.advantageItem.advantageFull {
    width: 100%;
}

.advantageIcon {
    width: 80px;
    height: 80px;
    background-size: contain !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    margin-bottom: 25px;
}

.advantageItem p {
    margin: 0;
    font-size: 24px;
    font-weight: 700;
}

.advantageItem text {
    margin-top: 25px;
    font-size: 18px;
}

.advantageMedia p {
    color: #fff;
    max-width: 460px;
}

.advantageMedia text {
    color: #fff;
    max-width: 415px;
}

.advantageMedia .button {
    margin-top: 30px;
}

.advantageMedia .button:after {
    display: none;
}

.advantageMedia:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: #100026;
    opacity: .55;
}

.advantageMedia > * {
    position: relative;
    z-index: 2;
}

.faqWrap {
    margin-top: 60px;
    padding-top: 70px;
    display: flex;
    flex-wrap: wrap;
}

.faqList {
    width: 68%;
    margin-right: 6%;
}

.faqInfo {
    width: 26%;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.faqInfo img {
    width: 175px;
    margin-bottom: 40px;
}

.faqInfo h3 {
    font-size: 24px;
    margin: 0 0 20px;
    font-weight: 700;
}

.faqInfo p {
    font-size: 18px;
    text-align: center;
    margin: 0 0 25px;
}

.faqItem {
    margin-bottom: 48px;
    padding: 1px;
    background: rgba(247, 247, 247, 0);
    border-radius: 20px;
    transition: .3s all;
}

.faqItem.open {
    padding: 40px 35px 35px;
    background: #F7F7F7;
    margin-bottom: 50px;
}

.faqTitle {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    cursor: pointer;
    margin-bottom: 0;
    transition: .3s all;
}

.faqItem.open .faqTitle {
    margin-bottom: 30px;
}

.faqTitle h4 {
    margin: 0;
    font-size: 24px;
    font-weight: 600;
}

.faqTitle span {
    width: 36px;
    height: 36px;
    background: #E6E6E7;
    transition: .3s all;
    border-radius: 50%;
    position: relative;
    flex-shrink: 0;
}

.faqItem.open .faqTitle span,
.faqTitle:hover span {
    background: #E0C8FF;
}

.faqTitle span:before,
.faqTitle span:after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: #fff;
    width: 18px;
    height: 3px;
    border-radius: 10px;
}

.faqTitle span:after {
    width: 3px;
    height: 18px;
}

.faqItem.open .faqTitle span:after {
    display: none;
}

.faqItem p {
    font-size: 18px;
    line-height: 140%;
    margin: 0;
}

.grayBack {
    margin-top: 95px;
    background: #F7F7F7;
    padding: 65px 0;
}

.postItem {
    background: -moz-linear-gradient(244.93deg, #fff 0%, rgba(131, 35, 255, 0) 29.35%), linear-gradient(244.93deg, rgba(131, 35, 255, 0) 79.3%, #fff 100%);
    background: -webkit-linear-gradient(244.93deg, #fff 0%, rgba(131, 35, 255, 0) 29.35%), linear-gradient(244.93deg, rgba(131, 35, 255, 0) 79.3%, #fff 100%);
    background: linear-gradient(244.93deg, #fff 0%, rgba(131, 35, 255, 0) 29.35%), linear-gradient(244.93deg, rgba(131, 35, 255, 0) 79.3%, #fff 100%);
    /* padding: 1px; */
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    padding: 30px;
    transition: .3s all;
}

.postItem.slick-current {
    background: -moz-linear-gradient(244.93deg, #8323FF 0%, rgba(131, 35, 255, 0) 29.35%), linear-gradient(244.93deg, rgba(131, 35, 255, 0) 79.3%, #8323FF 100%);
    background: -webkit-linear-gradient(244.93deg, #8323FF 0%, rgba(131, 35, 255, 0) 29.35%), linear-gradient(244.93deg, rgba(131, 35, 255, 0) 79.3%, #8323FF 100%);
    background: linear-gradient(244.93deg, #8323FF 0%, rgba(131, 35, 255, 0) 29.35%), linear-gradient(244.93deg, rgba(131, 35, 255, 0) 79.3%, #8323FF 100%);
}

.postItem:before {
    content: '';
    position: absolute;
    top: 1px;
    left: 1px;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    background: #fff;
    border-radius: 19px;
}

.blogSlider .slick-list {
    margin-right: -312px;
    margin-left: -12px;
    width: calc(100% + 324px);
}

.blogSlider .postItem {
    margin: 0 12px;
}

.postItem > * {
    position: relative;
    z-index: 2;
}

.postItem > span {
    display: block;
    color: #999999;
    font-size: 14px;
    margin-bottom: 10px;
}

.postItemPreview {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
}

.postItemPreview h3 {
    color: #232323;
    font-size: 22px;
    font-weight: 700;
    width: 50%;
    margin: 0;
}

.postItemPreview img {
    width: 41%;
    border-radius: 10px;
    height: 108px;
    object-fit: cover;
    object-position: center;
}

.postItemExcerpt {
    display: block;
    color: #232323;
    font-size: 18px;
    margin: 18px 0 0;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -moz-box;
    -moz-box-orient: vertical;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    line-clamp: 2;
    box-orient: vertical;
}

.slick-dots {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 35px 0 20px;
    padding: 0;
}

.slick-dots li {
    display: block;
    margin: 0 3px;
    padding: 0;
}

.slick-dots button {
    border: none;
    padding: 0;
    margin: 0;
    font-size: 0;
    width: 8px;
    height: 8px;
    background: #D6D6D6;
    cursor: pointer;
    border-radius: 50%;
    transition: .3s all;
}

.slick-dots li:hover button,
.slick-dots li.slick-active button {
    background: #8323FF;
}

.blogSlider + .button {
    width: fit-content;
    margin: 0 auto;
    background: #fff;
}

.blogSlider + .button:hover {
    background: #6c1cd4;
}

.blogSlider + .button:after {
    display: none;
}

.formWrap {
    margin: 75px 0;
    background: #fff;
    border-radius: 20px;
    border: 1px solid #F1F1F1;
    -moz-box-shadow: 6px 6px 54px rgba(0, 0, 0, 0.05);
    -webkit-box-shadow: 6px 6px 54px rgba(0, 0, 0, 0.05);
    box-shadow: 6px 6px 54px rgba(0, 0, 0, 0.05);
    overflow: hidden;
}

.formBlock {
    background-position: top right !important;
    background-size: 37% 100% !important;
    background-repeat: no-repeat !important;
    padding-right: 37%;
}

.formBlock .blockTitle {
    width: auto;
    padding: 30px 40px 0;
}

.formBlock .blockDesc {
    padding: 0 40px;
    margin: -20px 0 40px;
}

.formBlock form {
    padding: 0 40px 40px;
    margin-top: -5px;
}

form label {
    display: block;
    background: #fff;
    padding: 2px;
    font-weight: 500;
    position: relative;
    z-index: 2;
    margin: 0 12px -10px;
    width: fit-content;
}

.wpcf7-form-control-wrap {
    display: block;
    margin-bottom: 12px;
}

form input,
form textarea {
    border-radius: 10px;
    border: 1px solid rgb(153 153 153 / 60%);
    font-size: 16px;
    padding: 16px 14px 14px;
    width: calc(100% - 30px);
    resize: none;
}

form input::placeholder,
form textarea::placeholder {
    color: #999;
}

form > text {
    display: block;
    color: #999;
    font-size: 12px;
    margin: 30px 0 0;
}

form > text a {
    color: #999;
    text-decoration: underline;
}

form .button {
    margin-top: 15px;
    width: fit-content;
}

form .button:after {
    display: none;
}

footer {
    background: #3F0091;
    margin-top: 140px;
}

footer .container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding-top: 35px;
}

footer .headerContacts a {
    width: 21px;
    height: 21px;
}

header .headerContacts a:not(.linkMail),
footer .headerContacts .linkPhone {
    width: auto;
    height: auto;
    font-size: 16px;
    background: none !important;
    color: #fff;
}

footer .container + .container {
    color: #fff;
    padding-bottom: 40px;
}

footer .container + .container * {
    margin: 0;
    color: #fff;
    border: none;
}

.pageTitle {
    margin: 0 0 40px;
    font-weight: 700;
    font-size: 60px;
    line-height: 100%;
    color: #232323;
}

.breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 30px 0 35px;
    padding: 0;
}

.breadcrumbs li {
    display: block;
}

.breadcrumbs a {
    display: flex;
    align-items: center;
    color: #999;
}

.breadcrumbs a:after {
    content: '/';
    margin: 0 17px;
}

.grayBackSecond {
    margin-top: 70px;
}

.historyBlock {
    display: flex;
    align-items: flex-start;
}

.historyBlock img {
    width: 45.5%;
    margin-right: 3%;
    border-radius: 15px;
}

.historyText {
    width: 51.5%;
}

.historyText p {
    font-size: 18px;
    line-height: 135%;
}

.historyText p:first-child {
    margin-top: 0;
}

.historyText p:last-child {
    margin-bottom: 0;
}

.blogList {
    display: flex;
    flex-wrap: wrap;
}

.blogList .postItem {
    background: #F1F1F1;
    width: calc(32% - 60px);
    margin-right: 2%;
    margin-bottom: 25px;
    -moz-box-shadow: 6px 6px 54px rgba(0, 0, 0, 0);
    -webkit-box-shadow: 6px 6px 54px rgba(0, 0, 0, 0);
    box-shadow: 6px 6px 54px rgba(0, 0, 0, 0);
    transition: .3s all;
}

.blogList .postItem:hover {
    -moz-box-shadow: 6px 6px 54px rgba(0, 0, 0, 0.05);
    -webkit-box-shadow: 6px 6px 54px rgba(0, 0, 0, 0.05);
    box-shadow: 6px 6px 54px rgba(0, 0, 0, 0.05);
}

.blogList .postItem:nth-child(3n) {
    margin-right: 0%;
}

.blogList .postItemPreview img {
    width: 30%;
    border-radius: 10px;
}

.blogList .postItemPreview h3 {
    width: 60%;
}

.blogList .postItemExcerpt {
    overflow: hidden;
    text-overflow: ellipsis;
    display: -moz-box;
    -moz-box-orient: vertical;
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    line-clamp: 4;
    box-orient: vertical;
}

.loadMoreWrap {
    display: flex;
    justify-content: center;
    margin: 50px 0 0;
}

.loadMoreButton:after {
    transform: rotate(135deg);
    width: 13px;
    height: 13px;
}

.grayBack .faqWrap {
    margin: 0;
    padding: 0;
}

.grayBack .faqItem.open {
    background: #fff;
}

.worksList {
    display: flex;
    flex-wrap: wrap;
}

.workItem {
    width: 32%;
    margin-right: 2%;
    margin-bottom: 30px;
    -moz-box-shadow: 6px 6px 54px rgba(0, 0, 0, 0);
    -webkit-box-shadow: 6px 6px 54px rgba(0, 0, 0, 0);
    box-shadow: 6px 6px 54px rgba(0, 0, 0, 0);
    transition: .3s all;
    border-radius: 20px;
    cursor: pointer;
}

.workItem:hover {
    -moz-box-shadow: 6px 6px 54px rgba(0, 0, 0, 0.05);
    -webkit-box-shadow: 6px 6px 54px rgba(0, 0, 0, 0.05);
    box-shadow: 6px 6px 54px rgba(0, 0, 0, 0.05);
}

.workItem:nth-child(3n) {
    margin-right: 0;
}

.workPreview {
    background: rgba(255, 255, 255, 0);
    border: 1px solid rgba(241, 241, 241, 0);
    border-radius: 0 0 20px 20px;
    padding: 20px 1px;
    margin-top: -5px;
    transition: .3s all;
}

.workItem:hover .workPreview {
    background: #fff;
    border: 1px solid #F1F1F1;
    padding: 20px 20px;
    transition: .3s all;
}

.wpText h3 {
    margin: 0 0 12px;
    font-weight: 700;
    font-size: 24px;
}

.wpText p {
    margin: 0 0 30px;
    font-size: 18px;
    line-height: 135%;
    min-height: 73px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -moz-box;
    -moz-box-orient: vertical;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    line-clamp: 3;
    box-orient: vertical;
}

.workPreview .button {
    width: fit-content;
    opacity: 0;
    transition: .3s all;
}

.workItem:hover .workPreview .button {
    opacity: 1;
}

.workPreview .buttonBordered:after {
    display: none;
}

.workItem img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    object-position: center;
    border-radius: 20px;
    transition: .3s all;
}

.workItem:hover img {
    border-radius: 20px 20px 0 0;
}

.wpText > span {
    display: block;
    font-size: 24px;
    font-weight: 700;
    color: #8323FF;
    margin: -25px 0 50px;
    transition: .3s all;
}

.workItem:hover .wpText > span {
    margin: 0 0 25px;
}

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

.marquee .mrItem:not(:last-child) {
    margin-right: 24px;
}

.mrItem img {
    height: 310px;
    border-radius: 20px;
}

.marquee + .marquee {
    margin-top: 24px;
}

.contactsData {
    margin-top: 55px;
    background: #F7F7F7;
    padding: 25px 30px;
    border-radius: 20px;
    width: calc(49.5% - 60px);
    margin-right: 2.5%;
}

.contactsData > a {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
    font-size: 18px;
    color: #232323;
    font-weight: 500;
}

.contactsData > a:before {
    content: '';
    width: 24px;
    height: 24px;
    background-position: center !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    margin-right: 12px;
}

.linkPhoneP:before {
    background: url(images/phoneP.svg);
}
.linkMailP:before {
    background: url(images/emailP.svg);
}
.linkMapP:before {
    background: url(images/mapP.svg);
}

.contactsData > p {
    margin: 35px 0 0;
    font-size: 18px;
    font-weight: 500;
}

.messLinks {
    margin-top: 35px;
    display: flex;
    gap: 0 15px;
}

.buttonTG,
.buttonWA {
    color: #fff !important;
    background: #4291FF !important;
    border: 1px solid #4291FF !important;
    width: calc(49% - 44px);
    padding: 19px 21px 19px;
    opacity: 1;
}

.buttonTG:hover,
.buttonWA:hover {
    opacity: .85;
}

.buttonTG:after {
    background: url(images/tg.svg);
    width: 20px;
    height: 17px;
    margin-left: 12px;
}

.buttonWA {
    background: #85C22F !important;
    border: 1px solid #85C22F !important;
}

.buttonWA:after {
    background: url(images/wa.svg);
    width: 20px;
    height: 20px;
    margin-left: 12px;
}

.postData {
    display: flex;
    flex-wrap: wrap;
    gap: 15px 45px;
}

.postData span {
    display: flex;
    align-items: center;
    margin-top: 15px;
    font-size: 18px;
}

.dateItem:before {
    content: '';
    width: 22px;
    height: 22px;
    background: url(images/calendar.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 10px;
}

.viewsItem:before {
    content: '';
    width: 24px;
    height: 24px;
    background: url(images/eye.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    margin-right: 10px;
}

.imageBlockFull {
    margin: 25px 0;
}

.imageBlockFull img {
    width: 100%;
    border-radius: 25px;
}

.postContent p {
    font-size: 18px;
    line-height: 160%;
    margin: 30px 0;
}

.imageBlockTriple {
    display: flex;
    flex-wrap: wrap;
}

.imageBlockTriple a {
    width: 32%;
    margin-right: 2%;
}

.imageBlockTriple a:nth-child(3n) {
    margin-right: 0;
}

.imageBlockTriple img {
    width: 100%;
    height: 255px;
    object-fit: cover;
    object-position: center;
    border-radius: 25px;
}

.imageBlockDouble {
    display: flex;
    flex-wrap: wrap;
}

.imageBlockDouble a {
    width: 49%;
    margin-right: 2%;
}

.imageBlockDouble a:nth-child(2n) {
    margin-right: 0;
}

.imageBlockDouble img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    object-position: center;
    border-radius: 25px;
}

.workTitle {
    font-size: 28px;
    padding: 15px 0 0;
    margin-bottom: 15px;
}

.workData {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 30px;
}

.dataPrice {
    color: #8323FF;
    font-size: 40px;
    font-weight: 700;
}

.productWrap {
    padding-top: 10px;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    margin-bottom: -45px;
}

.productSlider {
    width: 49%;
    margin-right: 2.5%;
}

.productData {
    width: 48.5%;
    margin-top: -10px;
}

.prodChars h4,
.prodDesc h4 {
    font-size: 24px;
    font-weight: 700;
    margin: 0 0 20px;
}

.prodChars ul {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: 0;
    padding: 0;
}

.prodChars li {
    background: rgb(224 200 255 / 30%);
    display: block;
    padding: 16px 21px 15px;
    font-size: 19px;
    border-radius: 50px;
}

.prodDesc {
    margin-top: 30px;
}

.prodDesc p {
    font-size: 18px;
    line-height: 160%;
}

.productSlider img {
    height: 500px;
    width: 100%;
    object-fit: cover;
    object-position: center;
    border-radius: 25px;
}

.productSlider .slick-arrow {
    background: #fff;
    position: absolute;
    top: 50%;
    left: 20px;
    border: none;
    padding: 0;
    font-size: 0;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    cursor: pointer;
    transform: translateY(-50%);
    transition: .3s all;
    z-index: 2;
    margin-top: -30px;
    opacity: .8;
}

.productSlider .slick-next {
    left: auto;
    right: 20px;
}

.productSlider .slick-arrow:hover {
    opacity: 1;
}

.productSlider .slick-dots {
    margin: 10px 0 30px;
}

.productSlider .slick-arrow:before,
.csButton:before {
    content: '';
    width: 8px;
    height: 15px;
    background: url(images/chevron.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.productSlider .slick-next:before,
.csButton.csNext:before {
    transform: translate(-50%, -50%) rotate(180deg);
}

.blogSliderNav {
    display: flex;
    align-items: center;
    gap: 0 20px;
    margin-bottom: 40px;
}

.csButton {
    width: 48px;
    height: 48px;
    border: 1px solid #8323FF;
    border-radius: 50%;
    cursor: pointer;
    position: relative;
    transition: .3s all;
    opacity: 1;
}

.csButton:hover {
    opacity: .75;
}

.menuToggle {
    display: none;
    width: 35px;
    height: 35px;
    background: url(images/menu.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
}

#historyMore {
    display: none;
}

.contactsWrap {
    display: flex;
    flex-wrap: wrap;
}

#map {
    width: 48%;
    height: 305px;
    margin-top: 60px;
    border-radius: 20px;
    overflow: hidden;
}

.modal {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: rgba(47, 48, 64, 0.72);
    backdrop-filter: blur(11.7px);
    width: 100%;
    height: 100%;
    opacity: 0;
    pointer-events: none;
    transition: .3s all;
}

.modal.open {
    opacity: 1;
    pointer-events: auto;
}

.modalWrap {
    background: #fff;
    padding: 40px 50px;
    width: 610px;
    border-radius: 20px;
    position: relative;
    z-index: 2;
}

.modalClose {
    position: absolute;
    top: 25px;
    right: 25px;
    width: 20px;
    height: 20px;
    color: #474766;
    cursor: pointer;
    font-size: 45px;
    font-weight: 100;
    line-height: 20px;
    text-align: center;
}

.modal .blockTitle {
    font-size: 34px;
    margin: 0 0 25px;
}

.modalBack {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.modal .formBlock {
    background: none !important;
    padding: 0;
}

.modal .formBlock form {
    padding: 0;
}

.menuMobileWrap {
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 25;
    opacity: 0;
    pointer-events: none;
    transition: .3s all;
}

.menuMobileWrap.open {
    opacity: 1;
    pointer-events: auto;
}

.mmHeader {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 25px;
}

.mmHeader .menuToggle {
    background: none !important;
    font-size: 54px;
    text-align: center;
    line-height: 38px;
}

.menuMobileWrap ul {
    margin: 25px 0 10px;
    padding: 15px 0;
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #F1F1F1;
    border-bottom: 1px solid #F1F1F1;
}

.menuMobileWrap li {
    width: 50%;
    padding: 0;
    margin: 0 0 15px;
    display: block;
}

.menuMobileWrap li a {
    color: #232323;
}

.menuMobileWrap .button {
    width: fit-content;
    margin: 25px 0;
}

.menuMobileWrap .container > a:not(.button) {
    color: #232323;
    display: flex;
    align-items: center;
    font-weight: 500;
    margin-bottom: 15px;
}

.menuMobileWrap .container > a:not(.button):before {
    content: '';
    width: 15px;
    height: 15px;
    margin-right: 10px;
    background-position: center !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
}

.linkWAB {
    color: #85C22F;
}
.linkTGB {
    color: #4291FF;
}

.linkPhoneB:before {
    background: url(images/phoneB.svg);
}
.linkMailB:before {
    background: url(images/emailB.svg);
}
.linkWAB:before {
    background: url(images/waB.svg);
}
.linkTGB:before {
    background: url(images/tgB.svg);
}

.productsMobile {
    margin-top: 60px;
    display: none;
}

.productsMobile .blockTitleWrap .button:after {
    display: none;
}

.wp-block-image img {
    height: auto !important;
}

.wp-block-image {
    margin: 0;
}

.hidden-fields-container,
.wpcf7-submit, .wpcf7-not-valid-tip,
.screen-reader-response,
.wpcf7-response-output {
    display: none;
}

form input.wpcf7-not-valid,
form textarea.wpcf7-not-valid {
    border: 1px solid rgb(211 0 0 / 60%);
}

.formBlock form.sent > * {
    display: none;
}

.formBlock form.sent > .wpcf7-response-output {
    display: block;
    font-size: 18px;
    color: #8323ff;
}

.cookie__shadow {
    position: fixed;
    z-index: 9998;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: #000;
    opacity: .6;
    /*display: none;*/
}

.cookie__block {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 24px;
    padding: 32px;
    z-index: 9999;
    display: none;
}

.cookie__container {
    width: 100%;
    max-width: 1600px;
    padding: 32px;
    background: #fff;
    margin: 0 auto;
    border-radius: 10px;
    -webkit-box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.1);
    -moz-box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.1);
}

.cookie__row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    column-gap: 32px;
    row-gap: 20px;
}

.cookie__text {
    font-size: 14px;
}

.cookie__text p {
    margin: 0;
}

.cookie__buttons {
    display: flex;
    align-items: center;
    column-gap: 20px;
    row-gap: 20px;
    flex-shrink: 0;
}

.cookie__buttons .button:after {
	display: none;
}

.cookie__btn.button_order {
    position: initial;
}

.mainButtons {
    display: flex;
    flex-shrink: 0;
    gap: 0 10px;
    margin: 0;
}

.mainButtons .button {
    font-size: 15px;
    margin: 0 0 40px;
    justify-content: center;
}

.mainButtons .button:after {
    display: none;
}

.ptwCenter {
    align-items: center;
    gap: 30px;
}

.ptwText {
    width: 100%;
}

.advantageIcon.textIcon {
    background: #fff;
    color: #8323FF;
    font-size: 25px;
    font-weight: 700;
    text-align: center;
    border-radius: 50%;
    line-height: 80px;
}

@media (max-width: 991px) {
    .cookie__row {
        flex-direction: column;
    }
}

@media (max-width: 575px) {
    .cookie__buttons {
        flex-direction: column;
    }
    
    .cookie__buttons .btn {
        display: block;
        width: 100%;
    }
    
    .cookie__btn--all {
        order: 1;
    }
    
    .cookie__btn--required {
        order: 2;
    }
}
