.cleanify-container { width: min(calc(100% - 2 * var(--cleanify-layout-page-padding)), var(--cleanify-layout-content)); margin-inline: auto; }
.cleanify-container--narrow { max-width: var(--cleanify-layout-reading); }
.cleanify-section { padding-block: var(--cleanify-space-section); }
.cleanify-section--full-bleed { width: 100%; }
.cleanify-stack { display: flex; flex-direction: column; gap: var(--cleanify-space-md); }
.cleanify-stack--tight { gap: var(--cleanify-space-sm); }
.cleanify-stack--loose { gap: var(--cleanify-space-xl); }
.cleanify-cluster { display: flex; flex-wrap: wrap; align-items: center; gap: var(--cleanify-space-sm) var(--cleanify-space-md); }
.cleanify-grid { display: grid; min-width: 0; gap: var(--cleanify-layout-grid-gap); grid-template-columns: minmax(0, 1fr); }
.cleanify-grid--2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.cleanify-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cleanify-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.cleanify-surface { min-width: 0; border: 1px solid var(--cleanify-color-border); border-radius: var(--cleanify-radius-card); background: var(--cleanify-color-surface); }
@media (max-width: 39.999rem) {
	.cleanify-container { width: min(calc(100% - 2 * var(--cleanify-layout-mobile-padding)), var(--cleanify-layout-content)); }
	.cleanify-grid--2, .cleanify-grid--3, .cleanify-grid--4 { grid-template-columns: minmax(0, 1fr); }
}
@media (min-width: 40rem) and (max-width: 63.999rem) {
	.cleanify-grid--3, .cleanify-grid--4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
