/* ========== Global Variables ========== */

:root {
	--main-container-max-width: 1472px;
	
	--default-font-family: 'Tektur-Regular', Helvetica, Arial, sans-serif;
	--default-font-size: 14px;
}

/* ========== end___Global Variables ========== */

/* ========== Global Styles ========== */

html,
body {
	height: 100%;
	font-family: var(--default-font-family);
	font-size: var(--default-font-size);
	line-height: 1.3;
	color: #ffffff;
	background-color: #090603;
}

body {
	overflow-x: hidden;
	overflow-y: scroll;
}

/* Admin Bar */

body.admin-bar .header {
    margin-top: 32px;
}
@media screen and (max-width: 782px) {
    body.admin-bar .header {
        margin-top: 46px;
    }
}

/* /.Admin Bar */

img {
	max-width: 100%;
	width: 100%;
	height: auto;
	vertical-align: top;
	object-fit: cover;
}

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

[class*="__container"] {
	max-width: var(--main-container-max-width);
	margin: 0 auto;
	padding-left: 16px;
	padding-right: 16px;
	box-sizing: border-box;
}
@media (max-width: 767.98px) {
	[class*="__container"] {
		padding-right: 32px;
		padding-left: 32px;
	}
}
@media (max-width: 575.98px) {
	[class*="__container"] {
		padding-right: 16px;
		padding-left: 16px;
	}
}

.content {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
}

.section--title {
	font-size: 46px;
	text-transform: uppercase;
}
@media (max-width: 767.98px) {
	.section--title {
		font-size: 36px;
	}
}

.main {
	flex-grow: 1;

	/** 
	 * Вирішення проблеми горизонтального скролу на мобільних у секціях, де застосовується анімація 
	 * 
	 * https://github.com/michalsnik/aos/issues/416
	 * https://github.com/michalsnik/aos/issues/227
	 *
	 */
	overflow-x: hidden;
}

/* Buttons */

:root {
	--btn-bevel-size: 15px; /* Розмір зрізу */
	--btn-background-color: #ffffff; /* Основний колір кнопки (синій) */
	--btn-text-color: #08010D; /* Основний колір кнопки (синій) */
}

.btn {
	position: relative;
	padding-left: 20px;
	padding-right: 20px;
	height: 50px;
	color: var(--btn-text-color);
	background-color: var(--btn-background-color);
    font-size: 16px;
	line-height: 100%;
	text-align: left;
    border: none;
    cursor: pointer;
    /* Створення шестикутника: зрізані ВЕРХНІЙ ЛІВИЙ та НИЖНІЙ ПРАВИЙ кути */
    clip-path: polygon(
        /* 1. ВЛ зріз: Починаємо на лівому краю, змістившись вниз */
        0% var(--btn-bevel-size),       
        /* 2. ВЛ зріз: Верхній край, змістившись вправо */
        var(--btn-bevel-size) 0%, 
        /* 3. ВП кут (Прямий) */
        100% 0%, 
        /* 4. НП зріз: Правий край, змістившись вгору */
        100% calc(100% - var(--btn-bevel-size)), 
        /* 5. НП зріз: Нижній край, змістившись вліво */
        calc(100% - var(--btn-bevel-size)) 100%, 
        /* 6. НЛ кут (Прямий) */
        0% 100% 
    );
    transition: background-color 0.3s;
}

.btn:hover {
    opacity: 0.8;
}

.btn::after {
	content: "";
	position: absolute;
	width: 57px;
	height: 50px;
	top: 0px;
	right: 0px;
	background-color: #E4B887;
	background-image: url("data:image/svg+xml;charset=UTF-8,<svg viewBox='0 0 9.85358 9.85352' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='9.853577' height='9.853516' fill='none' customFrame='%23000000'><path id='Vector 2' d='M0.353577 0.5L9.35358 0.5L9.35358 9.5M9.35358 0.5L0.353577 9.5' stroke='rgb(14,13,15)' stroke-width='1' /></svg>");
	background-repeat: no-repeat;
	background-position: 50% 50%; /* зсунути на 50% всередину */
	background-size: auto;
	clip-path: polygon(
		0% var(--btn-bevel-size),
		var(--btn-bevel-size) 0%,
		100% 0%,
		100% calc(100% - var(--btn-bevel-size)),
		calc(100% - var(--btn-bevel-size)) 100%,
		0% 100%
	);
	box-sizing: border-box;
	pointer-events: none;
}

.btn--sign-up {
	width: 193px;
}

.btn--cost {
	width: 242px;
}

.btn--get-calculation {
	max-width: 360px;
    width: 100%;
}

.btn--read-more {
	width: 242px;
	transition: background 0.2s, transform 0.3s, opacity 0.3s;
}

.btn--apply-request {
	width: 300px;
}
@media (max-width: 991.98px) {
	.btn--apply-request {
		width: 100%;
	}
}

.btn--send {
	width: 347px;
}

.btn.modal__close {
	width: 74px;
	height: 50px;
	position: absolute;
	top: 25px;
	right: 25px;
	z-index: 1;
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	-webkit-transition: -webkit-transform 0.2s linear;
	transition: -webkit-transform 0.2s linear;
	transition: transform 0.2s linear;
	transition: transform 0.2s linear, -webkit-transform 0.2s linear;
}

