/**
 * Card Styles
 *
 * VISUAL THEME FRAMEWORK.
 *
 * Establishes .atb-card as the canonical card component: consistent
 * padding, border, radius, shadow, and a hover lift consistent with
 * the button system's interaction language (see buttons.css in this
 * same framework directory).
 *
 * HONEST SCOPE NOTE: services/pricing/testimonials (Locked Sections
 * phase) each already define their OWN __card class
 * (.atb-services__card, .atb-pricing__card, .atb-testimonials__card)
 * with very similar but not identical values, scoped under their own
 * [data-atb-section="..."] selector. This file does NOT retroactively
 * merge those three into .atb-card or edit those section files —
 * doing so would be exactly the section-level rewrite this brief
 * prohibits ("Existing sections must automatically inherit the new
 * styling without requiring section rewrites" describes a one-way
 * guarantee: existing output doesn't break, not that every existing
 * card silently becomes pixel-identical to the new system). Those
 * three sections continue rendering exactly as before. .atb-card is
 * the canonical definition any NEW card-shaped content (future
 * blocks, future sections, or a future content update to an existing
 * section's preset) should reach for going forward.
 *
 * TOKEN-ONLY: every value reads from var(--atb-*).
 */

.atb-card {
	display: block;
	padding: var(--atb-space-6, 1.5rem);
	background-color: var(--atb-color-background, #ffffff);
	border: 1px solid var(--atb-color-border, #e5e5e5);
	border-radius: var(--atb-radius-lg, 0.75rem);
	box-shadow: var(--atb-shadow-sm, 0 1px 2px rgb(0 0 0 / 0.05));
	transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.atb-card:hover {
	transform: translateY(-2px);
	box-shadow: var(--atb-shadow-md, 0 4px 6px rgb(0 0 0 / 0.1));
}

.atb-card--flat {
	box-shadow: var(--atb-shadow-none, none);
}

.atb-card--flat:hover {
	transform: none;
	box-shadow: var(--atb-shadow-none, none);
}

.atb-card--surface {
	background-color: var(--atb-color-surface, #f5f5f5);
	border-color: transparent;
}
