/**
 * TBW site styles
 * Reusable components first; page-specific CSS should be loaded conditionally.
 */
/**
 * Local Heebo variable font.
 *
 * The relative URL works automatically on every domain
 * where the TBW child theme is installed.
 */

.tbw-container {
	width: min(100% - 2rem, var(--tbw-content-width));
	margin-inline: auto;
}
/**
 * Accessible keyboard focus.
 */
:where(
	a,
	button,
	input,
	select,
	textarea,
	summary,
	[tabindex]:not([tabindex="-1"])
):focus-visible {
	outline: 3px solid var(--tbw-focus-color, #005fcc);
	outline-offset: 3px;
}

/**
 * Avoid removing focus indicators applied by browsers or Elementor.
 */
:where(
	a,
	button,
	input,
	select,
	textarea,
	summary
):focus:not(:focus-visible) {
	outline: none;
}
/**
 * Respect the visitor's operating-system motion preference.
 */
@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto !important;
	}

	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
	}
}