.btn.modal__close::after {
	content: "";
	position: absolute;
	width: 74px;
	height: 50px;
	top: 0px;
	right: 0px;
	background-color: #E4B887;
	background-image: url("data:image/svg+xml;charset=UTF-8,<svg viewBox='0 0 14.4731 14.2717' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='14.473145' height='14.271729' fill='none' customFrame='%23000000'><g id='Group 33603'><path id='Vector 9' d='M0 0L18.6667 0' stroke='rgb(9,6,3)' stroke-linecap='round' stroke-width='1' transform='matrix(0.707107,-0.707107,0.707107,0.707107,0.501953,13.7697)' /><path id='Vector 8' d='M0 0L18.6667 0' stroke='rgb(9,6,3)' stroke-linecap='round' stroke-width='1' transform='matrix(0.707107,0.707107,-0.707107,0.707107,0.771851,0.502014)' /></g></svg>");
}

.btn--scroll-to-top {
	position: fixed;
	display: block;
	width: 57px;
	bottom: 25px;
	right: 25px;
	cursor: pointer;
	transform: translateY(100px);
	opacity: 0;
	transition: transform 0.5s, opacity 0.3s;
	background-color: #dddddd;
	z-index: 999;
}

.btn.btn--scroll-to-top::after {
	background-image: url("data:image/svg+xml;charset=UTF-8,<svg viewBox='0 0 9.85358 9.85352' xmlns='http://www.w3.org/2000/svg' fill='none'><g transform='translate(4.9268 4.9268) rotate(-45) scale(0.2) translate(-4.9268 -4.9268)'><path d='M0.353577 0.5L9.35358 0.5L9.35358 9.5M9.35358 0.5L0.353577 9.5' stroke='rgb(14,13,15)' stroke-width='0.7'/></g></svg>");
}

.btn--scroll-to-top__show {
	transform: translateY(0);
	opacity: 1;
}

/* end___Buttons */

/* Tables */

table {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
}

table thead th {
	padding-left: 30px;
	padding-right: 30px;
	padding-bottom: 20px;
	font-weight: 600;
	text-transform: uppercase;
	text-align: left;
	border-bottom: 1px solid #5C5C5C;
}
@media (max-width: 767.98px) {
	table thead th {
		padding-left: 0px;
		padding-right: 0px;
		padding-bottom: 16px;
	}
}

@media (max-width: 575.98px) {
	table thead tr th:nth-child(2) {
		padding-left: 32px;
	}
}

table tbody tr td {
	padding-left: 30px;
	padding-right: 30px;
	padding-top: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #5C5C5C;
}
@media (max-width: 767.98px) {
	table tbody tr td {
		padding-left: 0px;
		padding-right: 0px;
		padding-top: 16px;
		padding-bottom: 16px;
	}
}
@media (max-width: 575.98px) {
	table tbody tr td:nth-child(2) {
		padding-left: 32px;
	}
}

/* end___Tables */

/* Adaptive Tables */

/* @media screen and (max-width: 767.98px) {
	table {
		width: 100%;
	}
	thead {
		display: none;
	}
	tr:nth-of-type(2n) {
		background-color: inherit;
	}
	tr td:first-child {
		background: #f0f0f0; 
		font-weight: bold;
		font-size: 1.3em;
	}
	tbody td {
		display: block;
		text-align: center;
	}
	tbody td:before {
		content: attr(data-th);
		display: block;
		text-align:center;
	}
} */

/* end___Adaptive Tables */

/* ========== end___Global Styles ========== */

/* Header */

.header {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	z-index: 1000;
	transition: all 0.3s ease-out;
}

.header.header--active {
	top: 0px;
	background-color: #090603;
	transition: all 0.3s ease-out;
}

.header.header--hidden {
	transform: translateY(-100%);
}

.header__body {
	display: flex;
	flex-direction: column;
	row-gap: 36px;
	min-height: 100px;
	padding-top: 30px;
	padding-bottom: 30px;
}
@media (max-width: 767.98px) {
	.header__body {
		padding-top: 22px;
	}
}
@media (max-width: 575.98px) {
	.header__body {
		min-height: 80px;
		padding-top: 16px;
		padding-bottom: 0px;
	}
}

.header__headline {
	display: flex;
	column-gap: 30px;
	font-size: 12px;
}
@media (max-width: 575.98px) {
	.header__headline {
		display: none;
	}
	.menu-open .header__headline {
		display: flex;
	}
}

.header-headline__map a,
.header-headline__tel a,
.header-headline__work {
	display: flex;
	align-items: center;
	column-gap: 7px;
}

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

/* якщо при відкритому мобільному меню хедер має залишатись видимим */
/* .menu-open .header {
	transform: translateY(0) ! important;
} */

.menu-open .header__body {
	position: relative;
}

.menu-open .header__logo,
.menu-open .header__btn,
.menu-open .main__menu::before {
	z-index: 2;
}

.menu-open .header__heading {
	order: 1;
}

.menu-open .header__headline {
	order: 2;
	z-index: 2;
}

.header__nav {
	display: flex;
	align-items: center;
	column-gap: 50px;
}
@media (max-width: 767.98px) {
	.header__nav {
		align-items: initial;
		column-gap: 16px;
	}
}

@media (max-width: 767.98px) {
	.header__nav .header__btn {
		order: 1;
	}
	.header__nav .main__menu {
		order: 2;
	}
}
@media (max-width: 575.98px) {
	.header__nav .header__btn {
		display: none;
	}

	.menu-open .header__nav .header__btn {
		position: absolute;
		display: block;
		left: 0px;
		top: 460px;
	}
}

