@import url('./font.css');

:root {
	--container: 1230px;/**/
	--white: #fff;
	--black: #000;
	--light: #DBD9E4;
	--light2: #AEA4B9;
	--dark: #140522;
	--violet: #4D2973;
	--grey-text: #857E99;
	--grey-light: #f1f1f1;
	

	--font: "Montserrat", sans-serif;
	
	--all-in: all 0.25s ease-in;
	--all-out: all 0.25s ease-out;
	--all-inout: all 0.25s ease-in-out;
}

body {
	color: var(--text);
}

html, body {
	padding: 0px;
	margin: 0px;
	line-height: 1.5;
	position: relative;
	font-family: var(--font);
	font-size: 14px;
}

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

input, textarea, select, button, option {
	outline: none;
	font-family: var(--font);
}

textarea {
	resize: none;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
	padding: 0px;
	margin: 0px;
	position: relative;
	z-index: 2;
	font-weight: bold;
	font-family: var(--font);
	/*font-feature-settings: "pnum" on,"lnum" on;*/
	font-weight: 600;
}

h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h6 strong, .h1 strong, .h2 strong, .h3 strong, .h4 strong, .h5 strong, .h6 strong {
	font-weight: 600 !important;
}

h1, .h1 {
	font-size: 44px;
}

h2, .h2 {
	font-size: 34px;
}

h3, .h3 {
	font-size: 30px;
}

h4, .h4 {
	font-size: 24px;
}

h5, .h5 {
	font-size: 22px;
}

h6, .h6 {
	font-size: 18px;
}

p {
	margin: 0px;
}

ul, ol {
	margin: 0px;
	
}

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

blockquote {
	margin-left: 0;
	margin-right: 0;
}

blockquote * {
	
	font-weight: 500;
}

blockquote a {
	
}

.medium {
	font-weight: 500;
}

.semi {
	font-weight: 600;
}

.bold {
	font-weight: bold;
}

.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-10 {
	gap: 10px;
}

.gap-12 {
	gap: 12px;
}

.gap-16 {
	gap: 16px;
}

.gap-18 {
	gap: 18px;
}

.gap-20 {
	gap: 20px;
}

.gap-24 {
	gap: 24px;
}

.gap-28 {
	gap: 28px;
}

.gap-30 {
	gap: 30px;
}

.gap-32 {
	gap: 32px;
}

.gap-24-32 {
	gap: 24px 32px;
}

.gap-40 {
	gap: 40px;
}

.gap-24-44 {
	gap: 24px 44px;
}

.gap-50 {
	gap: 50px;
}

.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);
}

.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%;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	box-sizing: border-box;
	padding-left: 0;
	padding-right: 0;
}

.img-cover {
	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;
}

.but {
	display: flex;
}

.but a, .but button {
	border: 0;
	padding-left: 30px;
	padding-right: 3px;
	padding-top: 3px;
	padding-bottom: 3px;
	height: 54px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	color: var(--dark);
	font-size: 14px;
	font-weight: 500;
	text-transform: uppercase;
	background: var(--white);
	border-radius: 27px;
	text-decoration: none;
	position: relative;
	overflow: hidden;
}

.but a span, .but button span {
	position: relative;
	z-index: 2;
}

.but a::after, .but button::after {
	display: flex;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	content: "";
	border-radius: 24px;
	z-index: 2;
	filter: invert(1);
	background: url('../images/logo-symbol.webp') center center / 32px auto no-repeat;
} 

.but a::before, .but button::before {
	width: 48px;
	height: 48px;
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 3px;
	background: linear-gradient(282deg, #9069FF -127.65%, #13121F 90.77%);
	border-radius: 24px;
	transition: var(--all-inout);
	z-index: 1;
}

.but a:hover::before, .but button:hover::before {
	width: 400px;
	height: 400px;
	border-radius: 50%;
	right: 0;
}

.but a:hover, .but button:hover {
	color: var(--white);
}

/*--------*/

/*header*/

header {
	width: 100%;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 10;
}

header::before {
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	border-radius: 45px;
	background: url('../images/noise.webp') center center, rgba(26, 25, 74, 0.70);
	box-shadow: 0px 3.596px 13.483px 0px rgba(19, 18, 31, 0.15);
	backdrop-filter: blur(9px);
	content: "";
}

header .container {
	max-width: 1230px
}

header .box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
}

header .box .logo img {
	max-width: 134px;
	vertical-align: top;
	filter: invert(1);
}

header .box .menu-box {
	display: flex;
	align-items: center;
	gap: 32px;
	margin-left: auto;
}

header .box .menu-box #main-menu {
	padding: 0;
	list-style: none;
	display: flex;
	align-items: center;
	gap: 21px;
}

header .box .menu-box #main-menu > li:first-child {
	position: relative;
}

header .box .menu-box #main-menu > li:first-child > a {
	display: flex;
	align-items: center;
	gap: 8px;
}

header .box .menu-box #main-menu > li:first-child > a::after {
	content: "";
	width: 0;
	height: 0;
	border-top: 8px solid var(--light);
	border-left: 4px solid transparent;
	border-right: 4px solid transparent;
	transition: var(--all-inout);
}

header .box .menu-box #main-menu > li:first-child > a:hover::after {
	border-top-color: var(--white);
}

header .box .menu-box #main-menu > li > a {
	color: var(--light);
	font-size: 14px;
	font-weight: 500;
	line-height: 100%;
	text-decoration: none;
	text-transform: uppercase;
	line-height: 90px;
}

header .box .menu-box #main-menu > li > a:hover, header .box .menu-box #main-menu li.current-menu-item > a {
	color:var(--white);
	text-decoration: underline;
}

header .box .menu-box #main-menu > li > .sub-menu {
	max-height: 0;
	overflow: hidden;
	position: absolute;
	left: 0;
	top: 100%;
	transition: var(--all-inout);
	width: 320px;
	border-radius: 0 0 16px 16px;
  	box-shadow: 0px 3.596px 13.483px 0px rgba(19, 18, 31, 0.15);
	padding: 0;
	list-style: none;
	opacity: 0;
	transform: translateY(-10px);
	transition: var(--all-inout);
}

header .box .menu-box #main-menu > li > .sub-menu::before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: url('../images/noise.webp') center center, rgba(26, 25, 74, 0.70);
	backdrop-filter: blur(9px);
	border-radius: 0 0 16px 16px;
	z-index: -1;
}

header .box .menu-box #main-menu > li > .sub-menu > li {
	padding-left: 24px;
	padding-right: 24px;
}

header .box .menu-box #main-menu > li > .sub-menu:hover, header .box .menu-box #main-menu > li > .sub-menu:hover::before {
	border-radius: 0 0 0 16px;
}

header .box .menu-box #main-menu > li > .sub-menu > li:not(:first-child), header .box .menu-box #main-menu > li > .sub-menu .sub-menu li:not(:first-child) {
	margin-top: 16px;
}

header .box .menu-box #main-menu .sub-menu > li > a {
	color: var(--light);
	font-size: 14px;
	font-weight: 500;
	line-height: 100%;
	text-decoration: none;
}

header .box .menu-box #main-menu .sub-menu > li:hover > a, header .box .menu-box #main-menu .sub-menu > li > a:hover {
	color:var(--white);
	text-decoration: underline;
}

header .box .menu-box #main-menu .sub-menu > li:first-child {
	padding-top: 24px;
}

header .box .menu-box #main-menu .sub-menu > li:last-child {
	padding-bottom: 24px;
}

header .box .menu-box #main-menu > li > .sub-menu > li > .sub-menu {
	position: absolute;
	left: 100%;
	top: 0;
	width: 280px;
	max-height: 0px;
	opacity: 0;
	min-height: 0;
	background: url('../images/noise.webp') center center, rgba(26, 25, 74, 0.70);
  	box-shadow: 0px 3.596px 13.483px 0px rgba(19, 18, 31, 0.15);
  	backdrop-filter: blur(9px);
	padding: 0 24px;
	border-radius: 0 0 16px 0;
	list-style: none;
	transition: var(--all-inout);
	overflow: hidden;
}

header .box .menu-box #main-menu > li > .sub-menu > li a span {
	width: 16px;
	height: 16px;
	margin-right: 8px;
	display: inline-block;
}

