/* =========================================================
   SOUQDENT HOME CATEGORY SLIDER
   ========================================================= */


.sd-home-categories {
	padding: 46px 0 50px;

	background: #ffffff;

	border-bottom: 1px solid #edf0f3;
}


/* ---------------------------------------------------------
   HEADING
   --------------------------------------------------------- */

.sd-categories-heading {
	display: flex;

	align-items: flex-end;
	justify-content: space-between;

	gap: 30px;

	margin-bottom: 25px;
}


.sd-section-kicker {
	display: block;

	margin-bottom: 6px;

	color: #7a8798;

	font-size: 11px;
	font-weight: 800;

	letter-spacing: .15em;

	text-transform: uppercase;
}


.sd-categories-heading h2 {
	margin: 0;

	color: #172033;

	font-size: 29px;

	font-weight: 700;

	letter-spacing: -.025em;
}


/* ---------------------------------------------------------
   ARROWS
   --------------------------------------------------------- */

.sd-categories-heading-actions {
	display: flex;

	align-items: center;

	gap: 8px;
}


.sd-category-slider-button {
	display: flex;

	align-items: center;
	justify-content: center;

	width: 38px;
	height: 38px;

	padding: 0;

	border: 1px solid #e0e5ea;

	border-radius: 9px;

	background: #f7f8fa;

	color: #172033;

	font-size: 18px;

	cursor: pointer;

	transition:
		background .2s ease,
		border-color .2s ease,
		transform .2s ease;
}


.sd-category-slider-button:hover {
	background: #ffae00;

	border-color: #ffae00;

	transform: translateY(-1px);
}


/* ---------------------------------------------------------
   SLIDER
   --------------------------------------------------------- */

.sd-category-slider-wrap {
	position: relative;

	overflow: hidden;
}


.sd-category-slider {
	display: flex;

	align-items: flex-start;

	gap: 22px;

	overflow-x: auto;

	padding: 4px 2px 12px;

	scroll-behavior: smooth;

	scroll-snap-type: x proximity;

	-webkit-overflow-scrolling: touch;

	scrollbar-width: none;
}


.sd-category-slider::-webkit-scrollbar {
	display: none;
}


/* ---------------------------------------------------------
   CATEGORY
   --------------------------------------------------------- */

.sd-category-item,
.sd-category-item:visited {
	flex: 0 0 132px;

	display: flex;

	flex-direction: column;

	align-items: center;

	gap: 11px;

	scroll-snap-align: start;

	color: #172033 !important;

	text-decoration: none !important;
}


/* ---------------------------------------------------------
   CATEGORY IMAGE CIRCLE
   --------------------------------------------------------- */

.sd-category-icon {
	position: relative;

	display: flex;

	align-items: center;
	justify-content: center;

	width: 92px;
	height: 92px;

	padding: 14px;

	border: 1px solid #e4e8ec;

	border-radius: 50%;

	background:
		linear-gradient(
			145deg,
			#ffffff 0%,
			#f5f7f9 100%
		);

	transition:
		transform .2s ease,
		border-color .2s ease,
		box-shadow .2s ease;
}


.sd-category-item:hover .sd-category-icon {
	transform: translateY(-3px);

	border-color: #ffae00;

	box-shadow:
		0 10px 22px rgba(23, 32, 51, .10);
}


.sd-category-icon img {
	display: block;

	width: 100%;
	height: 100%;

	object-fit: contain;
}


/* ---------------------------------------------------------
   FALLBACK
   --------------------------------------------------------- */

.sd-category-fallback {
	display: flex;

	align-items: center;
	justify-content: center;

	width: 62px;
	height: 62px;

	border-radius: 50%;

	background: #ffae00;

	color: #172033;

	font-size: 25px;

	font-weight: 800;
}


/* ---------------------------------------------------------
   CATEGORY NAME
   --------------------------------------------------------- */

.sd-category-name {
	max-width: 130px;

	color: #172033;

	font-size: 13px;

	font-weight: 700;

	line-height: 1.3;

	text-align: center;
}


/* ---------------------------------------------------------
   VIEW ALL
   --------------------------------------------------------- */

.sd-categories-footer {
	display: flex;

	justify-content: flex-end;

	margin-top: 8px;
}


.sd-view-all-categories,
.sd-view-all-categories:visited {
	display: inline-flex;

	align-items: center;

	gap: 7px;

	color: #172033 !important;

	text-decoration: none !important;

	font-size: 13px;

	font-weight: 700;
}


.sd-view-all-categories:hover {
	color: #e99400 !important;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

	.sd-home-categories {
		padding: 40px 0 44px;
	}


	.sd-category-item {
		flex-basis: 120px;
	}


	.sd-category-icon {
		width: 84px;
		height: 84px;
	}

}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 760px) {

	.sd-home-categories {
		padding: 34px 0 38px;
	}


	.sd-categories-heading {
		align-items: center;

		margin-bottom: 20px;
	}


	.sd-categories-heading h2 {
		font-size: 25px;
	}


	.sd-category-item {
		flex-basis: 104px;

		gap: 9px;
	}


	.sd-category-icon {
		width: 76px;
		height: 76px;

		padding: 11px;
	}


	.sd-category-name {
		font-size: 12px;
	}


	.sd-categories-footer {
		justify-content: flex-start;
	}

}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width: 480px) {

	.sd-section-kicker {
		font-size: 10px;
	}


	.sd-categories-heading h2 {
		font-size: 22px;
	}


	.sd-category-slider-button {
		width: 34px;
		height: 34px;
	}


	.sd-category-slider {
		gap: 13px;
	}


	.sd-category-item {
		flex-basis: 92px;
	}


	.sd-category-icon {
		width: 70px;
		height: 70px;
	}

}
/* Prevent page scrolling while mobile category menu is open */

html.sd-category-menu-open,
body.sd-category-menu-open{
	overflow:hidden !important;
}