@media (max-width: 767.98px) {
	.header__nav .main__menu {
		position: relative;
	}
}

/* end___Header */

/* Main Menu */

.menu-open body {
	overflow: hidden;
}

.main__menu .menu__body {
	position: relative;
	z-index: 5;
}
@media (max-width: 767.98px) {
	.main__menu .menu__body {
		position: fixed;
		width: 100%;
		height: 100%;
		top: 0px;
		left: -100%;
		transition: left 0.3s;
		background-color: #090603;
		padding: 383px 32px 32px 32px;
		overflow: auto;
		z-index: 1;
	}
	.menu-open .main__menu .menu__body {
		left: 0px;
	}

	.menu-open .main__menu .menu__body .header__headline {
		flex-direction: column;
		row-gap: 15px;
		margin-top: 230px;
		font-size: 16px;
	}
}

@media (max-width: 575.98px) {
	.main__menu .menu__body {
		padding: 164px 16px 32px 16px;
	}
	.menu-open .main__menu .menu__body .header__headline {
		margin-top: 213px;
	}
}

.main__menu .menu__list {
	display: flex;
	align-items: center;
	column-gap: 30px;
	flex-wrap: wrap;
}
@media (max-width: 767.98px) {
	.main__menu .menu__list {
		align-items: flex-start;
		flex-direction: column;
	}

	.menu-open .main__menu .menu__list {
		row-gap: 32px;
	}
}
@media (max-width: 575.98px) {
	.main__menu .menu__list {
		row-gap: 16px;
	}

	.menu-open .main__menu .menu__list {
		row-gap: 16px;
	}
}

.main__menu .menu__item {
	padding: 4px;
	cursor: pointer;
}

.main__menu .menu__item.menu-item-has-children {
	position: relative;
}

.main__menu .menu__item.menu-item-has-children::after {
	content: "\23F7";
	position: absolute;
	right: -20px;
}

.main__menu .menu__item:hover,
.main__menu .menu__item .menu__link.active {
	text-decoration: underline;
}

.main__menu .menu__link {
	font-size: 16px;
	line-height: 100%;
	color: #ffffff;
	text-transform: capitalize;
}
@media (max-width: 767.98px) {
	.menu-open .main__menu .menu__link {
		font-size: 20px;
		color: #ffffff;
	}
}
@media (max-width: 575.98px) {
	.menu-open .main__menu .menu__link {
		font-size: 16px;
	}
}

.main__menu .menu__link:hover {
	text-decoration: underline;
}

.main__menu .icon-menu {
	display: none;
}
@media (max-width: 767.98px) {
	.main__menu {
		position: relative;
		width: 74px;
		height: 50px;
	}
	.main__menu::before {
		content: "";
		position: absolute;
		top: 0px;
		right: 0px;
		width: 74px;
		height: 50px;
		background-color: #E4B887;
		clip-path: polygon(
			0% var(--btn-bevel-size),
			var(--btn-bevel-size) 0%,
			100% 0%,
			100% calc(100% - var(--btn-bevel-size)),
			calc(100% - var(--btn-bevel-size)) 100%,
			0% 100%
		);
	}

	.main__menu .icon-menu {
		display: block;
		position: absolute;
		width: 19px; 
		height: 18px;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		z-index: 5;
	}
	.main__menu .icon-menu__line,
	.main__menu .icon-menu::before,
	.main__menu .icon-menu::after {
		content: "";
		position: absolute;
		background-color: #090603;
		height: 2px;
		width: 100%;
		left: 0px;
		transition: all 0.3s;
	}
	.main__menu .icon-menu::before {
		top: 0px;
	}
	.main__menu .icon-menu::after {
		bottom: 0px;
	}
	.main__menu .icon-menu__line {
		top: calc(50% - 1px); 
	}
	.menu-open .main__menu .icon-menu::before {
		top: calc(50% - 1px);
		transform: rotate(-45deg);
		background-color: #090603;
	}
	.menu-open .main__menu .icon-menu::after {
		bottom: calc(50% - 1px);
		transform: rotate(45deg);
		background-color: #090603;
	}
	.menu-open .main__menu .icon-menu__line {
		left: 50%;
		width: 0px;
		background-color: #090603;
	}
}

@media (min-width: 768px) {
    .main__menu .menu-item {
      position: relative;
      padding: 10px 0px;
    }
    .main__menu .menu-item .sub-menu {
      display: none;
      opacity: 0;
      transition: opacity 600ms, visibility 600ms;
    }
    .main__menu .menu-item:focus .sub-menu,
    .main__menu .menu-item:hover .sub-menu {
      opacity: 1;
      animation: fade 600ms;
      display: block;
      flex-direction: column;
      position: absolute;
      top: 100%;
      right: 0px;
      padding: 10px;
      min-width: 200px;
      background-color: #ffffff;
      border: 1px solid #e7e7e7;
      border-radius: 5px;
    }
    .main__menu .menu-item .sub-menu .menu__link {
      display: flex;
    }
    @keyframes fade {
		0% {
			opacity: 0;
		}
		100% {
			opacity: 1;
		}
  	}
}
@media (max-width: 767.98px) {
	.main__menu .menu-item .sub-menu {
		display: flex;
		flex-direction: column;
		margin-top: 15px;
		padding-left: 20px;
		gap: 15px;
    }
}

/* end___Main Menu */

/* Hero */

.hero {
	position: relative;
}

