/**
 * Utilities — small, single-purpose helper classes. Use sparingly.
 */

.rt-sr-only {
	position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0;
}

.rt-text-center { text-align: center; }
.rt-text-secondary { color: var(--rt-color-text-secondary); }
.rt-mt-0 { margin-top: 0; }
.rt-mb-0 { margin-bottom: 0; }
.rt-mt-2 { margin-top: var(--rt-space-2); }
.rt-mx-auto { margin-inline: auto; }
.rt-justify-center { justify-content: center; }
.rt-items-center { align-items: center; }
.rt-grid-span-4 { grid-column: span 4; }
.rt-hidden { display: none !important; }

/* Container width scale (code-quality pass, v1.0.23) — 760px already exists as
   .rt-section--surface's sibling .rt-section--narrow in components.css; these
   fill the other sizes already in ad hoc use across the theme so every
   container width comes from one shared scale instead of a repeated literal. */
.rt-container--xs { max-width: 400px; }
.rt-container--sm { max-width: 600px; }
.rt-container--lg { max-width: 900px; }

@media (max-width: 767px) { .rt-hide-mobile { display: none !important; } }
@media (min-width: 1024px) { .rt-hide-desktop { display: none !important; } }
