/**
 * ATB Block: Home Reviews FAQ
 *
 * Назначение:
 * - блок отзывов и FAQ на главной странице;
 * - ширина задаётся через .atb-container / .atb-container--wide;
 * - файл отвечает только за визуал блока.
 */

.atb-home-reviews-faq {
	padding: 0 0 72px;
	background: #f4f7fb;
	color: #0f172a;
}

.atb-home-reviews-faq__container {
	width: min(calc(100% - 40px), 1320px);
	max-width: 1320px;
	margin-right: auto;
	margin-left: auto;
}

.atb-home-reviews-faq__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.15fr) minmax(0, 0.85fr);
	gap: 22px;
}

.atb-home-reviews-faq__reviews,
.atb-home-reviews-faq__faq {
	padding: 24px;
	border: 1px solid rgba(15, 23, 42, 0.10);
	border-radius: 18px;
	background: #ffffff;
	box-shadow: 0 18px 46px rgba(15, 23, 42, 0.06);
}

.atb-home-reviews-faq__title {
	margin: 0 0 18px;
	color: #0f172a;
	font-size: clamp(24px, 2.4vw, 32px);
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: -0.04em;
}

.atb-home-reviews-faq__review-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 16px;
}

.atb-home-reviews-faq__review-card {
	display: flex;
	flex-direction: column;
	min-height: 214px;
	padding: 18px;
	border: 1px solid rgba(15, 23, 42, 0.10);
	border-radius: 10px;
	background: #ffffff;
}

.atb-home-reviews-faq__stars {
	margin-bottom: 14px;
	color: #f59e0b;
	font-size: 17px;
	font-weight: 800;
	letter-spacing: 0.05em;
	line-height: 1;
}

.atb-home-reviews-faq__review-text {
	margin: 0;
	color: #475569;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.55;
}

.atb-home-reviews-faq__review-meta {
	display: grid;
	gap: 3px;
	margin-top: auto;
	padding-top: 18px;
	color: #64748b;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.35;
}

.atb-home-reviews-faq__review-meta strong {
	color: #0f172a;
	font-weight: 800;
}

.atb-home-reviews-faq__faq-list {
	display: grid;
	gap: 8px;
}

.atb-home-reviews-faq__faq-item {
	border: 1px solid rgba(15, 23, 42, 0.10);
	border-radius: 8px;
	background: #ffffff;
}

.atb-home-reviews-faq__question {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 48px;
	padding: 0 16px;
	color: #0f172a;
	font-size: 14px;
	font-weight: 800;
	line-height: 1.25;
	cursor: pointer;
	list-style: none;
}

.atb-home-reviews-faq__question::-webkit-details-marker {
	display: none;
}

.atb-home-reviews-faq__plus {
	flex: 0 0 auto;
	color: #0f172a;
	font-size: 20px;
	font-weight: 700;
	line-height: 1;
}

.atb-home-reviews-faq__faq-item[open] .atb-home-reviews-faq__plus {
	transform: rotate(45deg);
}

.atb-home-reviews-faq__answer {
	padding: 0 16px 16px;
	color: #64748b;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.55;
}

.atb-home-reviews-faq__answer p {
	margin: 0;
}

@media (max-width: 1180px) {
	.atb-home-reviews-faq__grid {
		grid-template-columns: 1fr;
	}

	.atb-home-reviews-faq__review-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 768px) {
	.atb-home-reviews-faq {
		padding-bottom: 52px;
	}

	.atb-home-reviews-faq__container {
		width: min(calc(100% - 32px), 100%);
	}

	.atb-home-reviews-faq__reviews,
	.atb-home-reviews-faq__faq {
		padding: 20px;
	}

	.atb-home-reviews-faq__review-grid {
		grid-template-columns: 1fr;
	}

	.atb-home-reviews-faq__review-card {
		min-height: auto;
	}
}

/* === Airport Transfers page: remove blueprint/grid background: start === */
/* Убирает возможную клетку/blueprint grid из этого блока, если она задана через псевдоэлементы. */
.atb-home-reviews-faq [class*="__grid-bg"],
.atb-home-reviews-faq [class*="__blueprint"],
.atb-home-reviews-faq [class*="__pattern"] {
    display: none;
    background: none;
    background-image: none;
}
/* === Airport Transfers page: remove blueprint/grid background: end === */