.hero__body {
	position: relative;
	display: flex;
	flex-direction: column;
	padding-top: 227px;
    padding-bottom: 218px;
	color: #ffffff;
	z-index: 1;
}
@media (max-width: 767.98px) {
	.hero__body {
		padding-top: 0px;
    	padding-bottom: 351px;
	}
}
@media (max-width: 575.98px) {
	.hero__body {
		padding-bottom: 173px;
	}
}

.hero__title {
	max-width: 894px;
	margin-top: 100px;
	font-size: 48px;
}
@media (max-width: 767.98px) {
	.hero__title {
		max-width: 100%;
		margin-top: 352px;
	}
}
@media (max-width: 575.98px) {
	.hero__title {
		margin-top: 177px;
		font-size: 32px;
	}
}

.hero__subtitle {
	margin-top: 30px;
	font-size: 16px;
}
@media (max-width: 575.98px) {
	.hero__subtitle {
		margin-top: 20px;
	}
}

.hero__btn {
	margin-top: 30px;
}
@media (max-width: 575.98px) {
	.hero__btn {
		margin-top: 20px;
	}
}

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

.hero__background::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	filter: drop-shadow(10px 10px 7px rgba(0, 0, 0, 0.65));
	-webkit-filter: drop-shadow(10px 10px 7px rgba(0, 0, 0, 0.65));
	background: linear-gradient(to bottom, transparent -35%,  rgba(0,0,0,0.65) 100%);
}

.hero__background img {
	position: absolute;
    width: 100%;
    height: 100%;
    top: 0px;
    left: 0px;
	object-position: top;
}

/* end___Hero */

/* Drive */

.drive {
	margin-top: 100px;
}
@media (max-width: 767.98px) {
	.drive {
		margin-top: 60px;
	}
}

.drive__body {
	display: flex;
	align-items: center;
	column-gap: 68px;
}
@media (max-width: 767.98px) {
	.drive__body {
		flex-direction: column;
		row-gap: 32px;
	}
}
@media (max-width: 575.98px) {
	.drive__body {
		row-gap: 40px;
	}
}

.drive__img {
	max-width: 413px;
	width: 100%;
}
@media (max-width: 767.98px) {
	.drive__img {
		max-width: 100%;
		order: 2;
	}
}

@media (max-width: 767.98px) {
	.drive__content {
		order: 1;
	}
}

.drive__title {
	max-width: 523px;
}
@media (max-width: 767.98px) {
	.drive__title {
		max-width: 100%;
	}
}

.drive__desc {
	max-width: 721px;
	margin-top: 30px;
	font-size: 18px;
}
@media (max-width: 767.98px) {
	.drive__desc {
		max-width: 100%;
	}
}
@media (max-width: 575.98px) {
	.drive__desc {
		margin-top: 20px;
		font-size: 16px;
	}
}

.drive__desc > *:not(:last-of-type) {
	margin-bottom: 25px;
}

.drive__services {
	display: flex;
	column-gap: 30px;
	row-gap: 41px;
	margin-top: 50px;
}
@media (max-width: 575.98px) {
	.drive__services {
		flex-wrap: wrap;
		justify-content: center;
		column-gap: 20px;
		margin-top: 40px;
	}
}

.drive__service {
	display: flex;
	flex-direction: column;
	row-gap: 30px;
	align-items: center;
}

.drive-service__icon img {
	width: auto;
	height: 70px;
}
@media (max-width: 575.98px) {
	.drive-service__icon img {
		height: 50px;
	}
}

.drive-service__text {
	max-width: 180px;
	font-size: 18px;
	text-align: center;
}
@media (max-width: 575.98px) {
	.drive-service__text {
		max-width: 154px;
		font-size: 16px;
	}
}

/* end___Drive */

/* Services */

.services {	
	margin-top: 100px;
}
@media (max-width: 767.98px) {
	.services {
		margin-top: 60px;
	}
}

.services__body {
	position: relative;
}

.services__heading {
	position: absolute;
	top: 0px;
	left: 0px;
}
@media (max-width: 767.98px) {
	.services__heading {
		position: static;
	}
}

.services__desc {
	max-width: 634px;
	margin-top: 30px;
	font-size: 18px;
}
@media (max-width: 767.98px) {
	.services__desc {
		max-width: 100%;
	}
}
@media (max-width: 575.98px) {
	.services__desc {
		margin-top: 20px;
		font-size: 16px;
	}
}

.services__btn {
	margin-top: 30px;
}
@media (max-width: 767.98px) {
	.services__btn {
		margin-top: 20px;
	}
}

.services__list {
	display: grid;
	grid-template-columns: repeat(4, 1fr); /* максимум 4 у ряд */
	gap: 30px;
}
@media (max-width: 767.98px) {
	.services__list {
		gap: 16px;
	}
}

/* ======== великі екрани ======== */
/* Перші дві картки — праворуч */
.services__list > :nth-child(1) {
	grid-column: 3;
}
.services__list > :nth-child(2) {
	grid-column: 4;
}

/* ======== середні екрани (до 767.98px) ======== */
@media (max-width: 767.98px) {
	.services__list {
		grid-template-columns: repeat(3, 1fr);
		margin-top: 32px;
	}

	/* скасовуємо спецрозташування перших двох */
	.services__list > :nth-child(1),
	.services__list > :nth-child(2) {
		grid-column: auto;
	}
}

