/* MORIFA Featured Products Block */

.morifa-featured-products {
	background-color: var(--color-cream, #F7F1E5);
	padding-top: var(--space-16, 4rem);
	padding-bottom: var(--space-16, 4rem);
}

/* === Tab Filters (above product grid) === */
.morifa-featured-tabs {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.5rem;
	margin: 3rem 0 2rem;
}

.morifa-featured-tab {
	display: inline-block;
	padding: 0.625rem 1.5rem;
	font-family: var(--font-body);
	font-size: 0.875rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--color-sage, #31573F);
	background: transparent;
	border: 1px solid rgba(49, 87, 63, 0.3);
	border-radius: 4px;
	text-decoration: none;
	transition: all 250ms ease;
	cursor: pointer;
}

.morifa-featured-tab:hover {
	background: rgba(49, 87, 63, 0.08);
	border-color: var(--color-sage, #31573F);
	color: var(--color-sage, #31573F);
}

.morifa-featured-tab.is-active {
	background: var(--color-sage-dark, #1F4D38);
	border-color: var(--color-sage-dark, #1F4D38);
	color: var(--color-white, #fff);
}

.morifa-featured-tab.is-active:hover {
	background: var(--color-sage-dark, #1F4D38);
	color: var(--color-white, #fff);
}

@media (max-width: 640px) {
	.morifa-featured-tabs { gap: 0.375rem; }
	.morifa-featured-tab { padding: 0.5rem 1rem; font-size: 0.75rem; }
}

/* === 4 Featured Product Cards === */
.morifa-featured-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-6, 1.5rem);
	margin-bottom: var(--space-16, 4rem);
}

@media (min-width: 640px) {
	.morifa-featured-grid { grid-template-columns: repeat(2, 1fr); }
}

@media (min-width: 1024px) {
	.morifa-featured-grid { grid-template-columns: repeat(4, 1fr); }
}

.morifa-featured-card {
	display: flex;
	flex-direction: column;
	background: var(--color-white, #fff);
	border-radius: var(--radius-md, 8px);
	overflow: hidden;
	text-decoration: none;
	color: inherit;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
	transition: transform 250ms ease, box-shadow 250ms ease;
}

.morifa-featured-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.12);
	color: inherit;
}

.morifa-featured-card-image {
	position: relative;
	width: 100%;
	height: 224px;
	background-size: cover;
	background-position: center;
	background-color: var(--color-stone, #E8E0D0);
}

.morifa-featured-card-body {
	display: flex;
	flex-direction: column;
	gap: var(--space-2, 0.5rem);
	padding: var(--space-5, 1.25rem);
	flex: 1;
}

.morifa-featured-card-badge {
	position: absolute;
	top: 0.75rem;
	left: 0.75rem;
	display: inline-block;
	font-family: var(--font-body);
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	color: var(--color-white);
	background: var(--color-sage-dark, #1F4D38);
	padding: 4px 10px;
	border-radius: 4px;
	z-index: 2;
}

.morifa-featured-card-title {
	font-family: var(--font-display);
	font-weight: 400;
	font-size: var(--text-xl, 1.25rem);
	line-height: 1.3;
	color: var(--color-espresso, #2B1F11);
	margin: 0;
}

.morifa-featured-card-desc {
	font-family: var(--font-body);
	font-size: var(--text-sm, 0.875rem);
	line-height: 1.5;
	color: var(--color-text-muted, #6B5D4A);
	flex: 1;
	margin: 0;
}

.morifa-featured-card-cta {
	display: inline-block;
	margin-top: var(--space-3, 0.75rem);
	font-family: var(--font-body);
	font-size: var(--text-xs, 0.75rem);
	font-weight: 600;
	letter-spacing: 0.12em;
	color: var(--color-brass, #D1A84B);
	text-transform: uppercase;
}

/* === 2 Quality Callouts — alternating 2-col layout === */
.morifa-featured-callouts {
	display: flex;
	flex-direction: column;
	gap: var(--space-12, 3rem);
	margin: var(--space-16, 4rem) 0 var(--space-12, 3rem);
}

.morifa-featured-callout {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-8, 2rem);
	background: transparent;
	border-radius: 0;
	overflow: visible;
	box-shadow: none;
	align-items: center;
}

@media (min-width: 768px) {
	.morifa-featured-callout { grid-template-columns: 1fr 1fr; gap: var(--space-12, 3rem); }
}

.morifa-featured-callout[data-stagger="2"] .morifa-featured-callout-body { order: 2; }
.morifa-featured-callout[data-stagger="2"] .morifa-featured-callout-image { order: 1; }

.morifa-featured-callout-image {
	width: 100%;
	height: 320px;
	background-size: cover;
	background-position: center;
	background-color: var(--color-stone, #E8E0D0);
	border-radius: var(--radius-md, 8px);
}

@media (min-width: 768px) {
	.morifa-featured-callout-image { height: 420px; }
}

.morifa-featured-callout-body { padding: 0; }

.morifa-featured-callout-title {
	font-family: var(--font-display);
	font-weight: 400;
	font-size: var(--text-2xl, 1.5rem);
	line-height: 1.3;
	color: var(--color-espresso, #2B1F11);
	margin: 0 0 var(--space-4, 1rem);
}

.morifa-featured-callout-list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: var(--space-3, 0.75rem);
}

.morifa-featured-callout-list li {
	position: relative;
	padding-left: var(--space-6, 1.5rem);
	font-family: var(--font-body);
	font-size: var(--text-sm, 0.875rem);
	line-height: 1.55;
	color: var(--color-text, #3D2F1F);
}

.morifa-featured-callout-list li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 0.55em;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: var(--color-brass, #D1A84B);
}

/* === VIEW ALL CTA === */
.morifa-featured-cta-row { text-align: center; }

.morifa-featured-cta-link {
	display: inline-block;
	font-family: var(--font-body);
	font-size: var(--text-sm, 0.875rem);
	font-weight: 600;
	letter-spacing: 0.12em;
	color: var(--color-sage-dark, #1F4D38);
	text-transform: uppercase;
	text-decoration: none;
	padding: 0.875rem 2rem;
	border: 1.5px solid var(--color-sage-dark, #1F4D38);
	border-radius: 4px;
	transition: background-color 200ms ease, color 200ms ease;
}

.morifa-featured-cta-link:hover {
	background-color: var(--color-sage-dark, #1F4D38);
	color: var(--color-white, #fff);
}

/* === Tab Panels (only active panel visible) === */
.morifa-featured-panel { display: none; }
.morifa-featured-panel.is-active { display: block; }

.morifa-featured-tab { cursor: pointer; font: inherit; }
