@font-face {
    font-family: 'Fixel Text';
    src: url('../fonts/FixelText-Regular.eot');
    src: url('../fonts/FixelText-Regular.eot?#iefix') format('embedded-opentype'),
        url('../fonts/FixelText-Regular.woff2') format('woff2'),
        url('../fonts/FixelText-Regular.woff') format('woff'),
        url('../fonts/FixelText-Regular.ttf') format('truetype'),
        url('../fonts/FixelText-Regular.svg#FixelText-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Fixel Text';
    src: url('../fonts/FixelText-Medium.eot');
    src: url('../fonts/FixelText-Medium.eot?#iefix') format('embedded-opentype'),
        url('../fonts/FixelText-Medium.woff2') format('woff2'),
        url('../fonts/FixelText-Medium.woff') format('woff'),
        url('../fonts/FixelText-Medium.ttf') format('truetype'),
        url('../fonts/FixelText-Medium.svg#FixelText-Medium') format('svg');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'KyivType Sans';
	src: url('../fonts/kyivtype/KyivTypeSans-Regular2.eot');
	src: url('../fonts/kyivtype/KyivTypeSans-Regular2.eot?#iefix') format('embedded-opentype'),
		url('../fonts/kyivtype/KyivTypeSans-Regular2.woff2') format('woff2'),
		url('../fonts/kyivtype/KyivTypeSans-Regular2.woff') format('woff'),
		url('../fonts/kyivtype/KyivTypeSans-Regular2.ttf') format('truetype'),
		url('../fonts/kyivtype/KyivTypeSans-Regular2.svg#KyivTypeSans-Regular2') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

:root {
	--container: 1230px;
	--title-font: 'KyivType Sans';
	--text-font: 'Fixel Text';

	--white: #fff;
	--beige: #D4C1BC;
	--dark: #2C2139;
	--green: #4D9303;
	--darkgrey: #4E4E4E;
	--violet: #685097;
	--black: #000;
	--red: #C52727;
	--light-bg: #F6F6FB;
	--bg: #F8F8FC;

    --landing-grey: #E8E8E8;
    --landing-dark: #13121F;
    --landing-lightviolet: #685097;
    --landing-lightgrey: #F8F8F8;
	
	--all-in: all 0.25s ease-in;
	--all-out: all 0.25s ease-out;
	--all-inout: all 0.25s ease-in-out;
}

html, body {
	padding: 0px;
	margin: 0px;
	line-height: 1.8;
	position: relative;
	font-family: var(--text-font);
	font-size: 18px;
	font-weight: 400;
}

body {
	color: var(--landing-dark);
}

*, ::before, ::after {
	box-sizing: border-box;
}

input, textarea, select, button, option {
	outline: none;
	font-family: var(--text-font);
	font-weight: 400;
	font-size: 20px;
}

textarea {
	resize: none;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6, .title-text {
	padding: 0px;
	margin: 0px;
	position: relative;
	z-index: 2;
	font-weight: 400;
	font-family: var(--title-font);
	font-feature-settings: "pnum" on,"lnum" on;
	color: var(--landing-dark);
}

h1, .h1 {
	font-size: 48px;
}

h2, .h2 {
	font-size: 48px;
}

h3, .h3 {
	font-size: 28px;
}

h4, .h4 {
	font-size: 24px;
}

h5, .h5 {
	font-size: 22px;
}

h6, .h6 {
	font-size: 20px;
}

p {
	margin: 0px;
}

ul, ol {
	margin: 0px;
	
}

img {
	max-width: 100%;
	height: auto;
}

p {
	line-height: 1.8;
	font-weight: 400;	
}

p a, ul a, ol a {
	color: var(--green);
}

p a:hover, ul a:hover, ol a:hover {
	color: var(--violet);
}

.white p a:hover, .white ul a:hover, .white ol a:hover {
	color: var(--white);
}

blockquote {
	
}

blockquote a {
	
}

.medium {
	font-weight: 500;
}

.uppercase {
	text-transform: uppercase;
}

.flex-col {
	display: flex;
	flex-direction: column;
}

.flex-wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.gap-4 {
	gap: 4px;
}

.gap-8 {
	gap: 8px;
}

.gap-12 {
	gap: 12px;
}

.gap-16 {
	gap: 16px;
}

.gap-18 {
	gap: 18px;
}

.gap-20 {
	gap: 20px;
}

.gap-24 {
	gap: 24px;
}

.gap-32 {
	gap: 32px;
}

.gap-36 {
	gap: 36px;
}

.gap-40 {
	gap: 40px;
}

.gap-60 {
	gap: 60px;
}

.gap-80 {
	gap: 80px;
}

.grid {
	display: grid;
}

.grid-2 {
	grid-template-columns: 1fr 1fr;
}

.grid-3 {
	grid-template-columns: repeat(3, 1fr);
}

.grid-4 {
	grid-template-columns: repeat(4, 1fr);
}

.grid-5 {
	grid-template-columns: repeat(5, 1fr);
}

.grid-6 {
	grid-template-columns: repeat(6, 1fr);
}

.container {
	width: 100%;
	max-width: var(--container);
	margin-left: auto;
	margin-right: auto;
	position: relative;
	box-sizing: border-box;
	padding-left: 15px;
	padding-right: 15px;
}

.full-container {
	width: 100%;
	max-width: 100%;
	position: relative;
	box-sizing: border-box;
	padding-left: 0;
	padding-right: 0;
}

.img-cover, .img-contain {
	overflow: hidden;
}

.img-cover img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	vertical-align: top;
}

.img-contain img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	vertical-align: top;
}

a, button, input[type="submit"], input[type="button"] {
	transition: var(--all-out);
	outline: none;
	cursor: pointer;
}

a:hover, button:hover, input[type="submit"]:hover, input[type="button"]:hover {
	transition: var(--all-in);
}

.clear {
	width: 0px;
	height: 0px;
	float: none !important;
	clear: both !important;
}

.clearfix:after {
	content: '';
	display: block;
	clear: both;
}

.mobile {
	display: none !important;
}

.but a, .but button, .but input {
	transition: var(--all-inout);
}

.but a:hover, .but button:hover, .but input:hover {
	
}


/*--------*/

/**/

body {
    padding: 24px;
    padding-top: 148px;
    background: var(--landing-grey);
}

header {
    border-radius: 50px;
    border: 1px solid rgba(19, 18, 31, 0.10);
    background: var(--white);
    box-shadow: 0 4px 15px 0 rgba(19, 18, 31, 0.15);
    position: fixed;
    z-index: 5;
    top: 24px;
    left: 24px;
    width: calc(100% - 48px);
    padding: 20px 32px;
}

header .full-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

header .logo img {
    width: 174px;
    height: 36px;   
    vertical-align: top;
}

header .info {
    display: flex;
    align-items: center;
    gap: 20px;
}

header .info > div {
    padding-left: 38px;
    width: fit-content;
    max-width: 330px;
    position: relative;
    font-size: 15px;
    line-height: 1.1;
}

header .info > div span {
    display: block;
    color: var(--landing-lightviolet);
}

header .info > div::before {
    width: 30px;
    height: 30px;
    display: flex;
    content: "";
    background: var(--landing-dark);
    position: absolute;
    left: 0;
    top: calc(50% - 15px);
}

header .info .addr::before {
    mask: url('../images/Map-Point-Favourite.svg') left center / 30px auto no-repeat;
}

header .info .worktime::before {
    mask: url('../images/calendar-tick.svg') left center / 30px auto no-repeat;
}

header .controls {
    display: flex;
    align-items: center;
    gap: 6px;
}
header .controls .social {
    display: flex;
    gap: 6px;
}

header .controls .social a {
    background: var(--landing-lightgrey);
    stroke-width: 1px solid rgba(78, 78, 78, 0.05);
    filter: drop-shadow(2px 4px 30px rgba(0, 0, 0, 0.25));
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50%;
    width: 60px;
    height: 60px;
    transition: var(--all-inout);
}

header .controls .social a:hover {
    background: var(--landing-lightviolet);
}

header .controls .but a,
section.landing-first .but a {
    padding: 0 32px;
    display: flex;
    align-items: center;
    gap: 12px;
    height: 60px;
    border-radius: 30px;
    background: linear-gradient(271deg, #4D2973 -10.57%, #685097 119.41%);
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    color: var(--white);
}

section.landing-first .but a {
	width: fit-content;
}

header .controls .but a::before,
section.landing-first .but a::before {
    display: flex;
    width: 24px;
    height: 24px;
    background: url('../images/Frame48096201_.svg') center center no-repeat;
    content: "";
}

header .controls .but a:hover {}

header .controls .lang {
	padding: 0;
	list-style: none;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 4px;
	margin-right: 8px;
}

header .controls .lang > li:not(:first-child)::before {
	content: "|";
	font-size: 15px;
}

header .controls .lang > li:not(:first-child) {
	display: flex;
	align-items: center;
	gap: 4px;
}

header .controls .lang > li {
	line-height: 24px;
}

header .controls .lang > li a {
	font-size: 15px;
	text-decoration: none;
	color: var(--violet);
	line-height: 24px;
	display: flex;
}

header .controls .lang > li a:hover,
header .controls .lang > li.current-lang a {
	color: var(--green);
}

header .menu ul {
	display: flex;
	align-items: center;
	gap: 24px;
	padding: 0;
	list-style: none;
}

header .menu ul a {
	text-decoration: none;
	font-size: 16px;
	font-weight: 400;
	color: var(--violet);
}

header .menu ul a:hover {
	color: var(--green);
}

/*--------*/

/**/

section.white {
	background: var(--white);
}

section.violet {
	background: linear-gradient(271deg, #4D2973 -10.57%, #685097 119.41%);
}

section.lightgrey {
	background: var(--landing-lightgrey);
}

section.border {
	border-radius: 50px;
}

section.mt-24 {
	margin-top: 24px;
}

section.border-grey {
	border: 1px solid rgba(78, 78, 78, 0.05);
}

/*--------*/

/**/

.landing-first {
	padding: 80px;
}

.landing-first .box {
	display: flex;
	justify-content: space-between;
	gap: 120px;
}

.landing-first .box .info {
	width: 100%;
	max-width: 604px;
	display: flex;
	flex-direction: column;
	gap: 32px;
	flex-shrink: 0;
	padding-top: 24px;
}

.landing-first .box .info h1 {
	font-family: var(--text-font);
	font-size: 36px;
	font-weight: 300;
	line-height: 120%;
}

.landing-first .box .info h1 strong, h2 strong {
	font-weight: 600;
}

.landing-first .box .info .blocks {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}

.landing-first .box .info .blocks .item {
	border-radius: 20px;
	background: var(--landing-lightgrey);
	padding: 32px;
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 118px;
}

.landing-first .box .info .blocks .item .icon {
	width: 40px;
	height: 40px;
	flex-shrink: 0;
	display: flex;
	justify-content: center;
	align-items: center;
}

.landing-first .box .info .blocks .item p {
	font-size: 16px;
	line-height: normal;
}

.landing-first .box .images {
	width: 100%;
	max-width: 506px;
}

.landing-first .box .images .before {
	width: 300px;
	height: 200px;
	border-radius: 20px;
	position: relative;
	z-index: 2;
	margin-left: auto;
	border: 1px solid var(--white);
}

.landing-first .box .images .after {
	width: 400px;
	height: 250px;
	border-radius: 20px;
	position: relative;
	z-index: 1;
	margin-top: -60px;
}

.landing-first .box .images .before span,
.landing-first .box .images .after span {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 16px;
	z-index: 2;
	color: var(--white);
	text-align: center;
	font-size: 20px;
	font-weight: 500;
	line-height: 100%;
	text-transform: uppercase;
}

/*--------*/

/**/

.langing-gallery {
	padding: 50px 80px;
}

.langing-gallery .slider .item {
	margin: 0 6px;
}

.langing-gallery .slider {
	margin: 0 -6px;
}

.langing-gallery .slider .item .b,
.langing-gallery .slider .item .a {
	border-radius: 20px;
	width: 100%;
	height: 95px;
}

.langing-gallery .slider .item .a {
	margin-top: 4px;
}

.langing-gallery .slider {
	position: relative;
}

.langing-gallery .slider .slick-arrow {
	width: 60px;
	height: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 0;
	border: 0;
	padding: 0;
	background: var(--landing-lightgrey);
	filter: drop-shadow(2px 4px 30px rgba(0, 0, 0, 0.25));
	transition: var(--all-inout);
	z-index: 2;
	position: absolute;
	top: calc(50% - 30px);
	left: -24px;
	border-radius: 50%;
}

.langing-gallery .slider .slick-arrow.slick-next {
	left: initial;
	right: -24px;
}

.langing-gallery .slider .slick-arrow:hover {
	background: var(--landing-lightviolet);
}

.langing-gallery .slider .slick-arrow::before {
	mask: url('../images/landing/ep_arrow-up-bold.svg') center center no-repeat;
	background: var(--landing-lightviolet);
	content: "";
	width: 40px;
	height: 40px;
	display: flex;
	transition: background 0.25s ease-in-out;
}

.langing-gallery .slider .slick-arrow.slick-next::before {
	rotate: 180deg;
}

.langing-gallery .slider .slick-arrow:hover::before {
	background: var(--white);
}

/*--------*/

/**/

.langing-price-form {
	padding: 40px 80px;
}

.langing-price-form .box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 245px;
	position: relative;
}

.langing-price-form .box .form {
	width: 100%;
	max-width: 310px;
	flex-shrink: 0;
}

.langing-price-form .box .form form {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.langing-price-form .box .form form .form-group.but {
	margin-top: 20px;
}

.form form input[type="text"],
.form form input[type="tel"],
.form form input[type="email"],
.form form select {
	width: 100%;
	height: 42px;
	border-radius: 12px;
	border: 1px solid var(--white);
	background: rgba(255, 255, 255, 0.50);
	padding: 0 32px;
	font-size: 14px;
	transition: var(--all-inout);
	color: var(--white) !important;
}

.form form textarea {
	width: 100%;
	height: 100px;
	border-radius: 12px;
	border: 1px solid var(--white);
	background: rgba(255, 255, 255, 0.50);
	padding: 24px 32px;
	font-size: 14px;
	transition: var(--all-inout);
}

.form form input[type="text"].wpcf7-not-valid,
.form form input[type="tel"].wpcf7-not-valid,
.form form input[type="email"].wpcf7-not-valid {
	border-color: red;
}

.form form .but input[type="submit"] {
	width: 100%;
	height: 56px;
	border-radius: 28px;
	padding: 0 32px 0 54px;
	color: var(--landing-lightviolet);
	font-size: 16px;
	font-weight: 600;
	background: url('../images/landing/Frame48096201.svg') 26px 50% no-repeat, var(--white);
	border: 1px solid var(--white);
}

.form form .but input[type="submit"]:hover {
	background: url('../images/landing/Frame48096201_.svg') 26px 50% no-repeat, var(--landing-lightviolet);
	color: var(--white);
}

.langing-price-form .box .image {
	width: 100%;
	max-width: 208px;
  	position: absolute;
  	right: 328px;
	top: 50%;
	transform: translateY(-50%);
}

.langing-price-form .box .image img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center center;
}

.langing-price-form .box .prices {
	width: 100%;
	position: relative;
	padding: 20px 0;
}

.langing-price-form .box .prices .date {
	height: 51px;
	border-radius: 50px;
	background: var(--landing-lightgrey);
	box-shadow: 2px 4px 30px 0 rgba(0, 0, 0, 0.25);
	padding: 0 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 16px;
	font-weight: 500;
	position: absolute;
	left: 0;
	top: -54px;
}

.langing-price-form .box .prices .list .row {
	padding: 16px 0;
	border-bottom: 1px solid rgba(248, 248, 248, 0.20);
	display: flex;
	justify-content: space-between;
}

.langing-price-form .box .prices .list .row:first-child {
	padding-top: 0;
}

.langing-price-form .box .prices .list .row:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.langing-price-form .box .prices .list .row div,
.langing-price-form .box .prices .list .row span {
	color: var(--white);
	font-size: 16px;
	font-weight: 500;
	line-height: 150%;
}

.langing-price-form .box .prices .list .row div.prices-row {
	display: flex;
	justify-content: flex-end;
	align-items: baseline;
	gap: 24px;
	width: fit-content;
}

.langing-price-form .box .prices .list .row div.prices-row .old-price {
	font-size: 14px;
	opacity: 0.6;
	text-decoration: line-through;
}

/*--------*/

/**/

.langing-about-block {
	padding: 80px;
}

.langing-about-block .box {
	display: flex;
	flex-direction: column;
	gap: 80px;
}

section h2 {
	font-family: var(--text-font);
	font-size: 36px;
	font-weight: 300;
	line-height: 120%;
}

section h2 strong {
	font-weight: 600;
}

.langing-about-block .box .about {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.langing-about-block .box .about h2 {
	max-width: 720px;
}

.langing-about-block .box .about .cols {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px;
}

.langing-about-block .box .about .cols .col .text {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 24px;
	background: var(--landing-lightgrey);
	border-radius: 20px;
}

.langing-about-block .box .about .cols .col .text > * {
	font-size: 16px;
	line-height: 150%;
}

.langing-about-block .box .about .cols .col .text > * strong {
	font-weight: 600;
	color: var(--landing-lightviolet);
}

.langing-about-block .box .about .cols .col .img {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 400px;
	padding: 0 24px;
}

.langing-about-block .box .about .cols .col .img img {
	max-height: 100%;
	width: auto;
}

.langing-about-block .box .team {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.langing-about-block .box .team .title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.langing-about-block .box .team .title .text {
	color: rgba(19, 18, 31, 0.80);
	font-size: 16px;
}

.langing-about-block .box .team .title .text strong,
.langing-about-block .box .team .title .text span {
	color: var(--landing-lightviolet);
	font-size: 24px;
	font-weight: 700;
}

.langing-about-block .box .team .list .item .photo {
	width: 100%;
	height: 330px;
}

.langing-about-block .box .team .list .item .photo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: bottom center;
}

.langing-about-block .box .team .list .item .info {
	border-radius: 20px;
	background: var(--landing-lightgrey);
	padding: 24px 16px;
}

.langing-about-block .box .team .list .item .info .name {
	text-align: center;
	font-size: 20px;
	font-weight: 600;
	line-height: normal;
}

.langing-about-block .box .team .list .item .info .position {
	text-align: center;
	font-size: 16px;
	line-height: normal;
}

.langing-about-block .box .team .list .item .info .experience {
	color: var(--landing-lightviolet);
	font-size: 16px;
	font-weight: 500;
	line-height: normal;
	display: flex;
	align-items: center;
	gap: 4px;
	justify-content: center;
	margin-top: 7px;
}

.langing-about-block .box .team .list .item .info .experience::before {
	display: flex;
	content: "";
	width: 20px;
	height: 20px;
	background: url('../images/landing/brifecase-timer.svg') center center no-repeat;
}


/*--------*/

/**/

.landing-reviews {
	padding: 80px;
}

.landing-reviews h2 + .box {
	margin-top: 32px;
}

.landing-reviews .box {
	display: flex;
	justify-content: space-between;
	gap: 115px;
}

.landing-reviews .box .map-info {
	width: 100%;
	max-width: 405px;
	position: relative;
}

.landing-reviews .box .map-info img {
	vertical-align: top;
}

.landing-reviews .box .map-info .img {
	border-radius: 20px;
	overflow: hidden;
}

.landing-reviews .box .map-info .img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.landing-reviews .box .map-info .rating {
	width: 245px;
	border-radius: 12px;
	box-shadow: 2px 4px 30px 0 rgba(0, 0, 0, 0.25);
	overflow: hidden;
	position: absolute;
	z-index: 2;
	top: 16px;
	left: -32px;
}

.landing-reviews .box .map-info .rating img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.landing-reviews .box .list-wrapper {
	width: 100%;
	max-width: 722px;
	flex-shrink: 0;
}

.landing-reviews .box .list-wrapper .slider {
	margin: 0 -6px;
}

.landing-reviews .box .list-wrapper .slider .item {
	margin: 0 6px;
	height: 310px;
}

.landing-reviews .box .list-wrapper .slider .slick-list {
	padding-right: 15%;
}

.landing-reviews .box .list-wrapper .slider .item .img {
	width: 100%;
	height: 100%;
	border-radius: 20px;
	border: 1px solid rgba(78, 78, 78, 0.05);
}

.landing-reviews .box .list-wrapper .slider .slick-arrow {
	width: 60px;
	height: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 0;
	border: 0;
	padding: 0;
	background: var(--landing-lightgrey);
	filter: drop-shadow(2px 4px 30px rgba(0, 0, 0, 0.25));
	transition: var(--all-inout);
	z-index: 2;
	position: absolute;
	top: calc(50% - 30px);
	left: -24px;
	border-radius: 50%;
}

.landing-reviews .box .list-wrapper .slider .slick-arrow.slick-next {
	left: initial;
	right: -24px;
}

.landing-reviews .box .list-wrapper .slider .slick-arrow:hover {
	background: var(--landing-lightviolet);
}

.landing-reviews .box .list-wrapper .slider .slick-arrow::before {
	mask: url('../images/landing/ep_arrow-up-bold.svg') center center no-repeat;
	background: var(--landing-lightviolet);
	content: "";
	width: 40px;
	height: 40px;
	display: flex;
	transition: background 0.25s ease-in-out;
}

.landing-reviews .box .list-wrapper .slider .slick-arrow.slick-next::before {
	rotate: 180deg;
}

.landing-reviews .box .list-wrapper .slider .slick-arrow:hover::before {
	background: var(--white);
}

.landing-reviews .box .list-wrapper .contacts {
	margin-top: 80px;
	display: flex;
	justify-content: space-between;
	gap: 24px;
	align-items: center;
}

.landing-reviews .box .list-wrapper .contacts .but a {
	height: 56px;
	display: flex;
	padding: 0 32px;
	justify-content: center;
	align-items: center;
	gap: 12px;
	text-decoration: none;
	background: var(--white);
	color: var(--landing-dark);
	font-size: 16px;
	font-weight: 600;	
	border-radius: 28px;
}

.landing-reviews .box .list-wrapper .contacts .but a::before {
  	display: flex;
  	width: 24px;
  	height: 24px;
  	background: var(--landing-dark);
  	mask: url('../images/Frame48096201_.svg') center center no-repeat;
  	content: "";
	transition: var(--all-inout);
}

.landing-reviews .box .list-wrapper .contacts .but a {
	background: var(--landing-lightviolet);
	color: var(--white);
}

.landing-reviews .box .list-wrapper .contacts .but a::before {
	background: var(--white);
}

.landing-reviews .box .list-wrapper .contacts .phone a {
	display: flex;
	align-items: center;
	gap: 6px;
	color: var(--landing-dark);
	font-size: 24px;	
	font-weight: 600;
	line-height: normal;
	text-decoration: none;
}

.landing-reviews .box .list-wrapper .contacts .phone a span {
	margin-left: 6px;
	color: rgba(170, 170, 170, 0.60);
	font-size: 16px;
	font-weight: 500;
	line-height: normal;
}

.landing-reviews .box .list-wrapper .contacts .phone a img {
	max-width: 32px;
	height: auto;
}

.landing-reviews .box .list-wrapper .contacts .phone a:hover {
	color: var(--landing-lightviolet);
}

/*--------*/

/**/

.landing-tiles .tile {
	border-radius: 50px;
	background: var(--white);
	padding: 60px;
	position: relative;
	overflow: hidden;
	min-height: 470px;
}

.landing-tiles .tile h2 {
	margin-bottom: 32px;
}

.landing-tiles .tile p {
	font-size: 16px;
	line-height: 1.2;
}

.landing-tiles .tile p strong {
	font-size: 24px;
	font-weight: 700;
	color: var(--landing-lightviolet);
}

.landing-tiles .tile > .img {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 395px;
	height: 295px;
}

.landing-tiles .tile > .img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: bottom right;
}

.landing-tiles .tile .price {
	margin-top: 24px;
}

.landing-tiles .tile .price .item {
	padding: 16px 0;
	border-bottom: 1px solid rgba(78, 78, 78, 0.10);
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 24px;
}

.landing-tiles .tile .price .item div,
.landing-tiles .tile .price .item span {
	font-size: 16px;
	font-weight: 500;
	line-height: normal;
}

.landing-tiles .tile .contacts {
	margin-top: 60px;
	display: flex;
	flex-direction: column;
	gap: 24px;
	align-items: center;
}

.landing-tiles .tile .contacts .phone a {
	display: flex;
	align-items: center;
	gap: 6px;
	color: var(--landing-dark);
	font-size: 24px;	
	font-weight: 600;
	line-height: normal;
	text-decoration: none;
}

.landing-tiles .tile .contacts .phone a span {
	margin-left: 6px;
	color: rgba(170, 170, 170, 0.60);
	font-size: 16px;
	font-weight: 500;
	line-height: normal;
}

.landing-tiles .tile .contacts .phone a img {
	max-width: 32px;
	height: auto;
}

.landing-tiles .tile .contacts .phone a:hover {
	color: var(--landing-lightviolet);
}

.landing-tiles .tile .contacts .but a {
    padding: 0 32px;
    display: flex;
    align-items: center;
    gap: 12px;
    height: 60px;
    border-radius: 30px;
    background: linear-gradient(271deg, #4D2973 -10.57%, #685097 119.41%);
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    color: var(--white);
}

.landing-tiles .tile .contacts .but a::before {
    display: flex;
    width: 24px;
    height: 24px;
    background: url('../images/Frame48096201_.svg') center center no-repeat;
    content: "";
}

/*--------*/

/**/

.landing-grid {
	padding: 80px;
}

.landing-grid h2 {
	width: 100%;
	max-width: 740px;
}

.landing-grid h2 + .box {
	margin-top: 32px;
}

.landing-grid .box {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: repeat(2, 1fr); 
}

.landing-grid .box .item {
	border-radius: 20px;
	background: var(--landing-lightgrey);
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding: 24px;
	justify-content: center;
}

.landing-grid .box .item.item-1 { grid-area: 1 / 1 / 3 / 2; }
.landing-grid .box .item.item-2 { grid-area: 1 / 2 / 2 / 3; }
.landing-grid .box .item.item-3 { grid-area: 2 / 2 / 3 / 3; }
.landing-grid .box .item.item-4 { grid-area: 1 / 3 / 3 / 4; }
.landing-grid .box .item.item-5 { grid-area: 1 / 4 / 2 / 5; }
.landing-grid .box .item.item-6 { grid-area: 2 / 4 / 3 / 5; } 

.landing-grid .box .item .img {
	box-shadow: 0 4px 4px 0 rgba(212, 193, 188, 0.10), 0 4px 10px 0 rgba(104, 80, 151, 0.05);
	border-radius: 12px;
}

.landing-grid .box .item.item-1 .img {
	height: 158px;
}

.landing-grid .box .item.item-2 .img {
	height: 93px;
	flex-direction: column-reverse;
}

.landing-grid .box .item.item-4 .img {
	height: 230px;
	order: 3;
}

.landing-grid .box .item.item-4 .name {
	order: 1;
}

.landing-grid .box .item.item-4 p {
	order: 2;
}

.landing-grid .box .item.item-5 .img {
	height: 100px;
}

.landing-grid .box .item .name {
	font-size: 20px;
	font-weight: 300;
	line-height: 120%;
}

.landing-grid .box .item .name strong {
	font-weight: 600;
}

.landing-grid .box .item p {
	color: var(--darkgrey);
	font-size: 16px;
	font-weight: 400;
	line-height: 150%;
}


/*--------*/

/**/

.langing-short-info {
	padding: 50px 80px;
}

.langing-short-info .box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
	position: relative;
}

.langing-short-info .box .title {
	width: 100%;
	max-width: 405px;
	color: var(--white);
	font-size: 36px;
	font-weight: 300;
	line-height: 1.5;
	display: flex;
	flex-direction: column;
}

.langing-short-info .box .title strong {
	font-weight: 700;
}

.langing-short-info .box .contacts {
	width: 100%;
	max-width: 345px;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.langing-short-info .box .contacts span {
	color: rgba(255, 255, 255, 0.60);
	font-size: 16px;
	font-weight: 500;
	line-height: normal;
}

.langing-short-info .box .contacts .phone a {
	display: flex;
	align-items: center;
	gap: 6px;
	color: var(--white);
	font-size: 24px;
	font-weight: 600;
	line-height: normal;
	text-decoration: none;
}

.langing-short-info .box .contacts .phone a img {
	width: 100%;
	max-width: 32px;
	height: auto;
}

.langing-short-info .box .contacts .but {
	margin-top: 36px;
}

.langing-short-info .box .contacts .but a {
	height: 56px;
	padding: 0 32px;
	border-radius: 28px;
	border: 1px solid var(--white);
	color: var(--white);
	font-size: 16px;
	font-weight: 600;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	gap: 12px;
}

.langing-short-info .box .contacts .but a::before {
  	display: flex;
  	width: 24px;
  	height: 24px;
  	mask: url('../images/Frame48096201_.svg') center center no-repeat;
	background: var(--white);
  	content: "";
	transition: var(--all-inout);
}

.langing-short-info .box .contacts .but a:hover {
	background: var(--white);
	color: var(--landing-lightviolet);
}

.langing-short-info .box .contacts .but a:hover::before {
	background: var(--landing-lightviolet);
}

.langing-short-info .box .image {
	position: absolute;
	bottom: -50px;
	z-index: 2;
	left: calc(50% - 165px);
}

.langing-short-info .box .image img {
	max-height: 330px;
	vertical-align: top;
}

/*--------*/

/**/

.landing-answers {
	padding: 80px;
}

.landing-answers .box {
	display: flex;
	flex-direction: column;
	gap: 60px;
}

.landing-answers .box .info .items .item {
	padding: 24px;
	border-radius: 20px;
	background: var(--landing-lightgrey);
	display: flex;
	align-items: center;
	gap: 12px;
}

.landing-answers .box .info .items .item .icon {
	width: 40px;
	height: 40px;
	flex-shrink: 0;
}

.landing-answers .box .info .items .item p {
	font-size: 16px;
	line-height: 150%;
}

.landing-answers .box .info .items .item p strong {
	font-weight: 600;
	color: var(--landing-lightviolet);
}

.landing-answers .box .info .image {
	position: relative;
}

.landing-answers .box .info .image .img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: 20px;
}

.landing-answers .box .info .image .licence {
	position: absolute;
	left: 24px;
	top: -25px;
	width: calc(100% - 48px);
	padding: 0 32px;
	height: 50px;
	display: flex;
	align-items: center;
	z-index: 2;
	border-radius: 25px;
	background: var(--landing-lightgrey);
	box-shadow: 2px 4px 30px 0 rgba(0, 0, 0, 0.25);

	font-size: 14px;
	font-weight: 500;
}

.landing-answers .box .cta {
	background: var(--landing-lightgrey);
	border: 1px solid rgba(78, 78, 78, 0.05);
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05),
				0 9px 9px rgba(0, 0, 0, 0.04),
				0 20px 12px rgba(0, 0, 0, 0.03),
				0 36px 14px rgba(0, 0, 0, 0.01),
				0 56px 16px rgba(0, 0, 0, 0.00);
	padding: 55px 50px;
	padding-left: 350px;
	border-radius: 50px;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
}

.landing-answers .box .cta .image {
	position: absolute;
	left: 50px;
	bottom: 0;
}

.landing-answers .box .cta .image img {
	vertical-align: top;
	max-height: 327px;
	width: auto;
}

.landing-answers .box .cta .title {
	width: 100%;
	max-width: 410px;;
}

.landing-answers .box .cta .title .h2-title {
	font-size: 36px;
	font-weight: 300;
	line-height: 120%;
}

.landing-answers .box .cta .title .h2-title strong {
	font-weight: 600;
}

.landing-answers .box .cta .title p {
	font-size: 16px;
	line-height: 150%;
}

.landing-answers .box .cta .title p strong {
	font-weight: 600;
	color: var(--landing-lightviolet);
}

.landing-answers .box .cta .contacts {
	display: flex;
	flex-direction: column;
	gap: 4px;
	width: 100%;
	max-width: 375px;
}

.landing-answers .box .cta .contacts span {
	color: rgba(170, 170, 170, 0.60);
	font-size: 16px;
	font-weight: 500;
	line-height: normal;
}

.landing-answers .box .cta .contacts .phone a {
	display: flex;
	align-items: center;
	gap: 6px;
	color: #13121F;
	font-size: 24px;
	font-weight: 600;
	line-height: normal;
	text-decoration: none;
}

.landing-answers .box .cta .contacts .phone a span {
	color: rgba(170, 170, 170, 0.60);
	font-size: 16px;
	font-weight: 500;
	line-height: normal;
}

.landing-answers .box .cta .contacts .phone a img {
	width: 32px;
	height: auto;
}

.landing-answers .box .cta .contacts .but {
	margin-top: 20px;
}

.landing-answers .box .cta .contacts .but a {
    padding: 0 32px;
    display: flex;
    align-items: center;
    gap: 12px;
    height: 56px;
    border-radius: 30px;
    background: linear-gradient(271deg, #4D2973 -10.57%, #685097 119.41%);
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    color: var(--white);
}

.landing-answers .box .cta .contacts .but a::before {
    display: flex;
    width: 24px;
    height: 24px;
    background: url('../images/Frame48096201_.svg') center center no-repeat;
    content: "";
}


/*--------*/

/**/

.landing-advantages {
	padding: 80px;
}

.landing-advantages .price-info {
	border-radius: 30px;
	position: relative;
	background: linear-gradient(271deg, #4D2973 -10.57%, #685097 119.41%);
	box-shadow: 0 56px 16px 0 rgba(0, 0, 0, 0.00), 0 36px 14px 0 rgba(0, 0, 0, 0.01), 0 20px 12px 0 rgba(0, 0, 0, 0.03), 0 9px 9px 0 rgba(0, 0, 0, 0.04), 0 2px 5px 0 rgba(0, 0, 0, 0.05);
}

.landing-advantages .price-info .list {
	display: flex;
	flex-direction: column;
	gap: 14px;
	padding: 20px 40px;
	width: 100%;
	max-width: calc(100% - 220px);
}

.landing-advantages .price-info .list .item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	color: var(--white);
	font-size: 20px;
	font-weight: 500;
	line-height: 150%;
}

.landing-advantages .price-info .img {
	z-index: 2;
	position: absolute;
	right: 12px;
	top: -48px;
}

.landing-advantages .price-info .img img {
	max-width: 195px;
	vertical-align: top;
}

.landing-advantages .box {
	margin-top: 60px;
}

.landing-advantages .box .advantages-box {
	background: var(--landing-lightgrey);
	border-radius: 50px;
	padding: 24px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 50px;
}

.landing-advantages .box .advantages-box .image {
	width: 100%;
	max-width: 482px;
	flex-shrink: 0;
}

.landing-advantages .box .advantages-box .image .img {
	width: 100%;
	max-width: 482px;
	height: 416px;
	border-radius: 40px;
}

.landing-advantages .box .advantages-box .list {
	width: 100%;
}

.landing-advantages .box .advantages-box .list .item {
	padding: 16px 0;
	padding-left: 36px;
	border-bottom: 1px solid rgba(0, 0, 0, 0.25);
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 16px;
	font-weight: 500;
	line-height: normal;
}

.landing-advantages .box .advantages-box .list .item:first-child {
	padding-top: 0;

}
.landing-advantages .box .advantages-box .list .item:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.landing-advantages .box .advantages-box .list .item strong {
	color: var(--landing-lightviolet);
	font-weight: 600;
}

.landing-advantages .box .advantages-faq {
	margin-top: 100px;
	display: flex;
	justify-content: space-between;
	gap: 32px;
}

.landing-advantages .box .advantages-text {
	width: 100%;
	max-width: 470px;
}

.landing-advantages .box .advantages-text p,
.landing-advantages .box .advantages-text ul,
.landing-advantages .box .advantages-text ol {
	font-weight: 400;
}

.landing-advantages .box .advantages-faq .faq-title {
	font-family: var(--text-font);
	font-size: 36px;
	font-weight: 300;
	line-height: 120%;
}

.landing-advantages .box .advantages-faq .faq-list {
	margin-top: 24px;
}

.landing-advantages .box .advantages-faq .faq-list .ask {
	background: var(--landing-lightgrey);
  	border-radius: 50px;
  	padding: 16px 24px;
  	cursor: pointer;
  	font-size: 22px;
  	font-weight: 500;
	transition: var(--all-inout);
}

.landing-advantages .box .advantages-faq .faq-list .ask:not(:first-child) {
	margin-top: 16px;
}

.landing-advantages .box .advantages-faq .faq-list .ask.active {
	background: var(--landing-lightviolet);
	color: var(--white);
}

.landing-advantages .box .advantages-faq .faq-list .answer .text {
	padding: 16px 24px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.landing-advantages .box .advantages-faq .faq-block {
	width: 100%;
}

.landing-advantages .box .advantages-faq .faq-block .panel {
  	max-height: 0;
  	overflow: hidden;
  	transition: max-height 0.2s ease-out;
}

/*--------*/

/**/

.landing-results {
	padding: 80px;
}

.landing-results .box {
	display: flex;
	justify-content: space-between;
	gap: 32px;
}

.landing-results .box .image {
	width: 100%;
	max-width: 405px;
	border-radius: 20px;
	height: 405px;
	position: relative;
}

.landing-results .box .image span {
	position: absolute;
	bottom: 16px;
	z-index: 2;	
	color: white;
	font-size: 20px;
	font-weight: 500;
	line-height: 100%;
	text-transform: uppercase;
	left: 20%;
}

.landing-results .box .image span:nth-child(3) {
	left: 62%;
}

.landing-results .box .info {
	width: 100%;
	max-width: 640px;
}

.landing-results .box .info .item {
	padding: 24px;
	border-radius: 20px;
	background: var(--landing-lightgrey);
}

.landing-results .box .info .item div {
	font-size: 20px;
	font-weight: 600;
	line-height: 120%;
}

.landing-results .box .info .item p {
	color: var(--darkgrey);
	font-size: 16px;
	font-weight: 400;
	line-height: 150%;
}

.landing-results .box .info .item p strong {
	font-weight: 600;
	color: var(--landing-lightviolet);
}

/*--------*/

/**/

.form-group {
	position: relative;
}

.wpcf7-not-valid-tip {
	display: none !important;
}

.wpcf7-response-output {
	display: none !important;
}

.wpcf7-spinner {
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	margin: 0;
}

/*--------*/

/**/

footer {
	padding: 80px;
	margin-top: 24px;
}

footer.border {
	border-radius: 50px;
}

footer.white {
	background: var(--white);
}

footer .box .info {
	background: #F8F8F8;
	border: 1px solid rgba(78, 78, 78, 0.05);
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05),
				0 9px 9px rgba(0, 0, 0, 0.04),
				0 20px 12px rgba(0, 0, 0, 0.03),
				0 36px 14px rgba(0, 0, 0, 0.01),
				0 56px 16px rgba(0, 0, 0, 0.00);
	padding: 60px 80px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 112px;
	border-radius: 50px;
}

footer .box .info .prices {
	width: 100%;
}

footer .box .info .prices .date {
	height: 51px;
	border-radius: 50px;
	background: var(--landing-lightviolet);
	box-shadow: 2px 4px 30px 0 rgba(0, 0, 0, 0.25);
	padding: 0 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-size: 16px;
	font-weight: 500;
	position: absolute;
	left: 80px;
	top: -14px;
	color: var(--white);
}

footer .box .info .prices .list .row {
	padding: 16px 0;
	border-bottom: 1px solid rgba(19, 18, 31, 0.20);
	display: flex;
	justify-content: space-between;
}

footer .box .info .prices .list .row:first-child {
	padding-top: 0;
}

footer .box .info .prices .list .row:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

footer .box .info .prices .list .row div,
footer .box .info .prices .list .row span {
	font-size: 16px;
	font-weight: 500;
	line-height: 150%;
}

footer .box .info .contacts {
	display: flex;
	flex-direction: column;
	gap: 4px;
	width: 100%;
	max-width: 375px;
}

footer .box .info .contacts span {
	color: rgba(170, 170, 170, 0.60);
	font-size: 16px;
	font-weight: 500;
	line-height: normal;
}

footer .box .info .contacts .phone a {
	display: flex;
	align-items: center;
	gap: 6px;
	color: #13121F;
	font-size: 24px;
	font-weight: 600;
	line-height: normal;
	text-decoration: none;
}

footer .box .info .contacts .phone a span {
	color: rgba(170, 170, 170, 0.60);
	font-size: 16px;
	font-weight: 500;
	line-height: normal;
}

footer .box .info .contacts .phone a img {
	width: 32px;
	height: auto;
}

footer .box .info .contacts .but {
	margin-top: 20px;
}

footer .box .info .contacts .but a {
    padding: 0 32px;
    display: flex;
    align-items: center;
    gap: 12px;
    height: 56px;
    border-radius: 30px;
    background: linear-gradient(271deg, #4D2973 -10.57%, #685097 119.41%);
    font-size: 16px;
    font-weight: 500;
    text-decoration: none;
    color: var(--white);
}

footer .box .info .contacts .but a::before {
    display: flex;
    width: 24px;
    height: 24px;
    background: url('../images/Frame48096201_.svg') center center no-repeat;
    content: "";
}

footer .box > .text {
	margin-top: 80px;
	align-items: center;
}

footer .box > .text .title {
	width: 100%;
	max-width: 955px;
	text-align: center;
	font-size: 36px;
	font-weight: 300;
	line-height: 120%;
}

footer .box > .text .title strong {
	font-weight: 600;
}

footer .box > .text .contact-info {
	border-radius: 20px;
	background: var(--landing-lightgrey);
	padding: 20px 55px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	max-width: 1030px;
}

footer .box > .text .contact-info .addr {
	width: 100%;
	max-width: 330px;
	font-size: 15px;
	padding-left: 38px;
	background: url('../images/landing/MapPointFavourite.svg') left center / 30px auto no-repeat;
	line-height: normal;
}

footer .box > .text .contact-info .addr span {
	display: block;
	color: var(--landing-lightviolet)
}

footer .box > .text .contact-info .worktime {
	width: 100%;
	max-width: 230px;
	font-size: 15px;
	padding-left: 38px;
	background: url('../images/landing/calendar-tick.svg') left center / 30px auto no-repeat;
	line-height: normal;
}

footer .box > .text .contact-info .worktime span {
	display: block;
	color: var(--landing-lightviolet)
}

footer .box > .text .contact-info .whatsapp {
	width: 100%;
	max-width: 170px;
	padding-left: 38px;
	background: url('../images/landing/iconoir_whatsapp.svg') left center / 30px auto no-repeat;
	line-height: normal;
}

footer .box > .text .contact-info .whatsapp a {
	display: flex;
	flex-direction: column-reverse;
	font-size: 15px;
	text-decoration: none;
	color: var(--landing-dark);
	line-height: normal;
}

footer .box > .text .contact-info .whatsapp a span {
	color: var(--landing-lightviolet);
}

footer .box .map {
	border-radius: 50px;
	overflow: hidden;
	width: 100%;
	height: 360px;
	margin-top: 60px;
}

footer .box .map iframe {
	width: 100% !important;
	height: 100% !important;
}

/*--------*/

/**/

.modal-form-block {
	background: linear-gradient(271deg, #4D2973 -10.57%, #685097 119.41%);
	border-radius: 32px;
}

.modal-form-block .modal-box {
	width: 100%;
	max-width: 300px;
}

.modal-form-block .modal-box .title,
#form-block .form .title,
#form-block2 .form .title {
	color: var(--white);
	font-size: 18px;
	text-transform: uppercase;
	text-align: center;
}

.modal-form-block .modal-box p,
#form-block2 .form > p,
#form-block .form > p {
	font-size: 14px;
	text-align: center;
	color: var(--white);
	opacity: 0.7;
	line-height: 1.1;
}

#form-block2 .form form,
#form-block .form form {
	margin-top: 12px;
}

#review-form.modal-form-block .modal-box p {
	line-height: 1.3;
	font-size: 18px;
}

