@import url('https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300;0,400;0,600;0,700;1,300;1,400;1,600;1,700&display=swap');
:root {
	--title-color: #000;
	--white: #fff;
	--text-color: #696e7b;
	--blue: #3464e0;
	--purple: #f3f5ff;
	--title-color--dark: #3b3d42;
	--title-color--light: #3c424f;
	--transition: all ease-in-out 0.2s;
	--section-margin: 100px;
	--section-margin--small: calc(100px / 2.2);
}
@media (max-width: 767px) {
	:root {
		--section-margin: 50px;
		--section-margin--small: calc(50px / 2.2);
	}
}

* {
	padding: 0;
	margin: 0;
	border: 0;
}

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

:focus,
:active {
	outline: none;
}

a:focus,
a:active {
	outline: none;
}

nav,
footer,
header,
aside {
	display: block;
}

html,
body {
	height: 100%;
	width: 100%;
	font-size: 100%;
	line-height: 1;
	font-size: 14px;
	-ms-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

input,
button,
textarea {
	font-family: inherit;
}

input::-ms-clear {
	display: none;
}

button {
	cursor: pointer;
}

button::-moz-focus-inner {
	padding: 0;
	border: 0;
}

a,
a:visited {
	text-decoration: none;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
}

a:hover {
	text-decoration: none;
}

ul li,
ol li {
	list-style-position: inside;
}

img {
	vertical-align: top;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-size: inherit;
	font-weight: 400;
}

.phone-button {
}
.phone-button__number {
  display: inline-flex;
  width: unset!important;
  max-width: unset!important;
}
.phone-button__number img {
  width: 100%!important;
  max-width: 100%!important;
  object-fit: contain;
}
.phone-button__number.rem img {
  height: 1rem;
}
.phone-button__number.inverse img {
  filter: invert(100%);
}


.header {
	position: fixed;
	inset: 0 0 auto 0;
	z-index: 5;
}

@media (max-width: 1130px) {
	.header-contacts {
		display: none;
	}
}
.header-contacts__wrapper {
	display: inline-flex;
	gap: 53px;
	padding: 1rem 0;
}
.header-contacts__item {
	display: inline-flex;
	gap: 5px;
	align-items: baseline;
}
.header-contacts a:hover {
	color: var(--white);
	text-decoration: underline;
}

.header-nav {
	box-shadow: 2px 4px 29px rgba(0, 0, 0, 0.1);
}
.header-nav__wrapper {
	padding: 1rem 0;
	display: grid;
	grid-template-columns: 260px 1fr;
	align-items: center;
	gap: 3rem;
}
@media (max-width: 1130px) {
	.header-nav__wrapper {
		grid-template-columns: 160px 1fr;
	}
}
.header-nav__logo-wrapper {
	display: inline-flex;
    flex-direction: column;
    gap: 3px;
}
@media (max-width: 1130px) {
	.header-nav__logo-wrapper {
		height: 40px;
		width: 160px;
	}
}
.header-nav__logo {
	width: max-content;
	height: 100%;
    max-height: 35px;
	-o-object-fit: contain;
	object-fit: contain;
}
.header-nav__nav {
	display: inline-flex;
	align-items: center;
	margin-left: auto;
	transition: var(--transition);
}

@media (max-width: 1130px) {
	.header-nav__nav {
		position: absolute;
		opacity: 0;
		top: 80px;
		left: 100vw;
		background: var(--blue);
		height: 100vh;
		height: 100dvh;
		overflow-y: scroll;
		padding: 20px 0;
		flex-direction: column;
		align-items: center;
		justify-content: start;
		width: 100%;
		text-align: center;
		z-index: 100;
		overflow-y: scroll;
	}
	.header-nav__nav * {
		color: var(--white) !important;
	}
}
.header-nav__list {
	display: inline-flex;
	gap: 0.3rem 44px;
	flex-wrap: wrap;
	align-items: center;
	justify-content: end;
}
@media (max-width: 1130px) {
	.header-nav__list {
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 0.75rem 0;
		margin-right: 0;
	}
}
.header-nav__list-item {
	margin-bottom: 0;
    list-style: none;
}
@media (min-width: 1131px) {
	.header-nav__list-item_mobile {
		display: none;
	}
}
.header-burger {
	display: none;
}
@media (max-width: 1130px) {
	.header-burger {
		display: inline-flex;
		margin-left: auto;
		position: relative;
		width: 35px;
		height: 14px;
		align-items: center;
		justify-content: end;
	}
	.header-burger:before,
	.header-burger:after {
		content: '';
		background-color: var(--blue);
		position: absolute;
		height: 2px;
		transition: var(--transition);
	}
	.header-burger:before {
		width: 35px;
		top: 0;
		transition: var(--transition);
	}
	.header-burger:after {
		width: 25px;
		bottom: 0;
		transition: var(--transition);
	}
	.header-burger.pressed:before,
	.header-burger.pressed:after {
		width: 30px;
	}
	.header-burger.pressed:before {
		transform: rotate(45deg);
		top: 6px;
	}
	.header-burger.pressed:after {
		transform: rotate(-45deg);
		bottom: 6px;
	}
	.header-burger.pressed .header-burger__line {
		opacity: 0;
	}
}
.header-burger__line {
	background-color: var(--blue);
	width: 30px;
	height: 2px;
	transition: var(--transition);
}

.footer {
	background-image: url('../../img/bg-big.jpg');
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	color: var(--white);
	padding: 40px 0 46px;
}
.footer a {
	color: var(--white);
}
.footer a:hover {
	color: var(--white);
	text-decoration: underline;
}
.footer__info-wrapper {
	display: grid;
	grid-template-columns: 35% 1fr 1fr;
	gap: 2rem 115px;
}
@media (max-width: 991px) {
	.footer__info-wrapper {
		gap: 2rem 5rem;
	}
}
@media (max-width: 991px) {
	.footer__info-item:first-of-type {
		grid-column: 1/-1;
	}
}
@media (max-width: 610px) {
	.footer__info-item {
		grid-column: 1/-1;
	}
}
.footer__info-title {
	font-size: 1.625rem;
	line-height: 1.7rem;
	position: relative;
	padding-bottom: 1rem;
	margin-bottom: 1.3rem;
	font-weight: 600;
}
.footer__info-title:after {
	content: '';
	position: absolute;
	inset: auto 0 0 0;
	height: 1px;
	background-color: var(--white);
	width: 205px;
	max-width: 100%;
}
.footer__info-text {
	font-weight: 300;
	font-size: 0.875rem;
	line-height: 1.375rem;
}
.footer__link-list {
	display: grid;
	gap: 1rem;
	align-items: start;
}
.footer__link-list-item {
	margin-bottom: 0;
}
.footer__link-list,
.footer__link {
	list-style: none;
}
.footer__info-contacts-wrapper {
	display: grid;
	gap: 1.1rem;
}
.footer__info-contacts-item {
	display: inline-flex;
	align-items: baseline;
	gap: 5px;
	margin-bottom: 0;
}
.footer__copyright-wrapper {
	margin-top: 90px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}
@media (max-width: 767px) {
	.footer__copyright-wrapper {
		margin-top: 50px;
	}
}
.footer__copyright-wrapper > :nth-of-type(1) {
	font-size: 0.625rem;
	letter-spacing: 2.6px;
}
.footer__copyright-wrapper > :nth-of-type(2) {
	font-size: 0.75rem;
	text-align: center;
}
.footer__copyright-wrapper > :nth-of-type(3) {
	font-size: 0.75rem;
	text-align: right;
}
@media (max-width: 767px) {
	.footer__copyright-wrapper {
		grid-template-columns: 100%;
	}
	.footer__copyright-wrapper > :nth-of-type(2),
	.footer__copyright-wrapper > :nth-of-type(3) {
		text-align: left;
	}
}

html,
body {
	height: 100%;
}

body {
	overflow-x: hidden;
	min-height: 100vh;
	min-height: 100dvh;
	font-family: 'Open Sans';
	font-style: normal;
	font-size: 16px;
	line-height: 1.8rem;
	font-weight: 400;
	color: var(--text-color);
}
@media (max-width: 767px) {
	body {
		font-size: 15px;
		line-height: 1.5rem;
	}
}

h1,
.h1 {
	font-weight: 700;
	font-size: 3rem;
	line-height: 4.5rem;
	color: var(--title-color--light);
}
h1:where(:not(:last-child)),
.h1:where(:not(:last-child)) {
	margin-bottom: 1.25rem;
}
@media (max-width: 767px) {
	h1,
	.h1 {
		font-size: 2.8rem;
		line-height: 3.5rem;
	}
}

h2,
.h2 {
	font-weight: 600;
	font-size: 2.25rem;
	line-height: 3.05rem;
	color: var(--title-color--dark);
}
h2:where(:not(:last-child)),
.h2:where(:not(:last-child)) {
	margin-bottom: 1.25rem;
}
@media (max-width: 767px) {
	h2,
	.h2 {
		font-size: 2rem;
		line-height: 2.5rem;
	}
}

h3,
.h3 {
	font-weight: 600;
	font-size: 1.5rem;
	line-height: 1.75rem;
	color: var(--title-color--light);
}
h3:where(:not(:last-child)),
.h3:where(:not(:last-child)) {
	margin-bottom: 1rem;
}
@media (max-width: 767px) {
	h3,
	.h3 {
		font-size: 1.3rem;
		line-height: 1.45rem;
	}
}

h4,
.h4 {
	font-weight: 600;
	font-size: 1.25rem;
	line-height: 1.75rem;
	color: var(--title-color--light);
	margin-bottom: 1rem;
}

strong {
	font-weight: 600;
}

a {
	color: var(--text-color);
	transition: var(--transition);
}
a:hover {
	color: var(--blue);
}

p:where(:not(:last-child)) {
	margin-bottom: 1rem;
}

li:where(:not(:last-child)) {
	margin-bottom: 1rem;
}

ul.marked > li {
	display: list-item;
	list-style-type: disc;
	margin-left: 2rem;
}

img {
	max-width: 100%;
}

.page-wrapper {
	min-height: 100%;
	display: flex;
	flex-direction: column;
	position: relative;
	overflow-x: hidden;
}

.main {
	flex: 1 1 auto;
}

.wrapper {
	width: 1110px;
	margin: 0 auto;
}
@media (max-width: 1130px) {
	.wrapper {
		width: 95%;
		padding: 0 0.5rem;
	}
}

.bg-blue {
	background-color: var(--blue);
}
.bg-blue * {
	color: var(--white);
}

.bg-purple {
	background-color: var(--purple);
}

.bg-banner-bg {
	background-image: url(../../img/bg-banner.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	padding: 60px 0 55px !important;
}
.bg-banner-bg * {
	color: var(--white);
}

.blue {
	color: var(--blue);
}

.btn {
	color: var(--title-color--light);
	background-color: var(--white);
	font-weight: 600;
	padding: 1rem;
	min-width: 190px;
	width: -moz-max-content;
	width: max-content;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	transition: var(--transition);
}
.btn:hover {
	opacity: 0.9;
	color: var(--title-color--light);
}
.btn_blue {
	background-color: var(--blue);
	color: var(--white);
	border-color: var(--blue);
	color: var(--white) !important;
}

body.no-scroll {
	overflow: hidden;
}

@media (prefers-reduced-motion) {
	section {
		transition: none;
	}
}
.mb {
	margin-bottom: var(--section-margin);
}

.mb-small {
	margin-bottom: var(--section-margin--small);
}

.mt {
	margin-top: var(--section-margin);
}

.mt-small {
	margin-top: var(--section-margin--small);
}

.center {
	text-align: center;
}

.hero {
	isolation: isolate;
	position: relative;
}
.hero__img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.hero__img:first-of-type {
	z-index: -2;
}
.hero__img:last-of-type {
	z-index: -1;
}
.hero__wrapper {
	display: grid;
	min-height: 650px;
	align-items: center;
	padding: 3rem 0;
}
@media (max-width: 991px) {
	.hero__wrapper {
		min-height: 500px;
	}
}
.hero__info-wrapper {
	display: inline-grid;
	width: 50%;
}
@media (max-width: 991px) {
	.hero__info-wrapper {
		width: 75%;
	}
}
@media (max-width: 510px) {
	.hero__info-wrapper {
		width: 100%;
	}
}
.hero__subtitle {
	margin-bottom: 1rem;
}
.hero__text {
	font-size: 1.25rem;
	margin-bottom: 40px;
}
.hero__btn {
	font-weight: 400;
	font-size: 1.7rem;
	line-height: 1.7rem;
}
@media (max-width: 767px) {
	.hero__btn {
		font-size: 1.4rem;
		line-height: 1.4rem;
	}
}

.services {
	padding: 50px 0;
}
.services__wrapper {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2rem 58px;
	place-content: center;
}
@media (max-width: 767px) {
	.services__wrapper {
		grid-template-columns: 100%;
	}
}
.services__item {
	display: inline-grid;
	/*grid-template-columns: 60px 1fr;
	align-items: center;*/
    align-content: start;
	gap: .5rem;
}
/*@media (max-width: 991px) {
	.services__item {
		grid-template-columns: 100%;
		text-align: center;
		align-items: start;
	}
}
@media (max-width: 767px) {
	.services__item {
		grid-template-columns: 60px 1fr;
		align-items: center;
		text-align: left;
	}
}*/
.services__info-wrapper {
	display: grid;
	gap: 10px;
	align-items: start;
	text-align: center;
    text-wrap: balance;
}
.services__icon-wrapper {
	text-align: center;
}
.cutoff-text {
	--lines-col: 5;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: var(--lines-col);
	line-clamp: var(--lines-col);
	-webkit-box-orient: vertical;
}

.cutoff-btn {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	cursor: pointer;
	text-decoration: underline;
}
.cutoff-btn:before {
	content: 'Show more';
	font-weight: 600;
	font-size: 1rem;
}
.cutoff-btn:checked:before {
	content: 'Show less';
}

.info__wrapper {
	display: grid;
	gap: 80px;
}
@media (max-width: 991px) {
	.info__wrapper {
		gap: 40px;
	}
}
@media (max-width: 767px) {
	.info__wrapper {
		gap: 2rem;
	}
}
.info__wrapper_img-left {
	grid-template-columns: 35% 1fr;
}
@media (max-width: 991px) {
	.info__wrapper_img-left {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 767px) {
	.info__wrapper_img-left {
		grid-template-columns: 100%;
	}
}
.info__wrapper_img-left .info__img-wrapper {
	order: 1;
}
.info__wrapper_img-left .info__text-wrapper {
	order: 2;
}
.info__wrapper_img-right {
	grid-template-columns: 1fr 35%;
}
@media (max-width: 991px) {
	.info__wrapper_img-right {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 767px) {
	.info__wrapper_img-right {
		grid-template-columns: 100%;
	}
}
.info__wrapper_img-right .info__text-wrapper {
	order: 1;
}
.info__wrapper_img-right .info__img-wrapper {
	order: 2;
}
.info__img-wrapper {
	width: 100%;
	height: 100%;
}
.info__img {
	width: 100%;
	/*height: 100%;*/
	-o-object-fit: contain;
	object-fit: contain;
}
.info__text-wrapper {
	margin-block: auto;
}
.info__list {
	display: grid;
}
.info__list-item {
	position: relative;
	display: inline-flex;
	gap: 1rem;
	align-items: center;
}
.info__list-item::before {
	content: '';
	display: inline-block;
	width: 1.25rem;
	height: 1rem;
	min-width: 1.25rem;
	min-height: 1rem;
	background-image: url(../../img/accept.svg);
	background-size: contain;
	background-repeat: no-repeat;
}

.services-linking {
	padding: 60px 0 80px;
}
.services-linking__title {
	text-align: center;
	margin-bottom: 50px;
}
.services-linking__list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1.25rem 1.875rem;
}
@media (max-width: 991px) {
	.services-linking__list {
		grid-template-columns: repeat(3, 1fr);
	}
}
@media (max-width: 767px) {
	.services-linking__list {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 480px) {
	.services-linking__list {
		grid-template-columns: 100%;
	}
}
.services-linking__link {
	display: grid;
	text-align: center;
	place-content: center;
	padding: 15px;
	border: 1px solid var(--blue);
	color: var(--blue);
	transition: var(--transition);
}
.services-linking__link:hover {
	color: var(--white);
	background-color: var(--blue);
}

.map__title {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}
@media (max-width: 767px) {
	.map__title {
		width: 100%;
	}
}
.map__info-wrapper {
	display: grid;
	grid-template-columns: 1fr 60%;
}
@media (max-width: 610px) {
	.map__info-wrapper {
		grid-template-columns: 100%;
		gap: 2rem;
	}
}
.map__list {
	margin-block: auto;
	display: grid;
}
@media (max-width: 610px) {
	.map__list {
		grid-template-columns: repeat(2, 1fr);
		gap: 1rem;
	}
}
.map__list-item {
	display: inline-flex;
	gap: 1.25rem;
	align-items: center;
}
@media (max-width: 610px) {
	.map__list-item {
		gap: 0.5rem;
	}
}
.map__list-item:before {
	content: '';
	width: 1rem;
	height: 1rem;
	min-width: 1rem;
	min-height: 1rem;
	border-radius: 50%;
}
@media (max-width: 610px) {
	.map__list-item:before {
		width: 0.7rem;
		height: 0.7rem;
		min-width: 0.7rem;
		min-height: 0.7rem;
	}
}
.map__list-item:nth-child(1):before {
	background-color: #be5151;
}
.map__list-item:nth-child(2):before {
	background-color: #957acf;
}
.map__list-item:nth-child(3):before {
	background-color: #68a35e;
}
.map__list-item:nth-child(4):before {
	background-color: #a6425a;
}
.map__list-item:nth-child(5):before {
	background-color: #be5151;
}
.map__list-item:nth-child(6):before {
	background-color: #957acf;
}
.map__list-item:nth-child(7):before {
	background-color: #68a35e;
}
.map__list-item:nth-child(8):before {
	background-color: #a6425a;
}
.map__img-wrapper {
	width: 100%;
	height: 100%;
}
.map__img {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
}

.blue-banner {
	padding: 81px 0;
}
@media (max-width: 767px) {
	.blue-banner {
		padding: 50px 0;
	}
}
.blue-banner__wrapper {
	display: grid;
	grid-template-columns: 1fr 200px;
	align-items: center;
}
@media (max-width: 767px) {
	.blue-banner__wrapper {
		grid-template-columns: 100%;
		gap: 2rem;
	}
}
.blue-banner__btn {
	min-width: 191px;
	padding: 1rem;
}

.services-cards__wrapper {
	display: grid;
}
.services-cards a {
	color: var(--title-color--light);
}
.services-cards a:hover {
	color: var(--blue);
}
.services-cards__title {
	margin-bottom: 40px;
}
.services-cards__btn {
	margin-inline: auto;
}

.cards {
	display: inline-grid;
	width: 100%;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
	margin-bottom: 40px;
}
@media (max-width: 991px) {
	.cards {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 610px) {
	.cards {
		grid-template-columns: 100%;
	}
}
.cards__item {
	background-color: var(--purple);
	display: grid;
	justify-content: center;
	align-items: start;
	text-align: center;
	padding: 40px 23px 62px;
}
@media (max-width: 991px) {
	.cards__item {
		padding: 20px 16px 30px;
	}
}
.cards__img-icon-wrapper {
	width: -moz-max-content;
	width: max-content;
	background: var(--white);
	border-radius: 1000px;
	padding: 0 44px;
	margin-inline: auto;
	margin-bottom: 60px;
}
@media (max-width: 991px) {
	.cards__img-icon-wrapper {
		margin-bottom: 30px;
	}
}
.cards__icon-img {
	height: 82px;
	width: 82px;
}
@media (max-width: 610px) {
	.cards__icon-img {
		width: 55px;
		height: 55px;
	}
}
.cards__img-wrapper {
	width: 100%;
	margin-bottom: 30px;
}
.cards__img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.contacts-map {
	position: relative;
	min-height: 477px;
}
@media (max-width: 1199px) {
	.contacts-map {
		min-height: 300px;
	}
}
.contacts-map__wrapper {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 42px;
}
@media (max-width: 1199px) {
	.contacts-map__wrapper {
		gap: 2rem;
	}
}
@media (max-width: 991px) {
	.contacts-map__wrapper {
		grid-template-columns: 100%;
	}
}
.contacts-map__info-wrapper {
	display: grid;
	align-content: center;
	padding: 4rem 0;
}
@media (max-width: 991px) {
	.contacts-map__info-wrapper {
		padding: 2rem 0 0;
	}
}
.contacts-map__list {
	margin-top: 1rem;
}
.contacts-map__list-item {
	display: inline-flex;
	align-items: center;
	width: 100%;
}
.contacts-map__list-item-img {
	width: 25px;
	height: 25px;
	margin-right: 10px;
}
.contacts-map__map-wrapper {
	position: absolute;
	inset: 0 0 0 50%;
	height: 100%;
}
@media (max-width: 991px) {
	.contacts-map__map-wrapper {
		position: relative;
		width: 100%;
		inset: 0;
		height: 300px;
		margin-top: 2rem;
	}
}
.contacts-map__map-wrapper > * {
	width: 100%;
	height: 100%;
}

.testimonials__text {
	padding: 0 10rem;
}
@media (max-width: 991px) {
	.testimonials__text {
		padding: 0 2rem;
	}
}
.testimonials__slider {
	width: 100vw;
	margin-left: calc(-50vw + 50%);
}
.testimonials__slider-item {
	background-color: transparent;
	padding-top: 60px;
	cursor: pointer;
}
@media (max-width: 991px) {
	.testimonials__slider-item {
		padding-top: 40px;
	}
}
.testimonials__slider-img-wrapper {
	background-color: var(--purple);
	padding: 0 23px;
	margin-bottom: 40px;
}
.testimonials__slider-img {
	width: 54px;
	height: 48px;
}
.areas__title {
	margin-bottom: 2rem;
}
.areas__slider {
	padding-bottom: 40px !important;
}
.areas__slider-item {
	padding: 1rem 1rem 2rem;
}
.areas__slider-title {
	color: var(--title-color--light);
}
.areas__slider-title a {
	color: var(--title-color--light);
}
.areas__slider-title a:hover {
	color: var(--blue);
}
.areas__slider-pagination {
	bottom: 0 !important;
}

.brands__title {
	margin-bottom: 2rem;
}
.brands__item {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 136px;
}
.brands__img {
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
}

.faq__title {
	margin-bottom: 2rem;
}
.faq__sections-wrapper {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2rem;
}
@media (max-width: 767px) {
	.faq__sections-wrapper {
		grid-template-columns: 100%;
		gap: 0;
	}
}
.faq__item {
	background: var(--purple);
	width: 100%;
	border-radius: 15px;
	overflow: hidden;
	margin-bottom: 20px;
	cursor: pointer;
	transition: var(--transition);
}
.faq__item[open] {
	box-shadow: 4px 4px 14px rgba(0, 0, 0, 0.13);
	background: var(--white);
}
.faq__item[open] .faq__question {
	color: var(--blue);
}
.faq__item[open] .faq__question:after {
	color: var(--blue);
	transform: rotate(45deg);
	transition: var(--transition);
}
.faq__question {
	font-weight: 500;
	padding: 30px;
	display: inline-flex;
	align-items: center;
	width: 100%;
}
@media (max-width: 767px) {
	.faq__question {
		padding: 1rem;
	}
}
.faq__question::marker {
	content: none;
}
.faq__question:before {
	content: '?';
	display: inline-flex;
	justify-content: center;
	align-items: center;
	flex: 0 0 auto;
	width: 40px;
	height: 40px;
	margin-right: 15px;
	border-radius: 50%;
	background-color: var(--blue);
	color: var(--white);
	font-size: 1.5rem;
}
@media (max-width: 767px) {
	.faq__question:before {
		width: 2rem;
		height: 2rem;
		font-size: 1rem;
	}
}
.faq__question:after {
	content: '+';
	display: inline-flex;
	justify-content: center;
	align-items: center;
	flex: 0 0 auto;
	width: 2rem;
	height: 2rem;
	border-radius: 50%;
	margin-left: auto;
	font-size: 1.7rem;
	transition: var(--transition);
	color: #aebcd1;
}
.faq__answer {
	padding: 0 30px 30px 83px;
}
@media (max-width: 767px) {
	.faq__answer {
		padding-left: 4rem;
	}
}

.specialists__title {
	margin-bottom: 2rem;
}
.specialists__text {
	margin-bottom: 2rem;
}
.specialists__item {
	position: relative;
}
.specialists__img {
	width: 100%;
	height: 400px;
	-o-object-fit: cover;
	object-fit: cover;
}
.specialists__info-wrapper {
	position: absolute;
	inset: auto 0 0 0;
	background-color: rgba(243, 245, 255, 0.9);
	padding: 1.7rem;
	text-align: center;
	display: grid;
	place-content: center;
}
.specialists__name {
	margin-bottom: 5px;
}
.hero-simple {
	background-image: url(../../img/hero-banner.jpg);
	background-size: cover;
	width: 100%;
	height: 100%;
}
.hero-simple__wrapper {
	min-height: 300px;
	position: relative;
	padding: 91px 0;
}
@media (max-width: 991px) {
	.hero-simple__wrapper {
		padding: 65px 0 80px;
		min-height: unset;
	}
}
.hero-simple__info {
	display: grid;
	grid-template-columns: 1fr 200px;
	align-items: center;
}
@media (max-width: 767px) {
	.hero-simple__info {
		grid-template-columns: 100%;
		gap: 2rem;
	}
}
.hero-simple__info-wrapper * {
	color: var(--white);
}
.hero-simple__title {
	margin-bottom: 1rem;
}
.hero-simple__btn {
	color: var(--blue);
}

.breadcrumbs {
	display: inline-flex;
	position: absolute;
	inset: auto 0 25px 0;
}
.breadcrumbs-static .breadcrumbs {
	position: initial;
    margin-top: 3rem;
}
.breadcrumbs-static .breadcrumbs :is(.breadcrumbs__list, .breadcrumbs__list-link:not(:hover)) {
	color: inherit;
}
.breadcrumbs-static .breadcrumbs .breadcrumbs__list-link:hover {
	color: var(--blue);
}
.breadcrumbs__list {
	display: inline-flex;
	width: 100%;
	flex-wrap: wrap;
	gap: 0 0.5rem;
	color: var(--white);
    list-style: none;
    margin: 0;
}
.breadcrumbs__list-item {
	display: inline-flex;
	margin-bottom: 0;
    list-style: none;
}
.breadcrumbs__list-link {
	text-decoration: none;
	color: var(--white);
}
.breadcrumbs__list-link:hover {
	color: var(--white);
	text-decoration: none;
}
.areas-list__title {
	margin-bottom: 2rem;
}
.areas-list__wrapper {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 20px 30px;
}
@media (max-width: 767px) {
	.areas-list__wrapper {
		grid-template-columns: 100%;
	}
}
.areas-list__item {
	display: grid;
	isolation: isolate;
	position: relative;
}
.areas-list__item:hover .areas-list__item-name {
	color: var(--blue);
}
.areas-list__item::after {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: transparent;
	background-image: linear-gradient(
		89.7deg,
		#f3f5ff 20.79%,
		rgba(243, 245, 255, 0) 97.44%
	);
	opacity: 1;
}
.areas-list__img {
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.areas-list__item-name {
	position: absolute;
	inset: auto 0 20px 15px;
	z-index: 1;
	margin-bottom: 0;
	transition: var(--transition);
}

.articles__items-wrapper {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2rem;
}
@media (max-width: 991px) {
	.articles__items-wrapper {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 610px) {
	.articles__items-wrapper {
		grid-template-columns: 100%;
	}
}
.articles__item {
	box-shadow: 2px 4px 29px rgba(0, 0, 0, 0.1);
}
.articles__img-wrapper {
	display: grid;
	position: relative;
	isolation: isolate;
	width: 100%;
	height: 191px;
}
.articles__img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
    position: absolute;
    inset: 0;
    z-index: -1;
}
.articles__date-wrapper {
	position: absolute;
	inset: auto auto 0 1rem;
	background-color: var(--blue);
	color: var(--white);
	padding: 6px 28px 7px 23px;
	display: inline-flex;
	align-items: center;
	gap: 10px;
}
.articles__info-wrapper {
	padding: 1rem 1rem 1.75rem;
}
.articles__link {
	color: var(--title-color--light);
}
.articles__link:hover {
	color: var(--blue);
}
.articles__excerpt {
	--lines-col: 2;
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: var(--lines-col);
	line-clamp: var(--lines-col);
	-webkit-box-orient: vertical;
}

.price {
	padding: 50px 0;
}

.price__title {
	margin-bottom: 1rem;
}

.price__subtitle {
	color: var(--text-color);
	margin-bottom: 2.5rem;
	max-width: 650px;
	margin-left: auto;
	margin-right: auto;
}

.price__table {
	width: 100%;
	border-collapse: collapse;
}

.price__table tr:nth-child(odd) {
	background-color: #eef0f7;
}

.price__table tr:nth-child(even) {
	background-color: transparent;
}

.price__table td {
	padding: 1.25rem 2.5rem;
	color: var(--title-color--light);
}

.price__table td:last-child {
	text-align: right;
}

@media (max-width: 767px) {
	.price__table td {
		padding: 1rem 1.5rem;
	}
}

.map iframe {
	border: 0;
	height: 450px;
	width: 100%;
}
.map:not(.active) * {
	pointer-events: none;
}

.partners__items {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%),1fr));
    gap: 1rem;
    margin-top: 1rem;
}
.partners__image-wrapper {
	width: 100%;
	height: 50px;
}
.partners__img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.mail-form__wrapper {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: flex-start;
}

.mail-form__title {
  margin: 0 0 40px;
  color: #3d3d3d;
  font-size: 2.5rem;
  font-weight: 400;
  line-height: 1.2;
}

.mail-form__link-item {
  display: flex;
  gap: 24px;
  margin-bottom: 0;
  align-items: flex-start;
  padding: 32px 24px;
  background-color: #f0f0f0;
  border-radius: 0;
  transition: background-color 0.3s ease;
}

.mail-form__link-item:nth-child(odd) {
  background-color: #ffffff;
  border: 1px solid #ebebeb;
}

.mail-form__link-item:hover {
  background-color: #f9f9f9;
}

.mail-form__icon-wrapper {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: transparent;
  border-radius: 0;
}

.mail-form__icon {
  display: block;
  width: 24px;
  height: 24px;
  object-fit: contain;
  opacity: 0.7;
}

.mail-form__text-block {
  flex: 1;
  padding-top: 4px;
}

.mail-form__link-title {
  margin: 0 0 12px;
  font-size: 1.1rem;
  font-weight: 500;
  color: #3d3d3d;
}

.mail-form__link-link {
  display: inline-block;
  color: #7b8b99;
  text-decoration: none;
  font-size: 0.95rem;
  line-height: 1.6;
  text-align: center;
  transition: color 0.3s ease;
}

.mail-form__link-link:hover {
  color: #3d3d3d;
  text-decoration: none;
}

.mail-form__form-wrapper {
  background-color: #ffffff;
  padding: 0;
  border-radius: 0;
  box-shadow: none;
  grid-column: 2;
}

.mail-form__form-title {
  margin: 0 0 40px;
  font-size: 2rem;
  font-weight: 400;
  color: #3d3d3d;
  text-align: left;
}

.mail-form__input-wrapper {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.mail-form__input,
.mail-form__textarea {
  padding: 16px 20px;
  border: none;
  border-bottom: 1px solid #ebebeb;
  border-radius: 0;
  font-size: 0.95rem;
  font-family: inherit;
  transition: background-color 0.3s ease, border-color 0.3s ease;
  background-color: #ffffff;
  font-weight: 400;
  color: #3d3d3d;
}

.mail-form__input:nth-child(odd),
.mail-form__textarea:nth-child(odd) {
  background-color: #f8f8f8;
}

.mail-form__input:focus,
.mail-form__textarea:focus {
  outline: none;
  border-bottom-color: #3d3d3d;
  background-color: #ffffff;
}

.mail-form__input::placeholder,
.mail-form__textarea::placeholder {
  color: #999999;
  font-weight: 400;
}

.mail-form__textarea {
  resize: vertical;
  min-height: 140px;
  font-family: inherit;
  padding-top: 16px;
  border-bottom: 1px solid #ebebeb;
}

.mail-form__btn-wrapper {
  margin-top: 32px;
}

@media (max-width: 768px) {
  .mail-form__wrapper {
    grid-template-columns: 1fr;
    gap: 60px;
  }

  .mail-form__form-wrapper {
    grid-column: 1;
  }

  .mail-form__title {
    font-size: 2rem;
    margin-bottom: 30px;
  }

  .mail-form__form-title {
    font-size: 1.5rem;
    margin-bottom: 30px;
  }

  .mail-form__link-item {
    padding: 24px 16px;
    gap: 16px;
  }
}

@media (max-width: 480px) {
  .mail-form__wrapper {
    gap: 40px;
  }

  .mail-form__title {
    font-size: 1.5rem;
    margin-bottom: 20px;
  }

  .mail-form__form-title {
    font-size: 1.25rem;
    margin-bottom: 25px;
  }

  .mail-form__input,
  .mail-form__textarea {
    padding: 14px 16px;
    font-size: 16px;
  }
}


.linking__link-list {
	display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(275px, 100%),1fr));
    gap: 1rem;
}
.linking__link {
	width: 100%;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
}

.text-wrapper { 
    line-height: 1.6; 
}
.text-wrapper > h2 { 
    font-size: 32px; 
    font-weight: 700; 
    margin-bottom: 40px; 
    color: var(--title-color); 
}
.text-wrapper p { 
    margin-bottom: 20px; 
    color: var(--text-color); 
}
.text-wrapper h2, .text-wrapper h3, .text-wrapper h4, .text-wrapper h5, .text-wrapper h6 { 
    font-weight: 600; 
    margin: 30px 0 15px; 
    line-height: 1.3; 
    color: var(--title-color--dark); 
}
.text-wrapper h2 { 
    font-size: 28px; 
}
.text-wrapper h3 { 
    font-size: 24px; 
}
.text-wrapper h4 { 
    font-size: 20px; 
}
.text-wrapper ul, .text-wrapper ol, ul, ol { 
    margin: 20px 0 20px 20px; 
    list-style-position: inside; 
}
.text-wrapper li { 
    margin-bottom: 8px; 
    color: var(--text-color); 
}
.text-wrapper a { 
    color: var(--blue); 
    text-decoration: none; 
    transition: var(--transition); 
}
.text-wrapper a:hover { 
    text-decoration: underline; 
    color: var(--title-color--dark); 
}
.text-wrapper img { 
    max-width: 100%; 
    height: auto;
    display: block; 
    border-radius: 8px; 
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); 
    object-fit: contain; 
    margin: 30px 0;
}
.alignleft {
    float: left;
    margin-right: 1.5rem!important;
    margin-bottom: 1.5rem!important;
}
.alignright {
    float: right;
    margin-left: 1.5rem!important;
    margin-bottom: 1.5rem!important;
}
.aligncenter {
    clear: both;
    display: block;
    margin-left: auto!important;
    margin-right: auto!important;
    margin-bottom: 1.5rem;
}
.alignnone {
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
    width: 100%;
    clear: both;
}
@media (max-width: 991px) {
    .text-wrapper :is(.alignleft, .alignright) {
        max-width: 50%;
    }
}
@media (max-width: 767px) { 
    .text-wrapper img { 
        width: 100% !important; 
        height: auto;
        max-height: none; 
        margin: 1rem 0; 
        object-fit: cover; 
    }
    .text-wrapper :is(.alignleft, .alignright) {
        float: none;
        max-width: 100%;
        margin-left: 0!important;
        margin-right: 0!important;
        margin-bottom: 1.5rem;
    }
}
.text-wrapper {
    overflow: hidden;
}
.text-wrapper table { 
    width: 100%; 
    margin: 2em 0; 
    border-collapse: collapse; 
    font-size: 0.95em; 
    border: 1px solid #ddd;
}
.text-wrapper table-wrapper {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin: 2em 0;
}
.text-wrapper th, .text-wrapper td { 
    padding: 0.75em 1em; 
    border: 1px solid #ddd; 
    text-align: left; 
    vertical-align: top;
}
.text-wrapper th { 
    background: var(--blue); 
    color: var(--white); 
    font-weight: 600; 
}
.text-wrapper tbody tr:nth-child(even) { 
    background: var(--purple); 
}
.text-wrapper tbody tr { 
    background: var(--white); 
}
.text-wrapper blockquote { 
    margin: 2em 0; 
    padding: 1em 1.5em; 
    border-left: 4px solid var(--blue); 
    background: #f9f9f9; 
    border-radius: 4px; 
    color: var(--text-color); 
}
.text-wrapper blockquote p:last-child { 
    margin-bottom: 0; 
}
.text-wrapper strong, 
.text-wrapper b { 
    font-weight: 600; 
    color: var(--title-color--dark); 
}
.text-wrapper em, 
.text-wrapper i { 
    font-style: italic; 
}
.text-wrapper mark { 
    background: #fffb91; 
    padding: 0 2px; 
}
.text-wrapper del { 
    text-decoration: line-through; 
}
.text-wrapper code { 
    background: #f5f5f5; 
    padding: 2px 6px; 
    border-radius: 4px; 
    font-family: Consolas, Monaco, monospace; 
    font-size: 0.9em; 
    color: var(--text-color); 
}
.text-wrapper pre { 
    background: #272822; 
    color: #f8f8f2; 
    padding: 1em; 
    overflow-x: auto; 
    border-radius: 6px; 
    margin: 1.5em 0; 
}
.text-wrapper pre code { 
    background: none; 
    padding: 0; 
    color: inherit; 
}
.text-wrapper hr { 
    margin: 2em 0; 
    border: none; 
    border-top: 1px solid #ddd; 
}
.text-wrapper sup { 
    font-size: 0.8em; 
    vertical-align: super; 
}
.text-wrapper sub { 
    font-size: 0.8em; 
    vertical-align: sub; 
}
.text-wrapper dl { 
    margin: 1.5em 0; 
}
.text-wrapper dt { 
    font-weight: 600; 
}
.text-wrapper dd { 
    margin: 0 0 1em 1.5em; 
}
.text-wrapper figure { 
    margin: 2em 0; 
    text-align: center; 
}
.text-wrapper figcaption { 
    margin-top: 0.5em; 
    font-style: italic; 
    opacity: 0.8; 
}
.text-wrapper >:last-child { 
    margin-bottom: 0; 
}
.text-wrapper :is(h1,h2,h3,h4,h5,h6,p):first-child {
    margin-top: 0;
}
.text-wrapper .error { 
    background-color: rgba(178, 34, 34, 0.5); 
}
.text-wrapper .warning { 
    background-color: rgba(178, 168, 34, 0.5); 
}
.text-wrapper .success { 
    background-color: rgba(34, 178, 34, 0.5); 
}
.text-wrapper :is(.error, .warning, .success) { 
    width: max-content; 
    max-width: 100%; 
    padding: 1rem; 
}
.text-wrapper :is(.error, .warning, .success) > :first-child { 
    margin-top: 0; 
    padding-top: 0; 
}
.text-wrapper :is(.error, .warning, .success) > :last-child { 
    margin-bottom: 0; 
    padding-bottom: 0; 
}
@media (max-width: 991px) { 
    .text-wrapper table { 
        white-space: nowrap; 
				overflow-x: auto;
    		display: block;
    }
}
@media (max-width: 768px) { 
    .text-wrapper img.alignleft,
    .text-wrapper img.alignright,
    .text-wrapper img.aligncenter {
        float: none;
        display: block;
        margin: 20px auto;
        max-width: 100%;
        max-height: 60vh;
    }
    .text-wrapper .alignleft,
    .text-wrapper .alignright,
    .text-wrapper .aligncenter {
        float: none;
        max-width: 100%;
        margin: 20px auto;
    }
}
@media (max-width: 480px) { 
    .text-wrapper img.alignleft,
    .text-wrapper img.alignright,
    .text-wrapper img.aligncenter {
        float: none;
        display: block;
        margin: 20px auto;
        max-width: 100%;
        max-height: 60vh;
    }
    .text-wrapper .alignleft,
    .text-wrapper .alignright,
    .text-wrapper .aligncenter {
        float: none;
        max-width: 100%;
        margin: 20px auto;
    }
}