/* ==========================================================================
   9WEB STARTER THEME — UTILITIES
   Small, single-purpose helper classes. Kept deliberately short — this
   is not a utility-first framework; components should mostly be
   styled with real component CSS (later phases), not utility soup.
   ========================================================================== */

/* Visually hide content while keeping it available to screen readers. */
.is-9w-visually-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

/* Reveal on focus — pair with .is-9w-visually-hidden for skip-links. */
.is-9w-visually-hidden.is-9w-show-on-focus:focus {
	position: static !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	overflow: visible !important;
	clip: auto !important;
	white-space: normal !important;
}

.is-9w-radius-sm { border-radius: var(--9w-radius-sm); }
.is-9w-radius-md { border-radius: var(--9w-radius-md); }
.is-9w-radius-lg { border-radius: var(--9w-radius-lg); }
.is-9w-radius-xl { border-radius: var(--9w-radius-xl); }
.is-9w-radius-pill { border-radius: var(--9w-radius-pill); }

.is-9w-shadow-sm { box-shadow: var(--9w-shadow-sm); }
.is-9w-shadow-md { box-shadow: var(--9w-shadow-md); }
.is-9w-shadow-lg { box-shadow: var(--9w-shadow-lg); }
