/**
 * Bijoux — utilities.css
 * Utilitaires légers, snappés sur l'échelle d'espacement 8pt (tokens).
 */
.sws-text-center { text-align: center; }
.sws-text-start { text-align: start; }
.sws-text-muted { color: var(--color-text-muted); }
.sws-text-accent { color: var(--color-accent-ink); }
.sws-uppercase { text-transform: uppercase; letter-spacing: var(--letter-spacing-label); }
.sws-serif { font-family: var(--font-family-heading); }

.sws-flex { display: flex; }
.sws-flex-between { display: flex; align-items: center; justify-content: space-between; gap: var(--space-4); }
.sws-flex-wrap { flex-wrap: wrap; }
.sws-grid { display: grid; }

.sws-mt-2 { margin-top: var(--space-2); }
.sws-mt-3 { margin-top: var(--space-3); }
.sws-mt-4 { margin-top: var(--space-4); }
.sws-mt-5 { margin-top: var(--space-5); }
.sws-mt-6 { margin-top: var(--space-6); }
.sws-mb-2 { margin-bottom: var(--space-2); }
.sws-mb-3 { margin-bottom: var(--space-3); }
.sws-mb-4 { margin-bottom: var(--space-4); }
.sws-mb-5 { margin-bottom: var(--space-5); }
.sws-mb-6 { margin-bottom: var(--space-6); }

.sws-hidden { display: none !important; }
@media (max-width: 760px) { .sws-hide-mobile { display: none !important; } }
@media (min-width: 761px) { .sws-hide-desktop { display: none !important; } }

.sws-divider { height: 1px; background: var(--color-border); border: 0; margin-block: var(--space-6); }
.sws-aspect-square { aspect-ratio: 1 / 1; object-fit: cover; }