.modal-form-block .modal-box .form-box {
	margin-top: 16px;
}

.modal-form-block .modal-box .form-box form {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.modal-form-block .modal-box .form-box form .form-group.but {
	margin-top: 8px;
}

#review-form.modal-form-block .modal-box .form-box form .form-group > div > p {
	font-size: 12px;
	text-align: left;
	margin-bottom: 4px;
}

/*--------*/

section.white.page-thank {
	padding: 40px 0;
}

section.white.page-thank .box.flex-col {
	align-items: center;
	text-align: center;
}

section.white.page-thank .box .social {
	margin-top: 32px;
}

section.white.page-thank .box .social > div {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
}

section.white.page-thank .box .social > div a {
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 8px;
	width: 40px;
	height: 40px;
	border: 1px solid var(--violet);
}

section.white.page-thank .box .social > div a:hover {
	background: var(--violet);
}

section.white.page-thank .box .social > div a img {
	transition: var(--all-inout);
}

section.white.page-thank .box .social > div a:hover img {
	filter: invert(1);
}

.add-links {
	margin-top: 24px;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 24px;
}

.add-links a {
	color: var(--darkgrey);
	font-size: 14px;
	font-weight: 400;
	opacity: 0.5;
}

.add-links a:hover {
	opacity: 1;
}