header .box .menu-box #main-menu > li > .sub-menu > li a span img {
	max-width: 16px;
	max-height: 16px;
	vertical-align: top;
	filter: brightness(0) invert(1);
}

@media (min-width: 1130px) {
	header .box .menu-box #main-menu > li:first-child:hover > .sub-menu {
		max-height: 500px;
		opacity: 1;
		transform: translateY(0);
		overflow: initial;
	}

	header .box .menu-box #main-menu > li:first-child:hover > .sub-menu > li:hover .sub-menu {
		max-height: 500px;
		opacity: 1;
		transform: translateY(0);
	}

	header .box .menu-box #main-menu > li > .sub-menu > li:hover > .sub-menu {
		max-height: 500px;
		opacity: 1;
		transform: translateY(0);
		min-height: 254px;
	}
}

header .box .menu-box .info {
	display: flex;
	align-items: center;
	gap: 16px;
}

header .box .menu-box .info a {
	line-height: 32px;
	display: flex;
	align-items: center;
	gap: 10px;
	color: var(--light);
	font-size: 14px;
	text-decoration: none;
}

header .box .menu-box .info a::before {
	width: 32px;
	height: 32px;
	border-radius: 50%;
	display: flex;
	content: "";
	background-position: center center;
	background-repeat: no-repeat;
	background-color: rgba(241, 241, 241, 0.90);
	flex-shrink: 0;
}

header .box .menu-box .info a.addr::before {
	background-image: url('../images/Pin_alt_light.svg');
}

header .box .menu-box .info a.phone::before {
	background-image: url('../images/Phone_light.svg');
}

header .box .menu-box .info a:hover {
	color: var(--white);
	text-decoration: underline;
}

header .box .lang {
	display: flex;
	align-items: center;
	gap: 2px;
}

header .box .lang a {
	display: flex;
	align-items: center;
	gap: 2px;
	color: var(--light2);
	text-decoration: none;
	font-size: 16px;
}

header .box .lang a:hover, header .box .lang a.active {
	color: var(--white);
}

header .box .lang a:not(:last-child)::after {
	content: "|";
	color: var(--light2);
}

/*--------*/

/**/

footer {
	background: url('../images/gradient-glass.webp') right bottom no-repeat, var(--dark);
	border-radius: 45px 45px 0 0;
	padding: 60px 45px 90px;
}

footer .box {
	display: grid;
	grid-template-columns: 475px auto;
	gap: 40px;
}

footer .box .map {
	width: 100%;
	height: 100%;
}

footer .box .map iframe {
	width: 100% !important;
	height: 100% !important;
	vertical-align: top;
	border-radius: 22px;
}

footer .box .info {
	display: flex;
	flex-direction: column;
	gap: 56px;
}

footer .box .info .title .h2 {
	color: rgba(255, 255, 255, 0.90);
	font-size: 45px;
	font-weight: 600;
	text-transform: uppercase;
	line-height: 100%;
}

footer .box .info .title p {
	color: rgba(255, 255, 255, 0.90);
	font-size: 15px;
	line-height: 22px;
}

footer .box .info .items {
	gap: 10px;
}

footer .box .info .items .addr {
	display: flex;
	align-items: center;
	gap: 80px;
	justify-content: space-between;
}

footer .box .info .items a {
	color: rgba(255, 255, 255, 0.90);
	font-size: 14px;
	line-height: 18px;
	text-decoration: none;
	display: flex;
	align-items: center;
	gap: 8px;
}

footer .box .info .items a::before {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	content: "";
	display: flex;
	flex-shrink: 0;
}

footer .box .info .items .addr a::before {
	background: url('../images/Pin_alt_light.svg') center center no-repeat, rgba(241, 241, 241, 0.90);
}

footer .box .info .items .phone a::before {
	background: url('../images/Phone_light.svg') center center no-repeat, rgba(241, 241, 241, 0.90);
}

footer .box .info .items .email a::before {
	background: url('../images/Message_light.svg') center center no-repeat, rgba(241, 241, 241, 0.90);
}

footer .box .info .items .addr p {
	color: rgba(255, 255, 255, 0.90);
	font-size: 14px;
	line-height: 20px;
	white-space: nowrap;
}

footer .box .info .items a:hover {
	text-decoration: underline;
	color: var(--white);
}

