.home-categories__carousel {
	min-width: 0;
}

.home-categories__carousel-controls {
	display: flex;
	gap: 0.5rem;
	justify-content: flex-end;
	margin-top: 1rem;
}

.home-categories__carousel-button {
	display: inline-grid;
	width: 2.75rem;
	height: 2.75rem;
	place-items: center;
	border: 1px solid var(--fc-border, #ded8ce);
	border-radius: var(--fc-radius-pill, 999px);
	color: var(--fc-brand-primary, #0f6342);
	background: var(--fc-surface, #fff);
	font-size: 1.25rem;
	line-height: 1;
	cursor: pointer;
}

.home-categories__carousel-button:hover:not(:disabled),
.home-categories__carousel-button:focus-visible {
	border-color: var(--fc-brand-accent, #c17658);
}

.home-categories__carousel-button:disabled {
	opacity: 0.38;
	cursor: default;
}

.home-categories__grid.home-categories__grid--carousel {
	display: grid;
	grid-template-columns: none;
	grid-auto-flow: column;
	grid-auto-columns: calc((100% - 3rem) / 4);
	gap: 1rem;
	overflow-x: auto;
	overflow-y: hidden;
	max-width: 100%;
	min-width: 0;
	padding-bottom: 0.35rem;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	overscroll-behavior-inline: contain;
	-webkit-overflow-scrolling: touch;
}

.home-categories__grid.home-categories__grid--carousel::-webkit-scrollbar {
	display: none;
}

.home-categories__grid--carousel .home-categories__item {
	min-width: 0;
	scroll-snap-align: start;
}

@media (max-width: 1024px) {
	.home-categories__grid.home-categories__grid--carousel {
		grid-template-columns: none;
		grid-auto-columns: calc((100% - 2rem) / 3);
	}
}

@media (max-width: 768px) {
	.home-categories__grid.home-categories__grid--carousel {
		grid-template-columns: none;
		grid-auto-columns: min(72vw, 20rem);
		scroll-padding-inline: 0;
	}
}

@media (max-width: 520px) {
	.home-categories__carousel-controls {
		margin-top: 0.75rem;
	}

	.home-categories__grid.home-categories__grid--carousel {
		grid-template-columns: none;
		grid-auto-columns: min(82vw, 18rem);
		gap: 0.75rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.home-categories__grid.home-categories__grid--carousel {
		scroll-behavior: auto;
	}
}