/**/

.modal-cacsp-btn.modal-cacsp-btn-settings,
.modal-cacsp-btn.modal-cacsp-btn-save {
	border-radius: 25px !important;
	font-size: 14px !important;
  	display: flex !important;
  	align-items: center !important;
	justify-content: center !important;
  	font-weight: 400 !important;
	background: var(--f-button-active-bg) !important;
	border-color: var(--f-button-active-bg) !important;
}

.modal-cacsp-btn.modal-cacsp-btn-accept,
.modal-cacsp-btn.modal-cacsp-btn-accept-all {
	border-radius: 25px !important;
	font-size: 14px !important;
  	display: flex !important;
  	align-items: center !important;
	justify-content: center !important;
  	font-weight: 400 !important;
}

.modal-cacsp-position .modal-cacsp-box {
	border-radius: 32px !important;
}

.modal-cacsp-position .modal-cacsp-box .modal-cacsp-box-header {
	background: url('../images/7febcd67ca970653f1746fcac527e7bc03666130.webp') center center, linear-gradient(90deg, rgba(104, 80, 151, 0.85) 8.42%, rgba(104, 80, 151, 0.3) 98.91%) !important;
  	box-shadow: 0px 2px 6px 0px rgba(44, 33, 57, 0.15), 0px 2px 15px 0px rgba(217, 217, 217, 0.25) !important;
  	backdrop-filter: blur(12px) !important;
}

