.fdclinic-preparation-tips {
	--fdclinic-preparation-count: 5;
	width: 100%;
	color: #212529;
	font-family: "Roboto", Arial, sans-serif;
	box-sizing: border-box;
	margin-bottom: 50px;
}

.fdclinic-preparation-tips *,
.fdclinic-preparation-tips *::before,
.fdclinic-preparation-tips *::after {
	box-sizing: border-box;
}

.fdclinic-preparation-tips__inner {
	width: 100%;
	max-width: 1240px;
	margin-right: auto;
	margin-left: auto;
}

.fdclinic-preparation-tips__heading-wrap {
	margin-bottom: 16px;
}

.fdclinic-preparation-tips__title {
	margin: 0;
	font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
	font-size: 36px;
	font-weight: 400;
	line-height: 42px;
	color: #333;
}

.fdclinic-preparation-tips__band {
	background: #f4f4f4;
	box-shadow: 0 0 0 100vmax #f4f4f4;
	clip-path: inset(0 -100vmax);
}

.fdclinic-preparation-tips__band > .fdclinic-preparation-tips__inner {
	padding-top: 32px;
	padding-bottom: 64px;
}

.fdclinic-preparation-tips__subtitle {
	margin: 0 0 24px;
	font-family: "Roboto", Arial, sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
	color: #212529;
}

.fdclinic-preparation-tips__grid {
	display: grid;
	grid-template-columns: repeat(
		var(--fdclinic-preparation-count),
		minmax(0, 1fr)
	);
	gap: 16px;
	width: 100%;
}

.fdclinic-preparation-tips__card {
	position: relative;
	min-width: 0;
	min-height: 168px;
	margin: 0;
	padding: 20px;
	overflow: hidden;
	border-radius: 12px;
	background:
		linear-gradient(
			113deg,
			#979797 -27.79%,
			rgba(255, 255, 255, 0) 21.79%
		),
		#fff;
	box-shadow: 0 12px 30px 0 rgba(214, 201, 192, 0.45);
}

.fdclinic-preparation-tips__number {
	margin: 0 0 8px;
	font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 21px;
	color: #cf3029;
}

.fdclinic-preparation-tips__card-title {
	margin: 0 0 8px;
	font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
	font-size: 18px;
	font-weight: 400;
	line-height: 21px;
	color: #212529;
}

.fdclinic-preparation-tips__card-text {
	margin: 0;
	font-family: "Roboto", Arial, sans-serif;
	font-size: 14px;
	font-weight: 400;
	line-height: 20px;
	color: #212529;
}

@media (max-width: 1100px) {
	.fdclinic-preparation-tips__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.fdclinic-preparation-tips__inner {
		padding-right: 24px;
		padding-left: 24px;
	}

	.fdclinic-preparation-tips__heading-wrap {
		padding-right: 24px;
		padding-left: 24px;
	}
}

@media (max-width: 760px) {
	.fdclinic-preparation-tips__title {
		font-size: 28px;
		line-height: 32px;
	}

	.fdclinic-preparation-tips__band > .fdclinic-preparation-tips__inner {
		padding-top: 24px;
		padding-bottom: 32px;
	}

	.fdclinic-preparation-tips__subtitle {
		margin-bottom: 20px;
	}

	.fdclinic-preparation-tips__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.fdclinic-preparation-tips__card {
		min-height: 160px;
	}
}

@media (max-width: 520px) {
	.fdclinic-preparation-tips {
		overflow: visible;
	}

	.fdclinic-preparation-tips__heading-wrap {
		padding-right: 15px;
		padding-left: 15px;
	}

	.fdclinic-preparation-tips__inner {
		padding-right: 0;
		padding-left: 15px;
	}

	.fdclinic-preparation-tips__band > .fdclinic-preparation-tips__inner {
		padding-top: 24px;
		padding-bottom: 32px;
	}

	.fdclinic-preparation-tips__subtitle {
		margin-bottom: 20px;
		padding-right: 15px;
		font-size: 15px;
		line-height: 22px;
	}

	.fdclinic-preparation-tips__grid {
		display: flex;
		grid-template-columns: none;
		gap: 16px;

		width: auto;

		/*
		 * 30px слева — пространство для тени.
		 * margin-left: -30px компенсирует его,
		 * поэтому сама карточка остаётся на исходных 15px.
		 */
		padding: 18px 16px 32px 30px;
		margin: -18px 0 -32px 0px;

		overflow-x: auto;
		overflow-y: hidden;

		scroll-snap-type: x proximity;
		scroll-behavior: smooth;
		-webkit-overflow-scrolling: touch;

		scrollbar-width: none;
		-ms-overflow-style: none;
	}

	.fdclinic-preparation-tips__grid::-webkit-scrollbar {
		display: none;
		width: 0;
		height: 0;
	}

	.fdclinic-preparation-tips__card {
		flex: 0 0 82%;
		width: 82%;
		min-width: 0;
		min-height: 168px;

		scroll-snap-align: start;
		scroll-snap-stop: normal;
	}
}