/**
 * Feature List widget.
 *
 * Builds on core.css (.manvan-grid, .manvan-icon-badge, .manvan-checklist).
 * Layouts: icon cards, compact icon rows, green tick checklist.
 *
 * @package ManVan
 */

.manvan-feature-list__list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.manvan-feature-list__item {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 1.125rem;
	min-width: 0;
	margin: 0;
}

.manvan-feature-list__text {
	min-width: 0;
}

.manvan-block .manvan-feature-list__title {
	margin: 0 0 0.4rem;
	font-family: var(--manvan-font-heading);
	font-size: clamp(1.0625rem, 1rem + 0.3vw, 1.1875rem);
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: -0.01em;
	color: var(--manvan-heading);
}

.manvan-block .manvan-feature-list__description {
	margin: 0;
	font-size: 0.96875rem;
	line-height: 1.65;
	color: var(--manvan-muted);
	text-wrap: pretty;
}

/* ---- Icon cards ------------------------------------------------------- */

.manvan-feature-list--cards .manvan-feature-list__item {
	padding: clamp(1.5rem, 1.2rem + 0.9vw, 2rem);
	border: 1px solid var(--manvan-border);
	border-radius: var(--manvan-radius);
	background-color: var(--manvan-surface);
	box-shadow: var(--manvan-shadow-sm);
	transition: transform 0.25s var(--manvan-ease), box-shadow 0.25s ease, border-color 0.25s ease;
}

.manvan-feature-list--cards .manvan-feature-list__item:hover {
	transform: translateY(-3px);
	border-color: var(--manvan-border-strong);
	box-shadow: var(--manvan-shadow);
}

.manvan-feature-list--cards .manvan-feature-list__icon {
	width: 3.25rem;
	height: 3.25rem;
}

/* ---- Icon + text rows ------------------------------------------------- */

.manvan-feature-list--inline .manvan-feature-list__list {
	row-gap: clamp(1.5rem, 1.2rem + 1vw, 2.25rem);
}

.manvan-feature-list--inline .manvan-feature-list__item {
	flex-direction: row;
	align-items: flex-start;
	gap: 1rem;
}

.manvan-feature-list--inline .manvan-feature-list__icon {
	width: 2.75rem;
	height: 2.75rem;
}

.manvan-feature-list--inline .manvan-feature-list__icon svg {
	width: 1.25rem;
	height: 1.25rem;
}

.manvan-feature-list--inline .manvan-feature-list__text {
	padding-top: 0.2rem;
}

/* ---- Checklist -------------------------------------------------------- */

.manvan-feature-list--checklist .manvan-feature-list__list {
	gap: 1.25rem 2rem;
}

.manvan-feature-list--checklist .manvan-feature-list__item {
	display: block;
}

.manvan-block.manvan-feature-list--checklist .manvan-feature-list__title {
	margin-bottom: 0.2rem;
	font-size: 1rem;
}

.manvan-block.manvan-feature-list--checklist .manvan-feature-list__description {
	font-size: 0.9375rem;
}

/* ---- Icon styles ------------------------------------------------------ */

.manvan-feature-list--icon-circle-bg .manvan-feature-list__icon {
	border-radius: 50%;
}

.manvan-feature-list--icon-square-bg .manvan-feature-list__icon {
	border-radius: 14px;
}

.manvan-feature-list--icon-plain .manvan-feature-list__icon {
	width: auto;
	height: auto;
	background-color: transparent;
}

.manvan-feature-list--icon-plain .manvan-feature-list__icon svg {
	width: 1.75rem;
	height: 1.75rem;
}