.modal-cacsp-position .modal-cacsp-box .modal-cacsp-box-content {
	font-size: 18px !important;
	font-weight: 400 !important;
}

@media (max-width: 768px) {
	body {
  		padding: 12px;
    	padding-top: 97px;
	}

	header {
  		top: 12px;
  		left: 12px;
  		width: calc(100% - 24px);
  		padding: 12px;
		border-radius: 24px;
	}

	header .info {
		display: none;
	}

	header .menu {
		display: none;
	}

	section.border {
  		border-radius: 24px;
	}

	.landing-first {
  		padding: 16px 12px;
	}

	.landing-first .box .info h1 {
  		font-size: 24px;
  	}

	.landing-first .box {
  		gap: 32px;
  		flex-direction: column;
	}

	.landing-first .box .info {
  		max-width: 100%;
  		padding-top: 0;
	}

	.landing-first .box .info .blocks {
  		grid-template-columns: 100%;
  	}

	.landing-first .box .info .blocks .item {
  		border-radius: 12px;
  		padding: 12px 16px;
  		min-height: 10px;
	}

	.landing-first .box .images .after {
  		width: 100%;
  		height: 220px;
	}

	.landing-first .box .images .before {
  		width: 280px;
  		height: 160px;
	}

	section.mt-24 {
  		margin-top: 12px;
	}

	.langing-gallery {
  		padding: 16px 12px;
	}
	
	.langing-price-form {
  		padding: 40px 12px 16px 12px;
		margin-top: 32px !important;
	}

	.langing-price-form .box {
  		gap: 32px;
  		flex-direction: column;
	}

	.langing-price-form .box .form {
  		max-width: 100%;
	}

	.langing-price-form .box .image {
  		max-width: 48px;
  		right: 20px;
  		top: -22px;
	}

	.langing-about-block {
  		padding: 16px 12px;
	}

	.langing-about-block .box {
  		flex-direction: column;
  		gap: 32px;
  		flex-direction: column;
	}

	.langing-about-block .box .about h2 {
  		max-width: 100%;
	}

	section h2 {
  		font-size: 24px;
	}

	.langing-about-block .box .about .cols {
  		grid-template-columns: 100%;
  	}

	.langing-about-block .box .about .cols .col .img {
  		height: auto;
  		padding: 0;
	}

	.langing-about-block .box .team .title {
  		align-items: flex-start;
  		gap: 12px;
  		flex-direction: column;
	}

	.langing-about-block .box .team .title .text strong, .langing-about-block .box .team .title .text span {
  		font-size: 20px;
	}

	.langing-about-block .box .team .list {
		grid-template-columns: 1fr 1fr;
	}

	.langing-about-block .box .team .list .item .photo {
  		height: 200px;
	}

	.langing-about-block .box .team .list .item .info {
  		border-radius: 12px;
  		padding: 12px;
	}

	.langing-about-block .box .team .list .item .info .name {
  		font-size: 14px;
	}

	.langing-about-block .box .team .list .item .info .position {
  		font-size: 13px;
	}

	.langing-about-block .box .team .list .item .info .experience {
  		font-size: 14px;
	}

	.landing-reviews {
  		padding: 16px 12px;
	}

	.landing-reviews .box {
  		gap: 24px;
  		flex-direction: column;
	}

	.landing-reviews .box .map-info {
  		margin: 0 auto;
	}

	.landing-reviews .box .map-info .rating {
  		width: 195px;
  		left: 16px;
	}

	.landing-reviews .box .list-wrapper {
  		max-width: 100%;
	}

	.landing-reviews .box .list-wrapper .contacts {
  		margin-top: 32px;
  		flex-direction: column;
	}

	.landing-reviews .box .list-wrapper .contacts .phone a {
  		font-size: 20px;
	}

	.landing-tiles .box {
		grid-template-columns: 100%;
	}

	.landing-tiles .tile {
  		border-radius: 24px;
  		padding: 16px 12px;
  		min-height: 10px;
	}

	.landing-tiles .tile > .img {
  		width: 165px;
  		height: 135px;
	}

	.landing-tiles .tile h2 {
		font-size: 22px;
	}

	.landing-tiles .tile p {
		font-size: 14px;
		line-height: 1.5;
	}
	
	.landing-tiles .tile:first-child p {
		padding-right: 180px;
	}

	.landing-tiles .tile p strong {
  		font-size: 18px;
	}

	.landing-tiles .tile .contacts .phone a {
  		font-size: 20px;
	}

	.landing-tiles .tile .contacts {
  		margin-top: 30px;
	}

	.landing-grid {
  		padding: 16px 12px;
	}

	.landing-grid .box {
  		grid-template-columns: 100%;
  		grid-template-rows: initial;
	}

	.landing-grid .box .item.item-1 { grid-area: initial; }
	.landing-grid .box .item.item-2 { grid-area: initial; }
	.landing-grid .box .item.item-3 { grid-area: initial; }
	.landing-grid .box .item.item-4 { grid-area: initial; }
	.landing-grid .box .item.item-5 { grid-area: initial; }
	.landing-grid .box .item.item-6 { grid-area: initial; } 

	.landing-grid .box .item {
  		border-radius: 12px;
  		gap: 18px;
  		padding: 12px;
	}

	.landing-grid .box .item .img {
  		border-radius: 6px;
	}

	.landing-grid .box .item .name {
  		font-size: 18px;
	}

	.langing-short-info {
  		padding: 16px 12px;
	}

	.langing-short-info .box {
  		gap: 24px;
  		flex-direction: column;
	}

	.langing-short-info .box .title {
  		max-width: 100%;
  		font-size: 24px;
  		display: block;
		order: 1;
	}

	.langing-short-info .box .contacts {
  		max-width: 100%;
  		order: 2;
	}

	.langing-short-info .box .image {
  		position: relative;
  		order: 3;
  		margin-bottom: -16px;
		bottom: initial;
  		left: initial;
	}

	.langing-short-info .box .image img {
  		max-height: 280px;
	}

	.langing-short-info .box .contacts .phone a {
  		font-size: 20px;
	}

	.landing-answers {
  		padding: 16px 12px;
	}

	.landing-answers .box {
  		gap: 32px;
	}

	.landing-answers .box .info {
		grid-template-columns: 100%;
	}

	.landing-answers .box .info .items .item {
  		padding: 16px 12px;
  		border-radius: 16px;
	}

	.landing-answers .box .info .image {
		margin-top: 32px;
	}

	.landing-answers .box .info .image .img {
  		position: relative;
	}

	.landing-answers .box .info .image .licence {
  		left: 0px;
  		width: 100%;
  		padding: 0 18px;
		height: 90px;
	}

	.landing-answers .box .cta {
  		padding: 16px 12px;
    	padding-left: 12px;
  		border-radius: 18px;
  		flex-direction: column;
	}

	.landing-answers .box .cta .image {
  		position: relative;
  		left: initial;
  		bottom: initial;
  		order: 3;
		margin-bottom: -16px;
	}

	.landing-answers .box .cta .image img {
  		max-height: 265px;
	}

	.landing-answers .box .cta .contacts .phone a {
  		font-size: 20px;
	}

	.landing-answers .box .cta .title {
  		max-width: 100%;
  		order: 1;
	}

	.landing-answers .box .cta .contacts {
  		max-width: 100%;
  		order: 2;
	}

	.landing-answers .box .cta .contacts .but a {
  		padding: 0 16px;
  		font-size: 15px;
	}

	.landing-answers .box .cta .title .h2-title {
  		font-size: 24px;
	}

	.landing-advantages {
  		padding: 16px 12px;
	}

	.landing-advantages .title-block {
		grid-template-columns: 100%;
	}

	.landing-advantages .title-block .title {
		gap: 24px;
	}

	.landing-advantages .title-block .title p {
		font-size: 16px;
	}

	.landing-advantages .price-info {
  		border-radius: 18px;
	}

	.landing-advantages .price-info .img img {
  		max-width: 55px;
	}

	.landing-advantages .price-info .img {
  		top: -38px;
	}

	.landing-advantages .price-info .list {
  		padding: 20px 16px;
  		max-width: 100%;
	}

	.landing-advantages .price-info .list .item {
  		font-size: 16px;
	}

	.landing-advantages .box {
  		margin-top: 40px;
	}

	.landing-advantages .box .advantages-box {
  		border-radius: 18px;
  		padding: 16px 12px 12px;
  		gap: 24px;
		flex-direction: column;
	}

	.landing-advantages .box .advantages-box .list .item {
    	padding-left: 0px;
	}

	.landing-advantages .box .advantages-box .image .img {
  		max-width: 100%;
  		height: auto;
  		border-radius: 12px;
	}

	.landing-advantages .box .advantages-text {
  		max-width: 100%;
  		margin-top: 20px;
	}

	.landing-results {
  		padding: 16px 12px 12px;
	}

	.landing-results .box .info {
  		max-width: 100%;
	}

	.landing-results .box .info .blocks {
		grid-template-columns: 100%;
	}

	.landing-results .box {
  		gap: 24px;
  		flex-direction: column;
	}

	.landing-results .box .info .item {
  		padding: 12px;
  		border-radius: 12px;
	}

	.landing-results .box .image {
  		max-width: 100%;
  		border-radius: 12px;
  		height: auto;
	}

	footer.border {
  		border-radius: 24px;
	}

	footer {
  		padding: 16px 12px 12px;
	}

	footer .box .info {
  		padding: 52px 12px 12px;
  		gap: 32px;
  		border-radius: 12px;
  		flex-direction: column;
  		margin-top: 12px;
	}

	footer .box .info .contacts .phone a {
  		font-size: 20px;
	}

	footer .box .info .contacts .but a {
  		padding: 0 18px;
  		font-size: 15px;
	}

	footer .box > .text {
  		margin-top: 32px;
	}

	footer .box > .text .title {
  		max-width: 100%;
  		font-size: 24px;
  	}

	footer .box > .text .contact-info {
  		border-radius: 12px;
  		padding: 12px;
  		align-items: flex-start;
  		justify-content: flex-start;
  		max-width: 100%;
  		flex-direction: column;
  		gap: 16px;
	}

	footer .box .map {
  		border-radius: 12px;
  		height: 300px;
  		margin-top: 32px;
	}

	header .controls .but a,
	section.landing-first .but a {
  		padding: 0 12px;
  		height: 48px;
  		font-size: 13px;
  		line-height: 1.2;
	}

	header .controls .social a {
  		width: 48px;
  		height: 48px;
	}

	.langing-gallery .slider .slick-arrow {
  		width: 48px;
  		height: 48px;
  		top: calc(50% - 24px);
  		left: -16px;
	}

	.langing-gallery .slider .slick-arrow.slick-next {
  		right: -16px;
	}

	.landing-reviews .box .list-wrapper .slider .slick-arrow {
  		width: 48px;
  		height: 48px;
  		top: calc(50% - 24px);
  		left: -16px;
  	}

	.landing-reviews .box .list-wrapper .slider .slick-arrow.slick-next {
  		right: -16px;
	}

	.langing-price-form .box .prices .list .row {
		flex-direction: column;

	}

	section.white.page-thank .box .title > h1 {
		font-size: 32px;
	}

	.langing-price-form .box .prices .date {
  		padding: 0 24px;
  		justify-content: flex-start;
  		text-align: left;
  		font-size: 14px;
  		width: 100%;
	}

	.modal-cacsp-position .modal-cacsp-box .modal-cacsp-box-header {
		padding-top: 12px !important;
  		padding-bottom: 12px !important;
  		font-size: 20px !important;
	}

	.modal-cacsp-position .modal-cacsp-box {
  		border-radius: 24px !important;
	}




















}

@media (max-width: 1335px) {
	header .info > div {
  		width: fit-content;
  		max-width: 260px;
	}

	header .controls .but a,
	section.landing-first .but a {
  		font-size: 15px;
	}

	.landing-first .box .info {
  		max-width: 540px;
	}

	.landing-first .box {
  		gap: 50px;
	}

	.langing-short-info .box .image img {
  		max-height: 310px;
	}

	.langing-short-info .box .title {
  		font-size: 30px;
	}

	.landing-answers .box .cta .title .h2-title {
  		font-size: 30px;
	}

	


}

/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/