footer .box .form form {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

footer .box .form form .form-group.submit {
	margin-top: 18px;
}

.form-group {
	position: relative;
}

.form-group input[type="text"], .form-group input[type="tel"], .form-group input[type="email"] {
	width: 100%;
	height: 44px;
	border-radius: 20px;
	padding: 0 28px;
	border: 1px solid var(--white);
	background: var(--white);
	color: var(--dark);
	font-size: 16px;
	transition: var(--all-inout);
}

form input[type="text"].wpcf7-not-valid, form input[type="tel"].wpcf7-not-valid, form input[type="email"].wpcf7-not-valid, form textarea.wpcf7-not-valid {
	border: 1px solid #f00;
}

.form-group input[type="submit"] {
	width: 100%;
	height: 54px;
	padding: 0 54px;
	border-radius: 27px;
	border: 0;
	background-image: url('../images/but-symbol.webp');
	background-position: left center;
	background-repeat: no-repeat;
	background-size: contain;
	background-color: var(--light);
	color: var(--dark);
	font-size: 18px;
	text-transform: uppercase;
	cursor: pointer;
}

.form-group input[type="submit"]:hover {
	background-color: var(--white);
}

.form-group.but p {
	width: 100%;
}

.wpcf7-response-output, .wpcf7-not-valid-tip {
  	display: none !important;
}

.wpcf7-spinner {
  	position: absolute;
  	right: 30px;
  	top: 50%;
  	transform: translateY(-50%);
}

/*--------*/

/**/

.first-slider {
	background: var(--dark);
	border-radius: 45px;
	padding: 180px 0 80px;
	position: relative;
	overflow: hidden;
}

.first-slider .image {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: flex-end;
}

.first-slider .image img {
	height: 100%;
	width: auto;
}

.first-slider .box {
	display: flex;
	align-items: center;
	gap: 120px;
}

.first-slider .box .image-box img {
	max-height: 390px;
	margin-top: -150px;
}

.first-slider .box .info {
	width: 100%;
	max-width: 580px;
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	gap: 75px;
}

.first-slider .box .info .logo img {
	max-width: 100%;
}

/*--------*/

/**/

.home-services {
	padding: 30px 0 90px;
}

.home-services h2 {
	color: var(--dark);
	text-align: center;
	font-size: 55px;
	font-weight: 600;
	line-height: 150%;
	text-transform: uppercase;
}

/*.home-services .box {
	margin-top: 40px;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 28px;
}*/

.home-services .box {
	margin-top: 40px;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 28px;
}

.home-services .box .services-buts {
	gap: 28px;
}

.home-services .box .item {
	border-radius: 22px;
	background: rgba(241, 241, 241, 0.90);
	display: flex;
	flex-direction: column;
	padding: 6px 6px 24px 6px;
	gap: 20px;
	text-decoration: none;
}

.home-services .box .services-buts .item.active {
	display: none;
}

/*.home-services .box .item:first-child {
	grid-column-start: 1;
	grid-column-end: 3;
	grid-row-start: 1;
	grid-row-end: 3;
	display: flex;
	flex-direction: column;
	border-radius: 42px;
	padding: 24px 24px 40px 24px;
	gap: 24px;
}*/

.home-services .box .item .img {
	width: 100%;
	height: 185px;
	border-radius: 16px;
	overflow: hidden;
}

/*.home-services .box .item:first-child .img {
	height: 275px;
}*/

.home-services .box .item .img img {
	transition: var(--all-inout);
	scale: 1;
}

.home-services .box .item:hover .img img {
	scale: 1.05;
}

.home-services .box .item:first-child .img {
	border-radius: 18px;
}

.home-services .box .item .info, .services-content .tabcontent .info {
	padding: 0 60px 0 20px;
	display: flex;
	flex-direction: column;
	position: relative;
}

/*.home-services .box .item:first-child .info {
	padding: 0 70px 0 0;
}*/

.home-services .box .item .info::after, .services-content .tabcontent .info::after {
	width: 42px;
	height: 42px;
	border-radius: 50%;
	content: "";
	background: url('../images/service-arrow.svg') center center no-repeat, linear-gradient(282deg, #9069FF -127.65%, #13121F 90.77%);
	position: absolute;
	right: 8px;
	top: 0px;
	transition: var(--all-inout);
}

.home-services .box .item:hover .info::after, .services-content .tabcontent:hover .info::after {
	rotate: 90deg;
}

.home-services .box .item .info .title {
	color: var(--dark);
	font-size: 16px;
	font-weight: 500;
	line-height: 20px;
	text-transform: uppercase;
	transition: var(--all-inout);
}

.home-services .box .item:hover .info .title {
	color: var(--violet);
}

/*.home-services .box .item:first-child .info .title {
	font-size: 28px;
	font-weight: 500;
	line-height: normal;
	text-transform: uppercase;
}

.home-services .box .item:first-child .info .title a {
	color: var(--dark);
	text-decoration: none;
}

.home-services .box .item:first-child .info .title a:hover {
	color: var(--violet);
}

.home-services .box .item:first-child .info .text {
	color: rgba(26, 25, 74, 0.60);
	font-size: 16px;
	font-weight: 300;
	line-height: normal;
	text-transform: lowercase;
}


.home-services .box .item:first-child .links {
	margin-top: 40px;
	}

.home-services .box .item:first-child .links ul {
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding: 0;
	list-style: none;
	}
	
	.home-services .box .item:first-child .links ul li {
	padding-left: 39px;
	font-size: 16px;
	font-weight: 300;
	position: relative;
	}
	
	.home-services .box .item:first-child .links ul li::before {
		width: 8px;
	height: 8px;
	border-radius: 50%;
	content: "";
	left: 8px;
	top: 8px;
	background: var(--violet);
	position: absolute;
	}
	
.home-services .box .item:first-child .links ul li a {
	line-height: 24px;
	color: var(--dark);
	text-decoration: none;
}

.home-services .box .item:first-child .links ul li a:hover {
	color: var(--violet);
}*/
	
.services-content .tabcontent .info::after {
	width: 60px;
	height: 60px;
	background: url('../images/service-arrow.svg') center center / 22px auto no-repeat, linear-gradient(282deg, #9069FF -127.65%, #13121F 90.77%);
}

.home-services .box .services-content {
	border-radius: 42px;
	background: rgba(241, 241, 241, 0.90);
	/*height: fit-content;*/
}

.home-services .box .services-content .tabcontent .inner {
	display: flex;
	flex-direction: column;
	border-radius: 42px;
	padding: 24px 24px 40px 24px;
	gap: 24px;
	background: rgba(241, 241, 241, 0.90);
}

.home-services .box .services-content .tabcontent .inner .img {
	border-radius: 28px;
	height: 275px;
}

.home-services .box .services-content .tabcontent .inner .title {
	font-size: 28px;
	font-weight: 500;
	line-height: normal;
	text-transform: uppercase;
	color: var(--dark);
	cursor: pointer;
}

.home-services .box .services-content .tabcontent .inner .text {
	color: rgba(26, 25, 74, 0.60);
	font-size: 16px;
	font-weight: 300;
	line-height: normal;
	text-transform: lowercase;
}

.home-services .box .services-content .tabcontent .inner .links {
	margin-top: 40px;
}

.home-services .box .services-content .tabcontent .inner .links ul {
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding: 0;
	list-style: none;
}

.home-services .box .services-content .tabcontent .inner .links ul li {
	padding-left: 39px;
	font-size: 16px;
	font-weight: 300;
	position: relative;
}

.home-services .box .services-content .tabcontent .inner .links ul li::before {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	content: "";
	left: 8px;
	top: 8px;
	background: var(--violet);
	position: absolute;
}

.home-services .box .services-content .tabcontent .inner .links ul li a {
	line-height: 24px;
	color: var(--dark);
	text-decoration: none;
}

.home-services .box .services-content .tabcontent .inner .links ul li a:hover {
	color: var(--violet);
}

/*--------*/

/**/

.slider-text-block {
	padding: 90px 0;
	background: url('../images/gradient-glass-bg.webp') left bottom no-repeat, var(--dark);
}

.slider-text-block h2 {
	color: rgba(255, 255, 255, 0.90);
	text-shadow: 0px 4.031px 4.031px rgba(0, 0, 0, 0.25);
	font-size: 55px;
	font-weight: 600;
	line-height: 100%;
	text-transform: uppercase;
}

.slider-text-block p.subtitle {
	margin-top: 32px;
	color: rgba(255, 255, 255, 0.90);
	font-size: 35px;
	font-weight: 300;
	line-height: 100%;
	text-transform: uppercase;
}

.slider-text-block .box {
	display: grid;
	grid-template-columns: auto 510px;
	gap: 36px;
	margin-top: 80px;
}

.slider-text-block .box .text > * {
	color: var(--white);
	font-size: 16px;
	font-weight: 400;
	line-height: 180%;
}

.slider-text-block .box .text strong {
	font-weight: 600;
}

.text-content p, .text-content ul, .text-content ol {
	font-size: 16px;
	font-weight: 400;
	line-height: 180%;
}

.text-content ul {
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.text-content ul li {
	padding-left: 39px;
	position: relative;
}

.text-content ul li::before {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	border: 1px solid rgba(255, 255, 255, 0.25);
	background: rgba(219, 217, 228, 0.70);
	content: "";
	position: absolute;
	left: 8px;
	top: 10px;
	display: flex;
}

.slider-text-block .box .text .but {
	margin-top: 40px;
}

.slider-text-block .box .gallery {
	position: relative;
	overflow: hidden;
}

.slider-text-block .box .gallery .gallery-inner {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 36px;
	width: 100%;
	position: absolute;
	left: 0;
	top: 0;
}

.slider-text-block .box .gallery .col {
	width: 100%;
	max-width: 237px;
}

.slider-text-block .box .gallery .col .item {
	margin: 10px 0;
}

.slider-text-block .box .gallery .col:last-child {
  	transform: rotate(180deg);
}

.slider-text-block .box .gallery .col:last-child .item {
  	transform: rotate(180deg);
}

.slider-text-block .box .gallery .col .item .inner {
	position: relative;
	display: flex !important;
	flex-direction: column;
	gap: 8px;
}

.slider-text-block .box .gallery .col .item .inner::before {
	width: 28px;
	height: 28px;
	border-radius: 50%;
	content: "";
	background: url('../images/arrow-up.svg') center center no-repeat, var(--white);
	position: absolute;
	top: 12px;
	right: 14px;
}

.slider-text-block .box .gallery .col .item .inner::after {
	width: 44px;
	height: 44px;
	border-radius: 50%;
	content: "";
	background: url('../images/logo-symbol.webp') center center / 34px auto no-repeat, var(--white);
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.slider-text-block .box .gallery .col .item .before, .slider-text-block .box .gallery .col .item .after {
	width: 100%;
	height: 155px;
	border-radius: 16px;
}

.slider-text-block .box .gallery .col .item .type {
	position: absolute;
	left: 10px;
	bottom: 10px;
	display: flex;
	align-items: center;
}

.slider-text-block .box .gallery .col .item .type .icon {
	width: 20px;
	height: 20px;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	background: var(--white);
}

.slider-text-block .box .gallery .col .item .type .icon img {
	max-height: 12px;
}

.slider-text-block .box .gallery .col .item .type p {
	display: flex;
	color: var(--white);
	font-size: 13px;
	line-height: 20px;
	text-transform: uppercase;
	padding: 0 14px;
	border-radius: 10px;
	border: 1px solid #FFF;
	background: rgba(255, 255, 255, 0.25);
	backdrop-filter: blur(1px);
}

.slider-text-block .box .image {
	position: relative;
}

.slider-text-block .box .image .image-text {
	position: absolute;
	z-index: 2;
	left: 0;
	top: -20px;
	padding: 0 20px;
	height: 40px;
	display: flex;
	line-height: 40px;
	background: var(--violet);
	color: var(--white);
	font-size: 16px;
	font-style: italic;
	font-weight: 500;
	border-radius: 20px;
}

.slider-text-block .box .image img {
	border-radius: 32px;
	min-height: 340px;
}

.slider-text-block .box .image iframe {
	width: 100% !important;
	height: 100% !important;
	min-height: 340px;
	border-radius: 32px;
}

.slider-text-block.slider-info-text-block .box {
	display: flex;
}

.slider-text-block.slider-info-text-block .box .image {
	width: 100%;
	max-width: 555px;
}

/*--------*/

/**/

.numbers-block {
	background: linear-gradient(280deg, #878789 0%, #FFF 99.04%);
	border-radius: 0 0 45px 45px;
}

.numbers-block .info .box {
	padding: 90px 0;
	display: flex;
	justify-content: space-between;
	gap: 115px;
}

.numbers-block .info .box .title-box h2 {
	color: var(--dark);
	font-size: 55px;
	font-weight: 600;
	line-height: 100%;
}

.numbers-block .info .box .title-box p.subtitle {
	color: var(--dark);
	font-size: 36px;
	font-weight: 300;
	line-height: 100%;
}

.numbers-block .numbers {
	border-radius: 45px;
	background: url('../images/noise.webp') center center, rgba(26, 25, 74, 0.70);
	box-shadow: 0px 3.596px 13.483px 0px rgba(19, 18, 31, 0.15);
	backdrop-filter: blur(8.988763809204102px);
	padding: 24px 0;
}

.numbers-block .numbers .box {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.numbers-block .numbers .box .item {
	flex-direction: column;
	display: flex;
}

.numbers-block .numbers .box .item:nth-child(2n) .number {
	order: 1;
}

.numbers-block .numbers .box .item:nth-child(2n) .text {
	order: 2;
}

.numbers-block .numbers .box .item .text {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
}

.numbers-block .numbers .box .item:last-child .text p {
	order: 2;
	text-align: right;
}

.numbers-block .numbers .box .item:last-child .text .icon  {
	order: 1;
}

.numbers-block .numbers .box .item .text p {
	font-size: 16px;
	font-weight: 300;
	line-height: 150%;
	text-transform: uppercase;
	color: rgba(241, 241, 241, 0.90);
}

.numbers-block .numbers .box .item .text p b, .numbers-block .numbers .box .item .text p strong {
	font-weight: 600;
}

.numbers-block .numbers .box .item .text .icon {
	width: 60px;
	height: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.numbers-block .numbers .box .item .text .icon img {
	max-width: 60px;
	max-height: 60px;
}

.numbers-block .numbers .box .item .number {
	color: var(--white);
	font-size: 100px;
	font-weight: 600;
	line-height: 100%;
	text-transform: uppercase;
}

.numbers-block .numbers .box .item:nth-child(1) {
	max-width: 295px;/*255*/
}

.numbers-block .numbers .box .item:nth-child(2) {
	max-width: 275px;
}

.numbers-block .numbers .box .item:nth-child(3) {
	max-width: 255px;
}

/*--------*/

/**/

.doctors-widget {
	padding: 70px 0 90px;
}

.doctors-widget h2 {
	color: var(--dark);
	font-size: 55px;
	font-weight: 600;
	line-height: 100%;
	text-transform: uppercase;
}

.doctors-widget p.subtitle {
	margin-top: 32px;
	color: var(--dark);
	font-size: 35px;
	font-weight: 300;
	line-height: 100%;
	text-transform: uppercase;
}

.doctors-widget .box {
	margin-top: 80px;
	margin-left: -10px;
	margin-right: -10px;
}

.doctors-widget .box .item {
	margin: 0 10px;
}

.doctors-widget .box .item img {
	transition: var(--all-inout);
}

.doctors-widget .box .item:hover img {
	scale: 1.05;
}

.doctors-widget .box .item .item-inner > p {
	color: var(--dark);
	font-size: 14px;
	line-height: 100%;
	text-align: center;
	opacity: 0;
	transition: var(--all-inout);
}

.doctors-widget .box .item:hover .item-inner > p {
	opacity: 1;
}

.doctors-widget .box .item .img {
	height: 320px;
	border-radius: 16px;
	position: relative;
}

.doctors-widget .box .item .img span {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	display: block;
	padding: 16px;
	text-align: center;
	border-radius: 16px;
	background: url('../images/noise.webp') center center, rgba(26, 25, 74, 0.70);
	box-shadow: 0px 2.807px 10.525px 0px rgba(19, 18, 31, 0.15);
	backdrop-filter: blur(7.016611099243164px);
	color: var(--white);
	font-size: 16px;
	line-height: 100%;
	text-transform: uppercase;
	transition: var(--all-inout);
	opacity: 0;
}

.doctors-widget .box .item:hover .img span {
	opacity: 1;
}

.doctors-widget .box .slick-dots {
	display: flex !important;
	align-items: center;
	list-style: none;
	padding: 0;
	position: absolute;
	top: -55px;
	right: 0;
}

.doctors-widget .box .slick-dots button {
	width: 64px;
	height: 1px;
	border-radius: 0px;
	background: #E5D1FF;
	transition: var(--all-out);
	border: 0;
	padding: 0;
	font-size: 0;
	display: flex;
}

.doctors-widget .box .slick-dots .slick-active button {
	transition: var(--all-in);
	border-radius: 2px;
	height: 3px;
	background: var(--violet);
}

/*--------*/

/**/

.page-title-block {
	padding-top: 130px;
	padding-bottom: 50px;
	position: relative;
	border-radius: 45px;
	overflow: hidden;
}

.page-title-block .image {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}

.page-title-block .image::before {
	content: "";
	width: 100%;
	height: 100%;
	background: rgba(20, 5, 34, 0.75);
	content: "";
	position: absolute;
	left: 0;
	top: 0;
}

.page-title-block .box h1 {
	color: rgba(255, 255, 255, 0.90);
	text-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15);
	font-size: 55px;
	font-weight: 400;
	line-height: 105%;
}

.page-title-block .box .date {
	color: rgba(255, 255, 255, 0.90);
	text-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15);
	font-size: 16px;
	font-weight: 400;
}

.page-title-block .box .buts {
	display: flex;
	align-items: center;
	gap: 32px;
}

.page-title-block .box .buts a:last-child:not(:first-child)::before, .page-title-block .box .buts a:last-child:not(:first-child)::after {
	display: none;
}

.page-title-block .box .buts a:last-child:not(:first-child) {
	padding-left: 36px;
	padding-right: 36px;
	border: 2px solid #FFF;
	background: rgba(94, 94, 105, 0.40);
	backdrop-filter: blur(4px);
	color: var(--white);
}

.page-title-block .box .buts a:last-child:not(:first-child):hover {
	color: var(--dark);
	background: var(--white);
}

/*--------*/

/**/

.breadcrumbs-block {
	padding: 9px 0;
}

.breadcrumbs-block .box {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

.breadcrumbs > span:not(:last-child)::after {
	content: "/";
	margin-left: 6px;
	margin-right: 8px;
	color: #857E99;
}

.breadcrumbs > span {
	font-size: 15px;
	line-height: 28px;
	color: var(--violet);
}

.breadcrumbs > span > a {
	color: #857E99;
	text-decoration: none;
}

.breadcrumbs > span > a:hover {
	color: var(--violet);
}



/*--------*/

/**/

.prices-info {
	padding: 40px 0 80px;
}

.prices-info .box {
	gap: 18px;
}

.prices-info .box .panel {
	overflow: hidden;
	transition: var(--all-inout);
	max-height: 0;
}

.prices-info .box button {
	height: 80px;
	border-radius: 25px;
	border: 1px solid rgba(26, 25, 74, 0.70);
	background: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0 60px 0 20px;
	color: var(--dark);
	font-size: 22px;
	font-weight: 700;
	line-height: normal;
	position: relative;
}

.prices-info .box button:hover, .prices-info .box button.active {
	background: var(--light);
	transition: var(--all-in);
}

.prices-info .box button .price {
	text-align: right;
	font-size: 14px;
	font-weight: 400;
	line-height: normal;
	display: flex;
	gap: 6px;
	align-items: baseline;
	padding-right: 63px;
	position: relative;
}

.prices-info .box button .price span {
	color: var(--violet);
	font-size: 19px;
	font-weight: 700;
	line-height: normal;
}

.prices-info .box button::after {
	width: 40px;
	height: 40px;
	content: "";
	border-radius: 50%;
	border: 1px solid var(--violet);
	position: absolute;
	right: 20px;
	top: calc(50% - 20px);
	background: url('../images/price-arrow.svg') 50% 55% no-repeat;
	transition: var(--all-inout);
}

.prices-info .box button.active::after {
	rotate: 180deg;
}

.prices-info .box .panel .list {
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding: 0 20px;
}

.prices-info .box .panel .list .row:not(:last-child) {
	border-bottom: 1px solid var(--light);
	padding-bottom: 24px;
}

.prices-info .box .panel .list .row:first-child {
	padding-top: 24px;
}

.prices-info .box .panel .list .row:last-child {
	padding-bottom: 24px;
}

.prices-info .box .panel .list .row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 40px;
}

.prices-info .box .panel .list .row .price {
	text-align: right;
	font-size: 14px;
	font-weight: 400;
	line-height: normal;
	display: flex;
	gap: 6px;
	align-items: baseline;
	position: relative;
}

.prices-info .box .panel .list .row .price span {
	color: var(--violet);
	font-size: 19px;
	font-weight: 700;
	line-height: normal;
}

.prices-info .box .panel .list .row .name {
	font-size: 16px;
}

.prices-info .box .panel .list .row .price span.old {
	margin-right: 18px;
	font-weight: 400;
	font-size: 14px;
	text-decoration: line-through;
	color: var(--grey-text);
}

.prices-info .box .panel .list .row .price > div {
	flex-shrink: 0;
}

/*--------*/

/**/

.results-list {
	padding: 40px 0 80px;
}

.results-list .item {
	display: grid;
	grid-template-columns: 275px auto;
	gap: 40px;
	padding: 24px 36px;
	border-radius: 32px;
	box-shadow: 0px 5.949px 11.155px 0px rgba(0, 0, 0, 0.10);
}

.results-list .item .info h2 {
	font-size: 22px;
	text-transform: uppercase;
}

.results-list .item .info .text h3 {
	font-size: 20px;
}

.results-list .item .info .text ol, .results-list .item .info .text ul {
	gap: 4px;
}

.results-list .item .info .text.text-content p, .results-list .item .info .text.text-content ul, .results-list .item .info .text.text-content ol {
	font-size: 14px;
}

.results-list .item .images {
	display: flex;
	flex-direction: column;
	gap: 6px;
	position: relative;
}

.results-list .item .images .image {
	width: 100%;
	height: 100%;
}

.results-list .item .images::after {
  	width: 54px;
  	height: 54px;
  	border-radius: 50%;
  	content: "";
  	background: url('../images/logo-symbol.webp') center center / 44px auto no-repeat, var(--white);
  	position: absolute;
  	top: 50%;
  	left: 50%;
  	transform: translate(-50%, -50%);
}

.results-list .item .images .image:first-child {
	border-radius: 18px 18px 0 0;
}

.results-list .item .images .image:last-child {
	border-radius: 0 0 18px 18px;
}

.results-list .item .but a {
	border: 1px solid var(--light);
}

.results-list .item:nth-child(2n+1) {
	grid-template-columns: auto 275px;
}

.results-list .item:nth-child(2n+1) .images {
	order: 2;
}

.results-list .item:nth-child(2n+1) .info {
	order: 1;
}

.pagination {
	margin-top: 75px;
}

.pagination > div  {
	display: flex;
	align-items: center;
	gap: 18px;
	justify-content: center;
}

/*.pagination a, .pagination span {
	display: flex;
	width: 44px;
	height: 44px;
	border-radius: 10px;
	background: transparent;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	text-align: center;
	font-size: 18px;
	font-weight: 400;
	line-height: 20px;
	color: var(--grey-text);
}

.pagination a:hover, .pagination span {
	background: var(--violet-field);
	color: var(--white);
}*/

.pagination a, .pagination span.current {
	position: relative;
	overflow: hidden;
}

.pagination span.current {
	height: 42px;
    padding: 0 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 8px;
	background: var(--violet);
	color: var(--white);
	width: 42px;
}

.pagination a {
	width: 42px;
	height: 42px;
    padding: 0 16px;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 8px;
    background-size: 200%;
    background-position: 100% 50%;
    text-decoration: none;
    font-size: 18px;
    font-weight: 500;

	background: #F1F1F1;
    color: var(--violet);
    overflow: hidden;
}

.pagination .current span {
	color: var(--white);
	position: relative;
	z-index: 2;
}

.pagination a:hover {
	background: var(--violet);
	color: var(--white);
}

.pagination a span {
	position: relative;
	z-index: 2;
}

.pagination span.extend {
	background: transparent;
	color: var(--dark);
	border-radius: 8px;
	height: 42px;
	border: 1px solid #F1F1F1;;
	width: 42px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.pagination a.previouspostslink, .pagination a.nextpostslink {
	width: 80px;
	font-size: 0;
}

.pagination a.previouspostslink span, .pagination a.nextpostslink span {
	font-size: 0;
}

.pagination a.previouspostslink span::before, .pagination a.nextpostslink span::before {
	display: flex;
	width: 10px;
	height: 22px;
	content: "";
	background: url('../images/pagination-arrow.svg') center center / contain no-repeat;
	filter: invert(1);
	transition: var(--all-inout);
}

.pagination a.previouspostslink:hover span::before, .pagination a.nextpostslink:hover span::before {
	filter: invert(0);
}

.pagination a.previouspostslink span::before {
	rotate: 180deg;
}

.pagination a.last {
	display: none;
}


/*--------*/

/**/

.services-list {
	padding: 110px 0 100px;
  	background: url('../images/gradient-glass-bg.webp') left bottom no-repeat, var(--dark);
  	border-radius: 45px;
	position: relative;
}

.services-list::after {
	width: 357px;
	height: 441px;
	content: "";
	position: absolute;
	top: 90px;
	right: 0;
	background: url('../images/_MG_5958.webp') top right no-repeat;
	z-index: 3;
}

.services-list .breadcrumbs > span {
	color: #DBD9E4;
}

.services-list .breadcrumbs span > a:hover {
	color: #DBD9E4;
}

.services-list .breadcrumbs + h1 {
	margin-top: 26px;
}

.services-list h1 {
	color: rgba(255, 255, 255, 0.90);
	text-shadow: 0px 2px 2px rgba(0, 0, 0, 0.15);
	font-size: 55px;
	font-weight: 600;
	line-height: 100%;
	text-transform: uppercase;
	max-width: 950px;
	margin-left: auto;
	margin-right: auto;
}

.services-list .box.services-box {
	max-width: 950px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 60px;
	display: grid;
	grid-template-columns: 370px auto;
	gap: 140px;
}

.services-list .box.services-box .tab-buts {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 16px;
}

.services-list .box.services-box .tab-buts button {
	padding: 0 24px;
	height: 56px;
	border-radius: 28px;
	background: rgba(255, 255, 255, 0.90);
	border: 1px solid rgba(255, 255, 255, 0.90);
	color: var(--dark);
	font-size: 16px;
}

.services-list .box.services-box .tab-buts button:hover, .services-list .box.services-box .tab-buts button.active {
	transition: var(--all-in);
	border-color: var(--white);
	background: #1A194A;
	color: var(--white);
}

.services-list .box.services-box .tab-content {
	width: 100%;
	border-radius: 30px;
	background: rgba(255, 255, 255, 0.90);
	box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
	padding: 28px 26px;
}

.services-list .box.services-box .tab-content .tabcontent .inner {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.services-list .box.services-box .tab-content .tabcontent .inner .title h2 {
	color: var(--dark);
	font-size: 20px;
	font-weight: 600;
	line-height: 105%;
	text-transform: uppercase;
}

.services-list .box.services-box .tab-content .tabcontent .inner .title h2 a {
	text-decoration: none;
	color: var(--dark);
}

.services-list .box.services-box .tab-content .tabcontent .inner .title h2 a:hover {
	color: var(--violet);
}

.services-list .box.services-box .tab-content .tabcontent .inner .images {
	display: grid;
	grid-template-columns: 1fr 1fr;
}

.services-list .box.services-box .tab-content .tabcontent .inner .images .image {
	width: 100%;
	height: 95px;
	position: relative;
}

.services-list .box.services-box .tab-content .tabcontent .inner .images .image:first-child {
	border-radius: 22px 0 0 22px;
}

.services-list .box.services-box .tab-content .tabcontent .inner .images .image:last-child {
	border-radius: 0 22px 22px 0;
}

.services-list .box.services-box .tab-content .tabcontent .inner .images .image span {
	display: flex;
	height: 16px;
	border-radius: 6px;
	border: 1px solid var(--white);
	background: rgba(155, 155, 158, 0.50);
	justify-content: center;
	align-items: center;
	color: var(--white);
	font-size: 10px;
	position: absolute;
	left: 16px;
	top: 12px;
	width: 40px;
}

.services-list .box.services-box .tab-content .tabcontent .inner .links.text-content ul {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	font-size: 14px;
}

.services-list .box.services-box .tab-content .tabcontent .inner .links.text-content ul li {
	padding-left: 28px;
}

.services-list .box.services-box .tab-content .tabcontent .inner .links.text-content ul li a {
	text-decoration: none;
	color: var(--dark);
}

.services-list .box.services-box .tab-content .tabcontent .inner .links.text-content ul li a:hover {
	color: var(--violet);
}

.services-list .box.services-box .tab-content .tabcontent .inner .links.text-content ul li::before {
	border: 0;
	background: #1A194A;
}

.services-list .box.services-box .tab-content .tabcontent .inner .but {
	margin-top: 16px;
	height: 56px;
	border-radius: 28px;
	border: 1px solid var(--white);
	background: rgba(94, 94, 105, 0.40);
	backdrop-filter: blur(4.1300811767578125px);
}

.services-list .box.services-box .tab-content .tabcontent .inner .but a {
	background: linear-gradient(92deg, #13121F 1.91%, #9069FF 149.37%);
	color: var(--white);
}

.services-list .box.services-box .tab-content .tabcontent .inner .but a:hover {
	color: var(--dark);
}

.services-list .box.services-box .tab-content .tabcontent .inner .but a::before {
	background: var(--white);
}

.services-list .box.services-box .tab-content .tabcontent .inner .but a::after {
	filter: invert(0);
}

.tabcontent {
  	display: none;
  	-webkit-animation: fadeEffect 1s;
  	animation: fadeEffect 1s;
}

@-webkit-keyframes fadeEffect {
  	from {opacity: 0;}
  	to {opacity: 1;}
}

@keyframes fadeEffect {
  	from {opacity: 0;}
  	to {opacity: 1;}
}

/*--------*/

/**/

.why-we {
	padding: 80px 0 40px;
}

.why-we h2 {
	color: var(--dark);
	font-size: 55px;
	font-weight: 600;
	line-height: 100%;
	text-transform: uppercase;
}

.why-we p.subtitle {
	margin-top: 32px;
	color: var(--dark);
	font-size: 35px;
	font-weight: 300;
	line-height: 100%;
	text-transform: uppercase;
}

.why-we .box {
	margin-top: 80px;
	display: grid;
  	grid-template-columns: 340px auto;
  	gap: 40px;
}

.why-we .box .image {
	position: relative;
}

.why-we .box .image .inner {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: 20px;
}

.why-we .box .list {
	counter-reset: ll;
}

.why-we .box .list .item {
	counter-increment: ll;
	position: relative;
	padding: 28px 0 28px 110px;
	border-bottom: 1px solid var(--grey-text);
}

.why-we .box .list .item:first-child {
	padding-top: 0;
}

.why-we .box .list .item:last-child {
	padding-bottom: 0;
	border-bottom: 0;
}

.why-we .box .list .item::before {
	content: "(0"counter(ll)")";
	color: var(--grey-text);
	font-size: 14px;
	font-weight: 400;
	line-height: 140%;
	position: absolute;
	left: 0;
	top: 38px;
}

.why-we .box .list .item:first-child::before {
	top: 12px;
}

.why-we .box .list .item button {
	color: var(--dark);
	font-size: 28px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	text-transform: uppercase;
	background: none;
	border: 0;
	padding: 0;
	position: relative;
	width: 100%;
	text-align: left;
}

.why-we .box .list .item button::after {
	width: 40px;
	height: 32px;
	background-image: url('../images/acc-arrow.svg');
	background-position: right center;
	background-repeat: no-repeat;
	background-size: 40px auto;
	content: "";
	display: flex;
	position: absolute;
	right: 0px;
	top: 0;
}

.why-we .box .list .item button.active::after {
	background-image: url('../images/acc-close.svg');
	background-size: auto 32px;
}

.why-we .box .list .panel {
	max-height: 0px;
	transition: var(--all-inout);
	overflow: hidden;
}

.why-we .box .list .panel .inner {
	padding-top: 16px;
	padding-right: 207px;
}

.why-we .box .list .panel .inner > * {
	color: var(--grey-text);
	font-size: 16px;
	font-weight: 300;
	line-height: 137%;
}


/*--------*/

/**/

.service-text {
	padding: 30px 0 60px;
}

.service-text .box {
	border-radius: 32px;
	background: var(--white);
	box-shadow: 0px 8px 15px 0px rgba(0, 0, 0, 0.10);
	padding: 32px;
}

.service-text .box .open-content {
	display: flex;
	gap: 80px;
}

.service-text .box .image {
	width: 100%;
	max-width: 300px;
	flex-shrink: 0;
	/*max-height: 476px;*/
	position: relative;
}

.service-text .box .image .inner {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: 20px;
}

.service-text .box .text h2 {
	font-size: 26px;
	line-height: 150%;
	text-transform: uppercase;
}

.service-text .box .text .inner > *:not(:first-child) {
	margin-top: 16px;
}

.panel-title {
	color: var(--dark);
  	font-weight: 700;
  	line-height: normal;
  	font-size: 27px;
	padding: 24px 0;
	border-bottom: 1px solid var(--light);
}

.service-text .box-inner {
	max-height: 0px;
	transition: all 0.25s ease-in-out;
	overflow: hidden;
}

.service-text .box-inner > *:not(:first-child) {
	margin-top: 80px;
}

.service-text .box-inner.open {
	margin-top: 80px;
}

.service-text .box-inner .block {
	display: flex;
	gap: 80px;
}

.service-text .box-inner .block:nth-child(2n+1) .image {
	order: 1;	
}

.service-text .box-inner .block:nth-child(2n+1) .text {
	order: 2;	
}

.service-text .box-inner .text.inner > :not(:first-child), .service-text .box-inner .tiles-box .text > :not(:first-child) {
	margin-top: 16px;
}

.service-text .box-inner .tiles-box {
	margin-top: 24px;
}

.service-text .box-inner .tiles-box .tiles {
	margin-top: 24px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 30px;
}

.service-text .box-inner .tiles-box .tiles .item {
	display: flex;
	gap: 32px;
}

.service-text .box-inner .tiles-box .tiles .item .image {
	width: 258px;
	border-radius: 14px;
	flex-shrink: 0;
	max-height: 320px;
  	height: 320px;
}

.service-text .box-inner .tiles-box .tiles .item .image img {
	vertical-align: top;
}

.service-text .box-inner .tiles-box .tiles .item .text h3 {
	color: var(--dark);
	font-size: 16px;
	font-weight: 600;
	text-transform: uppercase;
}

.service-text .text .inner.open::after {
	opacity: 0;
	transition: var(--all-in);
}

.advantages .box .text {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.service-text .box > .read-more {
	cursor: pointer;
	width: fit-content;
	margin-left: auto;
	margin-right: auto;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	font-size: 14px;
	text-transform: lowercase;
	padding: 0 32px;
	border-radius: 60px;
	border: 1px solid var(--light);
	background: var(--white);
	transition: var(--all-out);
}

.service-text .box > .read-more {
	margin-top: 32px;
}

.service-text .box > .read-more:hover {
	background: var(--violet);
	border-color: var(--violet);
	transition: var(--all-in);
	color: var(--white);
}

.service-text .box > .read-more::after {
	width: 40px;
	height: 40px;
	content: "";
	display: flex;
	background: url('../images/Expand_right_light.svg') center center no-repeat;
	transition: var(--all-out);
}

.service-text .box > .read-more:hover::after {
	filter: invert(1);
}

.service-text .box > .read-more.open::after {
	transition: var(--all-in);
	rotate: 180deg;
}

.service-text .text-content ul, .service-text .text-content ol {
	gap: 12px;
}

/*--------*/

/**/

.prices-single-info {
	padding: 70px 0 40px;
}

.prices-single-info h2 {
	color: var(--dark);
	font-size: 55px;
	font-weight: 600;
	line-height: 100%;
	text-transform: uppercase;
}

.prices-single-info .box {
	margin-top: 60px;
}

.prices-single-info .list {
	display: flex;
	flex-direction: column;
	gap: 24px;
	padding: 0 20px;
}

.prices-single-info .list .row:not(:last-child) {
	border-bottom: 1px solid var(--light);
	padding-bottom: 24px;
}

.prices-single-info .list .row:first-child {
	padding-top: 24px;
}

.prices-single-info .list .row:last-child {
	padding-bottom: 24px;
}

.prices-single-info .list .row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 40px;
}

.prices-single-info .list .row .price {
	text-align: right;
	font-size: 14px;
	font-weight: 400;
	line-height: normal;
	display: flex;
	gap: 6px;
	align-items: baseline;
	position: relative;
}

.prices-single-info .list .row .price span {
	color: var(--violet);
	font-size: 19px;
	font-weight: 700;
	line-height: normal;
}

.prices-single-info .list .row .name {
	font-size: 16px;
}


/*--------*/

/**/

.form-block {
	padding: 40px 0;
}

.form-block .box {
	padding: 54px 40px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 40px;
	border-radius: 32px;
	background: url('../images/form-gradient-glass.webp') left bottom no-repeat, var(--dark);
}

.form-block .box .text .title {
	text-transform: uppercase;
	color: var(--white);
	font-weight: 600;
}

.form-block .box .text p {
	color: rgba(255, 255, 255, 0.71);
	font-size: 16px;
	line-height: 180%;
}

.form-block .box .form {
	width: 100%;
	max-width: 413px;
	flex-shrink: 0;
}

.form-block .box form {
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.form-block .box form .form-group.but {
	margin-top: 16px;
}

.form-block .box form .form-group.but p {
	width: 100%;
}

.form-block .box form .form-group.agree {
	margin-top: 12px;
}

form .form-group.agree input[type="checkbox"] {
	display: none;
}

form .form-group.agree input[type="checkbox"] + span {
	padding-left: 40px;
	line-height: 20px;
	color: rgba(255, 255, 255, 0.80);
	font-size: 10px;
	position: relative;
	display: block;
	cursor: pointer;
	padding-left: 32px;
	line-height: 20px;
}

form .form-group.agree input[type="checkbox"] + span a {
	color: rgba(255, 255, 255, 0.80);
	margin: 0 4px;
}

form .form-group.agree input[type="checkbox"] + span::before {
	border-radius: 2px;
	width: 20px;
	height: 20px;
	border: 1px solid rgba(255, 255, 255, 0.80);
	position: absolute;
	left: 0px;
	top: 0;
	content: "";
}

form .form-group.agree input[type="checkbox"] + span::after {
	width: 8px;
	height: 12px;
	border-bottom: 3px solid var(--white);
	border-right: 3px solid var(--white);
	content: "";
	rotate: 45deg;
	position: absolute;
	top: 2px;
	left: 6px;
	scale: 0;
	transition: var(--all-inout);
}

form .form-group.agree input[type="checkbox"]:checked + span::after {
	scale: 1;
}


/*--------*/

/**/

.advantages {
	padding: 40px 0;
}

.advantages h2 {
	color: var(--dark);
	font-size: 55px;
	font-weight: 600;
	line-height: 100%;
	text-transform: uppercase;
}

.advantages .box {
	margin-top: 35px;
	display: flex;
	gap: 40px;
	align-items: flex-start;
}

.advantages .box .items {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: 1fr 1fr;
	gap: 40px;
	width: 100%;
	max-width: 580px;
	flex-shrink: 0;
}

.advantages .box .items .item {
	border-radius: 32px;
	background: var(--white);
	box-shadow: 0px 8px 15px 0px rgba(0, 0, 0, 0.10);
	padding: 32px;
	display: flex;
	flex-direction: column;
	gap: 30px;
	max-width: 270px;
	width: 100%;
}

.advantages .box .items .item .img {
	border-radius: 12px;
	height: 160px;
}

.advantages .box .items .item p {
	opacity: 0.62;
	font-size: 18px;
	font-weight: 600;
	line-height: 150%;
	text-transform: uppercase;
}

.advantages .box .text .inner > *:not(:first-child) {
	margin-top: 30px;
}

.advantages .box .text .inner {
	max-height: 585px;
	overflow: hidden;
	position: relative;
	transition: var(--all-inout);
}

.advantages .box .text {
	display: flex;
	flex-direction: column;
	gap: 24px;
}

.advantages .box .text .text-content ul, .advantages .box .text .text-content ol {
	gap: 12px;
}

.advantages .box .text .text-content ul li {
	padding-left: 28px;
}

.advantages .box .text .text-content ul li::before {
	border: 0;
	background: #1A194A;
}

.advantages .box .text .inner::after {
  	width: 100%;
  	height: 32px;
  	background: var(--white);
  	background: -moz-linear-gradient(0deg, var(--white) 15%, rgba(249,249,249,0) 100%);
  	background: -webkit-linear-gradient(0deg, var(--white) 15%, rgba(249,249,249,0) 100%);
  	background: linear-gradient(0deg, var(--white) 15%, rgba(249,249,249,0) 100%);
  	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="#ffffff",GradientType=1);
  	content: "";
  	position: absolute;
  	left: 0;
  	bottom: 0;
  	z-index: 2;
	transition: var(--all-inout);
}

.advantages .box .text .inner.open::after {
	opacity: 0;
}

.advantages .box .text .read-more {
	cursor: pointer;
	width: fit-content;
	margin-left: auto;
	margin-right: auto;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	font-size: 14px;
	text-transform: lowercase;
	padding: 0 32px;
	border-radius: 60px;
	border: 1px solid var(--light);
	background: var(--white);
	transition: var(--all-out);
	color: var(--violet);
}

.advantages .box .text .read-more:hover {
	background: var(--violet);
	border-color: var(--violet);
	transition: var(--all-in);
	color:var(--white);
}

.advantages .box .text .read-more::after {
	width: 40px;
	height: 40px;
	content: "";
	display: flex;
	background: url('../images/Expand_right_light.svg') center center no-repeat;
	transition: var(--all-out);
}

.advantages .box .text .read-more:hover::after {
	filter: invert(1);
}

.advantages .box .text .read-more.open::after {
	transition: var(--all-in);
	rotate: 180deg;
}


/*--------*/

/**/

.contacts-block {
	padding: 110px 0 100px;
  	background: url('../images/gradient-glass-bg.webp') left bottom no-repeat, var(--dark);
  	border-radius: 45px;
	position: relative;
}

.contacts-block .breadcrumbs > span {
	color: #DBD9E4;
}

.contacts-block .breadcrumbs span > a:hover {
	color: #DBD9E4;
}

.contacts-block .breadcrumbs + h1 {
	margin-top: 26px;
}

.contacts-block .box.contacts-box {
	margin-top: 50px;
	display: grid;
	grid-template-columns: 576px auto;
	gap: 90px;
}

.contacts-block .box.contacts-box .contacts-services {
	width: 100%;
	border-radius: 24px;
	background: var(--white);
	box-shadow: 0px 2px 2px 0px rgba(104, 80, 151, 0.10);
	padding: 32px;
}

.contacts-block .box.contacts-box .contacts-services h1 {
	color: var(--dark);
	font-size: 24px;
	line-height: normal;
	text-transform: uppercase;
	text-align: center;
}


.contacts-block .box.contacts-box .contacts-services .list a {
	display: flex;
	padding-left: 36px;
	position: relative;	
	font-size: 16px;
	color: var(--dark);
	line-height: 24px;
	text-decoration: none;
}

.contacts-block .box.contacts-box .contacts-services .list a img {
	max-width: 24px;
	max-height: 24px;
	position: absolute;
	left: 0;
	top: 12px;
	transform: translateY(-50%);
}

.contacts-block .box.contacts-box .contacts-services .list a:hover {
	color: var(--violet);
}

.contacts-block .box.contacts-box .contacts-info .worktime, .contacts-block .box.contacts-box .contacts-info .email, .contacts-block .box.contacts-box .contacts-info .addr, .contacts-block .box.contacts-box .contacts-info .phone {
  	padding-left: 38px;
  	color: var(--white);
  	position: relative;
  	line-height: 1.5;
	font-size: 15px;
	font-weight: 500;
}

.contacts-block .box.contacts-box .contacts-info .worktime span, .contacts-block .box.contacts-box .contacts-info .email span, .contacts-block .box.contacts-box .contacts-info .addr span, .contacts-block .box.contacts-box .contacts-info .phone span {
	font-weight: 400;
	display: block;
}

.contacts-block .box.contacts-box .contacts-info .worktime {
  	background: url('../images/calendar-tick.svg') left center / 30px auto no-repeat;
}

.contacts-block .box.contacts-box .contacts-info .phone {
  	background: url('../images/Phone_light2.svg') left center / 30px auto no-repeat;
}

.contacts-block .box.contacts-box .contacts-info .addr {
  	background: url('../images/Pin_alt_light2.svg') left center / 30px auto no-repeat;
}

.contacts-block .box.contacts-box .contacts-info div a {
	color: var(--white);
	text-decoration: none;
}

.contacts-block .box.contacts-box .contacts-info div a:hover {
	text-decoration: underline;
}

.contacts-block .box.contacts-box .contacts-info .social {
	margin-top: 24px;
}

.contacts-block .box.contacts-box .contacts-info .social p {
	color: var(--white);
	font-size: 20px;
	font-weight: 500;
	line-height: normal;
}

.contacts-block .box.contacts-box .contacts-info .social div {
	display: flex;
	align-items: center;
	gap: 20px;
}

.contacts-block .box.contacts-box .contacts-info .social div a {
	display: flex;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	border: 1px solid rgba(255, 255, 255, 0.20);
	background: url('../images/noise.webp') center center, rgba(255, 255, 255, 0.30);
	box-shadow: 0px 2px 6px 0px rgba(44, 33, 57, 0.15), 0px 2px 15px 0px rgba(217, 217, 217, 0.25);
	backdrop-filter: blur(12px);
	font-size: 0;
	justify-content: center;
	align-items: center;
}

.contacts-block .box.contacts-box .contacts-info .social div a:hover {
	background-color: var(--white);
}

.contacts-block .box.contacts-box .contacts-info .social div a img {
	max-width: 30px;
	max-height: 30px;
	transition: var(--all-inout);
}

.contacts-block .box.contacts-box .contacts-info .social div a:hover img {
	filter: invert(1);
}


/*--------*/

/**/

.articles-list {
	padding: 60px 0 80px;
}

.articles-list .box {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 64px 36px;
}

.article-item {
	border-radius: 28px;
	background: var(--white);
	box-shadow: 10.667px 16px 26.667px 0px rgba(0, 0, 0, 0.15);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.article-item .img {
	width: 100%;
	height: 196px;
	border-radius: 28px;
	overflow: hidden;
	position: relative;
	display: flex;
}

.article-item .img img {
	scale: 1;
	transition: var(--all-inout);
}

.article-item:hover .img img {
	scale: 1.05;
}

.article-item .img .date {
	height: 23px;
	border-radius: 12px;
	border: 1px solid var(--white);
	background: rgba(155, 155, 158, 0.50);
	position: absolute;
	left: 24px;
	bottom: 16px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: var(--white);
	font-size: 14px;
	line-height: normal;
	padding: 0 16px;
}

.article-item .title {
	padding: 0 21px;	
}

.article-item .title a {
	color: var(--dark);
	font-weight: 600;
	line-height: normal;
	text-transform: uppercase;
	text-decoration: none;
	font-size: 22px;
	line-height: 1.4;
	display: flex;
}

.article-item .title a:hover {
	color: var(--violet);
}

.article-item .excerpt {
	padding: 0 21px;
}

.article-item .excerpt p, .article-item .excerpt ul, .article-item .excerpt ol {
	font-size: 15px;
	line-height: 1.3;
}

.article-item .link {
	padding: 0 21px 28px 21px;
}

.article-item .link a {
	width: 100%;
	height: 54px;
	border: 1px solid var(--violet);
	display: flex;
	padding: 0 24px;
	justify-content: center;
	align-items: center;
	text-transform: uppercase;
	color: var(--violet);
	text-align: center;
	font-size: 18px;
	font-weight: 600;
	line-height: normal;
	text-decoration: none;
	border-radius: 24px;
}

.article-item:hover .link a {
	transition: var(--all-in);
	background: var(--violet);
	color: var(--white);
}

/*--------*/

/**/

body.error404, body.page-template-page-thank {
	background: url('../images/error-gradient-glass.webp') left center no-repeat, var(--dark);
}

body.error404 footer, body.page-template-page-thank footer {
	background: none;
}

body.error404 .breadcrumbs-block, body.page-template-page-thank .breadcrumbs-block {
	padding-top: 110px;
}

body.error404 .breadcrumbs > span, body.page-template-page-thank .breadcrumbs > span {
	color: #DBD9E4;
}

body.error404 .breadcrumbs span > a:hover, body.page-template-page-thank .breadcrumbs span > a:hover {
	color: #DBD9E4;
}

body.error404 .breadcrumbs + h1, body.page-template-page-thank .breadcrumbs + h1 {
	margin-top: 26px;
}

.info-page {
	padding: 40px 0 60px;
}

.info-page .box {
	display: flex;
	align-items: center;
	flex-direction: column;
	gap: 50px;
}

.info-page .box h1 {
	color: rgba(255, 255, 255, 0.90);
	text-align: center;
	font-size: 48px;
	font-weight: 400;
	line-height: 48.794px;
}

.info-page .box p {
	color: rgba(255, 255, 255, 0.90);
	font-size: 22px;
	font-weight: 500;
	line-height: 20.167px;
}

/*--------*/

/**/

img.alignright {
	float: right;
	margin: 0 0 24px 24px;
}

img.alignleft {
	float: left;
	margin: 0 24px 24px 0;
}

img.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

a img.alignright {
	float: right;
	margin: 0 0 24px 24px;
}

a img.alignleft {
	float: left;
	margin: 0 24px 24px 0;
}

a img.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.article-text .text img.alignright, .article-text .text img.alignleft {
  max-width: calc(50% - 16px);
}

.article-text .text img {
	border-radius: 25px;
}

.article-text .text img:not(.alignright):not(.alignleft) {
	margin-top: 24px;
	margin-bottom: 24px;
}

.article-text {
	padding: 40px 0 60px;
}

.article-text .box {
	border-radius: 32px;
  	background: var(--white);
  	box-shadow: 0px 8px 15px 0px rgba(0, 0, 0, 0.10);
  	padding: 32px;
}

.article-text .text-content ul li::before, .service-text .text-content ul li::before {
	border: 0;
	background: var(--violet);
}

.text-content ol {
	padding: 0;
	list-style: none;
	counter-reset: ol;
}

.text-content ol li {
  	padding-left: 39px;
  	position: relative;
	counter-increment: ol
}

.text-content ol li::before {
	content: counter(ol)".";
	color: var(--violet);
	left: 8px;
	font-weight: 500;
	position: absolute;
	top: 0;
}

.slider-text-block .text-content ol li::before {
	color: var(--white);
}

.text-content p a, .text-content ol a, .text-content ul a {
	color: var(--violet);
	text-decoration: none;
}

.text-content p a:hover, .text-content ol a:hover, .text-content ul a:hover {
	text-decoration: underline;
}

.text-content blockquote {
	background: var(--grey-light);
	border-radius: 25px;
	padding: 24px 24px 24px 68px;
	display: flex;
	flex-direction: column;
	gap: 16px;
	position: relative;
}

.text-content blockquote::before {
	width: 28px;
	height: 28px;
	content: "";
	position: absolute;
	left: 24px;
	top: 24px;
	background: url('../images/quotes.svg') center center / 28px auto no-repeat;
	opacity: 0.1;
}

/*--------*/

/**/

#form {
	background: url('../images/noise.webp') center center, rgba(26, 25, 74, 0.70);
	box-shadow: 0px 3.596px 13.483px 0px rgba(19, 18, 31, 0.15);
	backdrop-filter: blur(9px);
	border-radius: 25px;
}

.modal-box {
	display: flex;
	flex-direction: column;
	gap: 32px;
	width: 330px;
}

.modal-box .title {
	text-align: center;
	font-size: 28px;
	text-transform: uppercase;
	font-weight: 500;
	color: var(--white);
}

.modal-box .form form {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.modal-box .form form .form-group.submit {
	margin-top: 18px;
}

/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/

/**/



/*--------*/