/* ======== вузькі екрани (до 575.98px) ======== */
@media (max-width: 575.98px) {
	.services__list {
		grid-template-columns: repeat(2, 1fr);
		margin-top: 60px;
	}

	/* знову всі звичайно */
	.services__list > :nth-child(1),
	.services__list > :nth-child(2) {
		grid-column: auto;
	}
}
/* @media (max-width: 399.98px) {
	.services__list {
		grid-template-columns: repeat(1, 1fr);
	}
} */

.services__item {
	min-height: 402px;
	background-color: #232323;
	/* Створення п'ятикутника: зрізаний лише ВЕРХНІЙ ЛІВИЙ кут */
    clip-path: polygon(
		/* 1. ВЛ кут (Прямий) */
		0% 0%, 
		/* 2. ВП зріз: Верхній край, змістившись вліво */
		calc(100% - 70px) 0%, 
		/* 3. ВП зріз: Правий край, змістившись вниз */
		100% 70px, 
		/* 4. НП кут (Прямий) */
		100% 100%, 
		/* 5. НЛ кут (Прямий) */
		0% 100% 
	);
}
@media (max-width: 767.98px) {
	.services__item {
		clip-path: polygon(
			0% 0%, 
			calc(100% - 45px) 0%, 
			100% 45px, 
			100% 100%, 
			0% 100% 
		);
	}
}
@media (max-width: 575.98px) {
	.services__item {
		justify-self: center;
		max-width: 156px;
		min-height: 256px;
		clip-path: polygon(
			0% 0%, 
			calc(100% - 30px) 0%, 
			100% 30px, 
			100% 100%, 
			0% 100% 
		);
	}
}

.services__item:hover {
	color: #090603;
	background-color: #E4B887;
	cursor: pointer;
}

.services-item__img img {
	max-height: 142px;
}
@media (max-width: 575.98px) {
	.services-item__img img {
		max-height: 73px;
	}
}

.services-item__content {
	padding-top: 30px;
	padding-right: 30px;
	padding-left: 30px;
	padding-bottom: 30px;
}
@media (max-width: 767.98px) {
	.services-item__content {
		padding-top: 13px;
		padding-right: 16px;
		padding-left: 16px;
		padding-bottom: 13px;
	}
}

.services-item__title {
	padding-bottom: 20px;
	font-size: 18px;
	font-weight: 500;
}
@media (max-width: 575.98px) {
	.services-item__title {
		font-size: 14px;
	}
}

.services-item__desc {
	padding-top: 21px;
	font-size: 14px;
	border-top: 1px solid #ffffff;
}
@media (max-width: 575.98px) {
	.services-item__desc {
		font-size: 10px;
	}
}

.services__item:hover .services-item__desc {
	border-color: #090603;
}

/* end___Services */

/* Prices */

.prices {	
	margin-top: 100px;
}
@media (max-width: 767.98px) {
	.prices {
		margin-top: 60px;
	}
}

.prices__heading {
	display: flex;
	justify-content: space-between;
}
@media (max-width: 767.98px) {
	.prices__heading {
		flex-direction: column;
		row-gap: 32px;
	}
}

/* Price List Read More */

.prices__list {
	margin-top: 42px;
}

.prices__btn {
	margin-top: 50px;
	text-align: center;
}
@media (max-width: 767.98px) {
	.prices__btn {
		margin-top: 32px;
		text-align: left;
	}
}
@media (max-width: 575.98px) {
	.prices__btn {
		margin-top: 21px;
	}
}

.prices-list__content {
	overflow: hidden;
	transition: max-height 0.5s ease;
}

/* Скидаємо margin у параграфів, щоб JS правильно рахував висоту рядків */
.prices-list__content p {
	margin: 0px;
}

.prices-list__content p:not(:last-of-type) {
	margin-bottom: 25px; /* зберігаємо відступ між рядками */
}

.prices__btn .btn--read-more:hover {
	background: #f5f5f5;
}

.prices__btn .btn--read-more.animating {
	transform: scale(0.95);
	opacity: 0.7;
}

/* end___Price List Read More */

/* end___Prices */

/* Why */

.why {
	margin-top: 50px;
}
@media (max-width: 767.98px) {
	.why {
		margin-top: 60px;
	}
}
@media (max-width: 575.98px) {
	.why {
		position: relative;
	}
}

.why__img {
	position: relative;
}
@media (max-width: 575.98px) {
	.why__img {
		position: absolute;
    	top: 0px;
		left: 0px;
	}
}

.why__img::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	filter: drop-shadow(10px 10px 7px rgba(0, 0, 0, 0.50));
	-webkit-filter: drop-shadow(10px 10px 7px rgba(0, 0, 0, 0.50));
	background: linear-gradient(to bottom, transparent -35%,  rgba(0,0,0,0.50) 100%);
}

.why__title {
	margin-top: 100px;
}
@media (max-width: 767.98px) {
	.why__title {
		margin-top: 60px;
	}
}
@media (max-width: 575.98px) {
	.why__title {
        padding-top: 150px;
    }
}

.why__text {
	margin-top: 30px;
	font-size: 18px;
}
@media (max-width: 575.98px) {
	.why__text {
		margin-top: 20px;
		font-size: 16px;
	}
}

.why__text > p {
	margin-bottom: 15px;
}

.why__text ol li {
	margin-bottom: 5px;
	list-style: decimal;
	list-style-type: decimal;
	list-style-position: inside;
}

.why__text ul li {
	margin-bottom: 5px;
	list-style: disc;
}

.why__btn {
	margin-top: 30px;
	font-size: 18px;
	text-align: right;
}
@media (max-width: 767.98px) {
	.why__btn {
		margin-top: 16px;
	}
}
@media (max-width: 575.98px) {
	.why__btn {
		font-size: 16px;
	}
}

