/* Public Feature Card: controlled presets layered over the shared 2.x/3.x card recipe. */
.etb-component-feature-card {
	width: 100%;
	height: 100%;
}

.etb-component-feature-card .etb-features__body {
	min-width: 0;
}

.etb-component-feature-card--actions-bottom .etb-features__body,
.etb-component-feature-card--actions-bottom .etb-features__description {
	display: flex;
	flex: 1 1 auto;
	flex-direction: column;
}

.etb-component-feature-card--actions-bottom .etb-features__description > :is(.etb-button-block, .etb-button-group):last-child {
	margin-top: auto;
	padding-top: var(--eth-space-s, 1rem);
}

.etb-component-feature-card--layout-horizontal {
	flex-direction: row;
	align-items: flex-start;
	gap: var(--eth-space-s, 1rem);
}

.etb-component-feature-card--layout-horizontal .etb-features__icon {
	flex: 0 0 auto;
	margin-bottom: 0;
}

.etb-component-feature-card--layout-horizontal .etb-features__body {
	flex: 1 1 auto;
}

.etb-component-feature-card--density-compact {
	padding: var(--eth-space-s, 1rem);
}

.etb-component-feature-card--density-spacious {
	gap: var(--eth-space-xs, .75rem);
	padding: var(--eth-space-l, 2.25rem);
}

.etb-component-feature-card--align-center {
	align-items: center;
	text-align: center;
}

.etb-component-feature-card--align-end {
	align-items: flex-end;
	text-align: end;
}

.etb-component-feature-card--align-center .etb-features__body,
.etb-component-feature-card--align-end .etb-features__body {
	width: 100%;
}

.etb-component-feature-card--icon-size-s .etb-features__icon {
	width: 2.25rem;
	height: 2.25rem;
	font-size: 1.1rem;
}

.etb-component-feature-card--icon-size-l .etb-features__icon {
	width: 3.5rem;
	height: 3.5rem;
	font-size: 1.85rem;
}

.etb-component-feature-card--icon-size-xl .etb-features__icon {
	width: min(10rem, 52%);
	height: 3.5rem;
	font-size: 2rem;
}

.etb-component-feature-card .etb-features__icon svg {
	width: 1em;
	height: 1em;
}

.etb-component-feature-card .etb-features__icon--img {
	object-fit: cover;
}

.etb-component-feature-card--icon-plain .etb-features__icon {
	background: transparent;
	border-radius: 0;
}

.etb-component-feature-card--icon-square .etb-features__icon {
	border-radius: 0;
}

.etb-component-feature-card--icon-rounded .etb-features__icon {
	border-radius: var(--eth-radius-m, .8rem);
}

.etb-component-feature-card--icon-circle .etb-features__icon {
	border-radius: 50%;
}

.etb-component-feature-card.is-style-eth-logo-list {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: var(--eth-space-m, 1.5rem);
	padding: var(--eth-space-l, 2.25rem);
	border: 1px solid var(--eth-border, rgba(17, 24, 39, .12));
	border-radius: var(--eth-radius-l, 1rem);
	background: var(--eth-bg-surface, #fff);
	box-shadow: var(--eth-shadow-s, 0 2px 6px rgba(0, 0, 0, .08));
	text-align: start;
}

.etb-component-feature-card.is-style-eth-logo-list .etb-features__icon {
	align-self: flex-start;
	width: min(10rem, 52%);
	height: 3.5rem;
	margin: 0;
	padding: 0;
	border-radius: 0;
	background: transparent;
	color: var(--eth-primary, #4f46e5);
	object-fit: contain;
	object-position: left center;
}

.etb-component-feature-card.is-style-eth-logo-list .etb-features__body {
	width: 100%;
	padding-top: var(--eth-space-m, 1.5rem);
	border-top: 1px solid var(--eth-border, rgba(17, 24, 39, .12));
}

.etb-component-feature-card.is-style-eth-logo-list .etb-features__description :is(ul, ol) {
	display: grid;
	gap: var(--eth-space-xs, .75rem);
	margin-block: var(--eth-space-s, 1rem);
}

.etb-component-feature-card.is-style-eth-logo-list .etb-features__description ul {
	padding-inline-start: 0;
	list-style: none;
}

.etb-component-feature-card.is-style-eth-logo-list .etb-features__description ul > li {
	position: relative;
	padding-inline-start: 1.65rem;
}

.etb-component-feature-card.is-style-eth-logo-list .etb-features__description ul > li::before {
	content: "✓";
	position: absolute;
	inset-inline-start: 0;
	top: 0;
	color: var(--eth-primary, #4f46e5);
	font-weight: 700;
}

.etb-component-feature-card.etb-component--heading-s .etb-component-heading {
	font-size: var(--eth-fs-body, 1rem);
}

.etb-component-feature-card.etb-component--heading-m .etb-component-heading {
	font-size: calc(var(--eth-fs-h3, 1.35rem) * .78);
}

.etb-component-feature-card.etb-component--heading-l .etb-component-heading {
	font-size: var(--eth-fs-h3, 1.35rem);
}

.etb-component-feature-card.etb-component--motion-none,
.etb-component-feature-card.etb-component--motion-none .etb-features__icon {
	transition: none !important;
}

.etb-component-feature-card.etb-component--motion-none:hover,
.etb-component-feature-card.etb-component--motion-none:hover .etb-features__icon {
	transform: none !important;
}

@media (hover: hover) {
	.etb-component-feature-card.etb-component--motion-emphasized:hover:not(.is-style-eth-minimal) {
		transform: translateY(-.65rem);
		box-shadow: var(--eth-shadow-l, 0 18px 36px rgba(0, 0, 0, .16));
	}

	.etb-component-feature-card.etb-component--motion-emphasized:hover .etb-features__icon {
		transform: scale(1.14);
	}
}

@media (max-width: 600px) {
	.etb-component-feature-card--layout-horizontal {
		gap: var(--eth-space-xs, .75rem);
	}

	.etb-component-feature-card.is-style-eth-logo-list {
		padding: var(--eth-space-m, 1.5rem);
	}
}

@media (prefers-reduced-motion: reduce) {
	.etb-component-feature-card,
	.etb-component-feature-card .etb-features__icon {
		transition: none !important;
	}
}
