/* Sidebar Categories */
.af-cat-list {
	display       : flex;
	flex-direction: column;
	max-width     : 100%;
}

.af-cat-item {
	text-decoration: none;
	color          : #111111 !important;
	display        : flex;
	align-items    : center;
	justify-content: space-between;
	font-size      : 16px !important;
	transition     : all 0.3s ease-in-out;
	font-weight    : 500 !important;
}

.af-cat-item span {
	font-size: inherit !important;
}

.af-cat-item:hover {
	color: #FF7D00 !important;
}

.af-cat-item:not(:last-child) {
	border-bottom : 1px solid #ededed !important;
	padding-bottom: 12px;
	margin-bottom : 12px;
}

.af-cat-number {
	height         : 25px;
	width          : 25px;
	border-radius  : 100%;
	background     : #e9e9e9;
	font-weight    : 500;
	font-size      : 13px;
	display        : flex;
	align-items    : center;
	justify-content: center;
	transition     : all 0.3s ease-in-out;
}

.af-cat-item:hover .af-cat-number {
	background: #FF7D00 !important;
	color     : #fff !important;
}

/* Subcategories Grid */
.af-subcat-grid {
	display              : grid;
	grid-template-columns: repeat(1, 1fr);
	gap                  : 20px;
}

@media screen and (min-width: 768px) {
	.af-subcat-grid {
		grid-template-columns: repeat(var(--af-subcat-cols, 2), 1fr);
	}
}

.af-subcat-card {
	border        : 1px solid #e0e0e0;
	border-radius : 8px;
	overflow      : hidden;
	background    : #fff;
	box-shadow    : 0 2px 8px rgba(0, 0, 0, 0.05);
	display       : flex;
	flex-direction: column;
}

.af-subcat-card__header {
	position: relative;
	height  : 180px;
}

.af-subcat-card__banner {
	width     : 100%;
	height    : 100%;
	object-fit: cover;
}

.af-subcat-card__overlay {
	position   : absolute;
	inset      : 0;
	background : linear-gradient(180deg, transparent 40%, rgba(0, 0, 0, 0.7));
	display    : flex;
	align-items: flex-end;
	padding    : 15px;
}

.af-subcat-card__title {
	color      : #fff !important;
	margin     : 0;
	font-size  : 20px;
	font-weight: 700;
}

.af-subcat-card__body {
	padding  : 20px;
	flex-grow: 1;
}

.af-subcat-card__desc {
	font-size    : 14px;
	color        : #444;
	margin-bottom: 15px;
	line-height  : 1.5;
}

.af-subcat-card__footer {
	padding   : 15px 20px;
	border-top: 1px solid #eee;
	display   : flex;
	gap       : 10px;
}

.af-subcat-btn {
	flex           : 1;
	text-align     : center;
	padding        : 10px 15px;
	border-radius  : 5px;
	text-decoration: none;
	font-size      : 14px;
	font-weight    : 600;
}

.af-subcat-btn--outline {
	border    : 1px solid #ccc;
	color     : #333;
	background: #f9f9f9;
}

.af-subcat-btn--solid {
	background: #111;
	color     : #fff !important;
}