.why__btn .btn--read-more {
	width: initial;
	text-decoration: underline;
}

/* Згорнути/Розгонути */

/* var. 1 */

/* .why__text {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
	transition: .3s ease;
}

.why__text.expanded {
	display: block;
	overflow: visible;
	-webkit-line-clamp: unset;
} */

/* end___var. 1 */

/* var. 2 */

.why__text {
	overflow: hidden;
	transition: max-height .3s ease;
}

.why__text.expanded {
	max-height: none !important;
	overflow: visible;
}

/* end___var. 2 */

/* end___Згорнути/Розгонути */

/* end___Why */

/* FAQ */

.faq {
	margin-top: 60px;
}

.faq__accordion {
	margin-top: 30px;
}

/* Аавтоматична нумерація */

.faq-accordion {
	counter-reset: faq;
}

.faq-accordion-item {
	counter-increment: faq;
}

.faq-accordion-item__number::before {
	content: "[" counter(faq, decimal-leading-zero) "]";
}

/* end___Аавтомачтина нумерація */

/* Accordion */

.faq-accordion__item {
	padding-top: 30px;
	padding-bottom: 30px;
	border-bottom: 1px solid #5C5C5C;
}

.faq-accordion-item__header {
	display: flex;
	column-gap: 30px;
	width: 100%;
	cursor: pointer;
	font-size: 18px;
	font-weight: 500;
	transition: 0.3s ease-out;
}
@media (max-width: 767.98px) {
	.faq-accordion-item__header {
		column-gap: 20px;
	}
}
@media (max-width: 575.98px) {
	.faq-accordion-item__header {
		font-size: 16px;
	}
}

.faq-accordion-item__header.active {
	padding-bottom: 30px;
}
	
.faq-accordion-item__content {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.3s ease-out;
}

.faq-accordion-item__question {
	text-decoration: underline;
}

/* end___Accordion */

/* end___FAQ */

/* Reviews */

.reviews {
	margin-top: 60px;
}

.reviews__slider {
	margin-top: 30px; 
}
@media (max-width: 575.98px) {
	.reviews__slider {
		margin-top: 40px; 
	}
}

.reviews__slider .swiper {
	padding-bottom: 90px;
}
@media (max-width: 767.98px) {
	.reviews__slider .swiper {
		padding-bottom: 80px;
	}
}
@media (max-width: 575.98px) {
	.reviews__slider .swiper {
		padding-bottom: 75px;
	}
}

.reviews__slider .swiper-slide {
	min-height: 404px;
	padding-top: 70px;
	padding-right: 30px;
	padding-bottom: 50px;
	padding-left: 30px;
	background-color: #232323;
	clip-path: polygon(
		0% 0%, 
		calc(100% - 70px) 0%, 
		100% 70px, 
		100% 100%, 
		0% 100% 
	);
}
@media (max-width: 767.98px) {
	.reviews__slider .swiper-slide {
		clip-path: polygon(
			0% 0%, 
			calc(100% - 45px) 0%, 
			100% 45px, 
			100% 100%, 
			0% 100% 
		);
	}
}
@media (max-width: 575.98px) {
	.reviews__slider .swiper-slide {
		min-height: 324px;
		padding-top: 40px;
		padding-right: 16px;
		padding-bottom: 40px;
		padding-left: 16px;
		clip-path: polygon(
			0% 0%, 
			calc(100% - 30px) 0%, 
			100% 30px, 
			100% 100%, 
			0% 100% 
		);
	}
}

.reviews__slider .swiper-slide:hover {
	background-color: #E4B887;
	cursor: pointer;
}

.reviews__slider .swiper-slide .swiper-slide__rating {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.reviews__slider .swiper-slide .swiper-slide__text {
	margin-top: 41px;
	font-size: 14px;
}
@media (max-width: 575.98px) {
	.reviews__slider .swiper-slide .swiper-slide__text {
		margin-top: 29px;
	}
}

.reviews__slider .swiper-slide:hover .swiper-slide__text {
	color: #090603;
}

.reviews__slider .swiper-slide .swiper-slide-rating__score {
	font-size: 40px;
	text-transform: uppercase;
}

.reviews__slider .swiper-slide:hover .swiper-slide-rating__score {
	color: #090603;
}

.reviews__slider .swiper-slide .swiper-slide__author {
	margin-top: 20px;
	font-size: 16px;
	color: #ADAAAA;
}

.reviews__slider .swiper-slide:hover .swiper-slide__author {
	color: rgba(9, 6, 3, 0.7);
}

.reviews__slider .swiper-navigation {
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	column-gap: 20px;
	width: 100%;
	bottom: 0px;
	left: 50%;
	transform: translateX(-50%);
}

.reviews__slider .swiper-navigation .swiper-button-next,
.reviews__slider .swiper-navigation .swiper-button-prev {
	position: initial;
	margin: 0px;
	width: 57px;
	height: 50px;
	background: #E4B887;
	background-repeat: no-repeat;
	background-position: 50% 50%; /* зсунути на 50% всередину */
	background-size: auto;
	clip-path: polygon(
		0% var(--btn-bevel-size),
		var(--btn-bevel-size) 0%,
		100% 0%,
		100% calc(100% - var(--btn-bevel-size)),
		calc(100% - var(--btn-bevel-size)) 100%,
		0% 100%
	);
	box-sizing: border-box;
}

.reviews__slider .swiper-navigation .swiper-button-prev::after {
	content: url("data:image/svg+xml;charset=UTF-8,<svg viewBox='0 0 13.4351 13.4351' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='13.435059' height='13.435059' fill='none' customFrame='%23000000'><path id='Vector 2' d='M0 0L9 0L9 9M9 0L0 9' stroke='rgb(9,6,3)' stroke-width='1' transform='matrix(-0.707107,0.707107,0.707107,0.707107,7.07104,0.353516)' /></svg>");
	font-family: unset;
	font-size: unset;
}

.reviews__slider .swiper-navigation .swiper-button-next::after {
	content: url("data:image/svg+xml;charset=UTF-8,<svg viewBox='0 0 13.4351 13.4351' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='13.435059' height='13.435059' fill='none' customFrame='%23000000'><path id='Vector 2' d='M0 0L9 0L9 9M9 0L0 9' stroke='rgb(9,6,3)' stroke-width='1' transform='matrix(0.707107,0.707107,-0.707107,0.707107,6.36401,0.353516)' /></svg>");
	font-family: unset;
	font-size: unset;
}

.reviews__slider .swiper-navigation .swiper-button-prev.swiper-button-disabled,
.reviews__slider .swiper-navigation .swiper-button-next.swiper-button-disabled {
	background: #252222;
}

.reviews__slider .swiper-navigation .swiper-button-prev.swiper-button-disabled::after {
	content: url("data:image/svg+xml;charset=UTF-8,<svg viewBox='0 0 13.4351 13.4351' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='13.435059' height='13.435059' fill='none' customFrame='%23000000'><path id='Vector 2' d='M0 0L9 0L9 9M9 0L0 9' stroke='rgb(255,255,255)' stroke-width='1' transform='matrix(-0.707107,0.707107,0.707107,0.707107,7.07104,0.353516)' /></svg>");
}

.reviews__slider .swiper-navigation .swiper-button-next.swiper-button-disabled::after {
	content: url("data:image/svg+xml;charset=UTF-8,<svg viewBox='0 0 13.4351 13.4351' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='13.435059' height='13.435059' fill='none' customFrame='%23000000'><path id='Vector 2' d='M0 0L9 0L9 9M9 0L0 9' stroke='rgb(255,255,255)' stroke-width='1' transform='matrix(0.707107,0.707107,-0.707107,0.707107,6.36401,0.353516)' /></svg>");
}

.reviews__slider .swiper-navigation .swiper-counter__current,
.reviews__slider .swiper-navigation .swiper-counter__divider {
	font-size: 36px;
}

.reviews__slider .swiper-navigation .swiper-counter__total {
	font-size: 16px;
}

/* end___Reviews */

/* Сontacts */

.contacts {
	padding-bottom: 30px;
}
@media (max-width: 575.98px) {
	.contacts {
		padding-bottom: 53px;
	}
}

.contacts__title {
	margin-top: 100px;
}
@media (max-width: 767.98px) {
	.contacts__title {
		margin-top: 60px;
	}
}

.contacts__content {
	display: flex;
	margin-top: 50px;
}
@media (max-width: 991.98px) {
	.contacts__content {
		flex-direction: column;
		row-gap: 32px;
	}
}

.contacts__text {
	display: flex;
	align-content: flex-start;
	flex: 50%;
	flex-wrap: wrap;
	row-gap: 30px;
	column-gap: 70px;
}

.contacts-text__item {
	max-width: 262px;
	width: 100%;
}

.contacts-text-item__title {
	font-size: 18px;
	text-transform: uppercase;
	color: #545454;
}

.contacts-text-item__text {
	display: flex;
	align-items: center;
	column-gap: 10px;
	margin-top: 20px;
	font-size: 18px;
}

.contacts__form .wpcf7-form {
	display: flex;
	flex-direction: column;
	row-gap: 30px;
}

.contacts__form .wpcf7-spinner {
    display: none ! important;
	visibility: hidden ! important;
}

.contacts__form .wpcf7-not-valid-tip {
	margin-top: 10px;
	padding-left: 20px;
}

.contacts__form .wpcf7 form .wpcf7-response-output {
	max-width: 634px;
	width: 100%;
	margin: 0px;
}
@media (max-width: 991.98px) {
	.contacts__form .wpcf7 form .wpcf7-response-output {
		max-width: 100%;
	}
}

.contacts__form .contacts-form__heading {
	display: flex;
	column-gap: 30px;
}

.contacts-form__body {
	max-width: 634px;
}
@media (max-width: 991.98px) {
	.contacts-form__body {
		max-width: 100%;
	}
}

.contacts__form input[type="text"]::placeholder,
.contacts__form input[type="tel"]::placeholder,
.contacts__form textarea::placeholder {
	color: #C9C9C9;
	font-size: 18px;
	opacity: 1;
}
.contacts__form input[type="text"],
.contacts__form input[type="text"]:-ms-input-placeholder,
.contacts__form input[type="text"]::-ms-input-placeholder,
.contacts__form input[type="text"]::-webkit-input-placeholder, 
.contacts__form input[type="text"]::-moz-placeholder,
.contacts__form input[type="tel"],
.contacts__form input[type="tel"]:-ms-input-placeholder,
.contacts__form input[type="tel"]::-ms-input-placeholder,
.contacts__form input[type="tel"]::-webkit-input-placeholder, 
.contacts__form input[type="tel"]::-moz-placeholder,
.contacts__form textarea,
.contacts__form textarea:-ms-input-placeholder,
.contacts__form textarea::-ms-input-placeholder,
.contacts__form textarea::-webkit-input-placeholder, 
.contacts__form textarea::-moz-placeholder {
	color: #C9C9C9;
	font-size: 18px;
}

.contacts__form input[type="text"],
.contacts__form input[type="tel"],
.contacts__form textarea {
	color: #090603;
	font-size: 18px;
}

.contacts__form input[type="text"] {
	max-width: 302px;
	width: 100%;
	height: 50px;
	padding: 20px;
	padding-top: 12px;
	padding-right: 20px;
	padding-bottom: 12px;
	padding-left: 20px;
}
@media (max-width: 991.98px) {
	.contacts__form input[type="text"] {
		max-width: 100%;
	}
}

.contacts__form input[type="tel"] {
	max-width: 302px;
	width: 100%;
	height: 50px;
	padding-top: 12px;
	padding-right: 20px;
	padding-bottom: 12px;
	padding-left: 20px;
}
@media (max-width: 991.98px) {
	.contacts__form input[type="tel"] {
		max-width: 100%;
	}
}

.contacts__form textarea {
	width: 100%;
	height: 122px;
	padding-top: 12px;
	padding-right: 20px;
	padding-bottom: 12px;
	padding-left: 20px;
	resize: none;
}

.contacts-form__btn {
	margin-top: 30px;
	text-align: right;
}

/* end___Сontacts */

/* Map */

/* .map {} */

/* end___Map */

/* Footer */

.footer {
	padding-top: 30px;
	padding-bottom: 30px;
}

.footer__body {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	row-gap: 18px;
}

.footer-menu__list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	column-gap: 30px;
	row-gap: 15px;
}
@media (max-width: 575.98px) {
	.footer-menu__list {
		column-gap: 14px;
	}
}

.footer__copyright {
	text-align: right;
}
@media (max-width: 767.98px) {
	.footer__copyright {
		width: 100%;
	}
}

/* end___Footer */

/* Modals */

body.no-scroll {
	overflow: hidden;
}

.modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow-y: auto;
	padding: 30px 15px;
	z-index: 2000;
	/* background: rgba(48, 42, 37, 0.70); */
	background: #090603;
	backdrop-filter: blur(5px);
}

.modal.show {
	display: block;
}

.modal__inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	min-height: 100%;
}

.modal__content {
	position: relative;
	max-width: 768px;
	width: 100%;
	padding-top: 88px;
	padding-right: 15px;
	padding-bottom: 40px;
	padding-left: 15px;
	-webkit-transform: scale(0.5);
	transform: scale(0.5);
	opacity: 0;
	-webkit-transition: opacity .2s ease-out, -webkit-transform .2s ease-out;
	transition: opacity .2s ease-out, -webkit-transform .2s ease-out;
	transition: transform .2s ease-out, opacity .2s ease-out;
	transition: transform .2s ease-out, opacity .2s ease-out, -webkit-transform .2s ease-out;
	background: #090603;
	backdrop-filter: blur(5.5px);
}

.modal__text {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

/* Form */

.modal .wpcf7 form {
	display: flex;
	flex-direction: column;
	row-gap: 12px;
	margin-top: 32px;
}

.modal .wpcf7-spinner {
    display: none ! important;
	visibility: hidden ! important;
}

.modal .wpcf7-not-valid-tip {
	margin-top: 10px;
	margin-bottom: 10px;
}

.modal .wpcf7 form .wpcf7-response-output {
	max-width: 347px;
	width: 100%;
	margin-top: 15px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
}
@media (max-width: 991.98px) {
	.modal .wpcf7 form .wpcf7-response-output {
		max-width: 100%;
	}
}

.modal input[type="text"]::placeholder,
.modal input[type="tel"]::placeholder {
	color: #C9C9C9;
	font-size: 18px;
	opacity: 1;
}
.modal input[type="text"],
.modal input[type="text"]:-ms-input-placeholder,
.modal input[type="text"]::-ms-input-placeholder,
.modal input[type="text"]::-webkit-input-placeholder, 
.modal input[type="text"]::-moz-placeholder,
.modal input[type="tel"],
.modal input[type="tel"]:-ms-input-placeholder,
.modal input[type="tel"]::-ms-input-placeholder,
.modal input[type="tel"]::-webkit-input-placeholder, 
.modal input[type="tel"]::-moz-placeholder {
	color: #C9C9C9;
	font-size: 18px;
}

.modal input[type="text"],
.modal input[type="tel"] {
	max-width: 347px;
	width: 100%;
	height: 50px;
	padding: 13px 20px 13px 20px;
	font-size: 18px;
	color: #090603;
}

.modal .message-body {
	display: flex;
	flex-direction: column;
	row-gap: 32px;
}
@media (max-width: 575.98px) {
	.modal .message-body {
		row-gap: 20px;
	}
}

.modal .message-body .message-body__text--2 {
	font-size: 18px;
	text-align: center;
}

/* end___Form */

/* end___Modals */

/* 404 page */

.error-404 {
	padding-top: 227px;
}

.error-404__body {
	display: flex;
	flex-direction: column;
	align-items: center;
	row-gap: 30px;
}

.error-404__title {
	font-size: 48px;
}
@media (max-width: 575.98px) {
    .error-404__title {
        font-size: 32px;
    }
}

.error-404__desc {
	font-size: 16px;
}

/* end___404 page */