@charset "utf-8";
/**
 * a11y-fixes.css — WCAG 2.1 AA oriented corrections for wntheme.
 *
 * Loaded LAST (see waz_enqueue_scripts in functions.php) so it wins over
 * bootstrap.css, iwcp.css/reset.css, flexslider.css and bootstrap-select.min.css,
 * all of which suppress focus indicators or set low-contrast colours.
 *
 * These are AA-oriented remediations. They reduce identified conformance gaps;
 * they do not by themselves establish conformance or legal compliance.
 */

/* =====================================================================
   1. FOCUS VISIBILITY — MOVED
   ---------------------------------------------------------------------
   Finding B-1 (SC 2.4.7 / 1.4.11) now ships separately in css/a11y-focus.css
   on branch a11y/b1-focus-visible, which was deployed to production on
   2026-08-04 and verified by A/B measurement. Do not re-add focus rules here:
   two stylesheets competing over the same declarations is how the first
   attempt regressed.
   ===================================================================== */

/* =====================================================================
   2. TEXT CONTRAST  — SC 1.4.3 Contrast (Minimum) (AA)
   ---------------------------------------------------------------------
   Measured on white (#ffffff):
     #b89531 gold        2.84:1  FAIL  -> #8a6f16  4.81:1
     #b5932f gold        2.93:1  FAIL  -> #8a6f16  4.81:1
     #999999 placeholder 2.85:1  FAIL  -> #6f6f6f  5.02:1  (bootstrap default)
     #888888 meta text   3.54:1  FAIL  -> #595959  7.00:1
   The gold is a brand colour; #8a6f16 is the nearest hue-preserving value
   that clears 4.5:1 for normal-size text. Confirm with the brand owner.
   ===================================================================== */

.text-gold,
.press-hero .highlight,
.success-highlight {
	color: #8a6f16;
}

.btn-gold,
.bg-gold {
	background-color: #8a6f16;   /* white text on this = 4.81:1 */
	color: #ffffff;
}

.btn-gold:hover,
.btn-gold:focus {
	background-color: #ffffff;
	color: #8a6f16;
}

.btn-gold-out {
	background-color: transparent;
	color: #8a6f16;
}

.btn-gold-out:hover,
.btn-gold-out:focus {
	background-color: #8a6f16;
	color: #ffffff;
}

.bd-gold {
	border-color: #8a6f16;
}

/* Bootstrap's default placeholder is #999 (2.85:1). Override without editing
   the vendor file. */
.form-control::-webkit-input-placeholder { color: #6f6f6f; }
.form-control::-moz-placeholder          { color: #6f6f6f; opacity: 1; }
.form-control:-ms-input-placeholder      { color: #6f6f6f; }
.form-control::placeholder               { color: #6f6f6f; }

/* Post meta / date lines */
.blog-date,
.event-date,
.press-post .blog-date.small {
	color: #595959;
}

/* =====================================================================
   3. LINKS DISTINGUISHED BY COLOUR ALONE — SC 1.4.1 Use of Color (A)
   ---------------------------------------------------------------------
   Category links in post meta and event links inside text blocks were
   distinguished from surrounding text by hue only.
   ===================================================================== */

.blog-date a,
.event-date a,
.press-post .blog-date a,
a.text-purple,
.entry-content p a:not(.btn) {
	text-decoration: underline;
	text-underline-offset: 0.15em;
}

/* Buttons and heading links are distinguished by shape/size, so they keep
   their existing treatment. */
.blog-date a.btn,
.event-date a.btn,
.press-post h3 a,
h1 a, h2 a, h3 a, h4 a {
	text-decoration: none;
}

/* =====================================================================
   4. ICON FONTS — SC 1.1.1 / 4.1.2
   ---------------------------------------------------------------------
   Decorative Font Awesome glyphs should not be announced. Templates now set
   aria-hidden="true"; this is a defensive backstop for any that were missed.
   ===================================================================== */
.fa[aria-hidden="true"] { speak: none; }

/* =====================================================================
   5. REDUCED MOTION — supports SC 2.2.2 Pause, Stop, Hide (A)
   ---------------------------------------------------------------------
   Suppresses theme-level entrance animations and smooth scrolling when the
   user asks for reduced motion. NOTE: this does NOT stop the Owl/Flexslider
   carousels from auto-advancing — that requires the JS change described in
   AUDIT-REPORT.md finding B-3. CSS alone cannot fix that.
   ===================================================================== */
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
	.wow { visibility: visible !important; }
}

/* =====================================================================
   6. SKIP LINK TARGET — SC 2.4.1 Bypass Blocks (A)
   ---------------------------------------------------------------------
   The <main id="hfe-main-content" tabindex="-1"> wrapper added in
   functions.php must not show a focus ring when it receives programmatic
   focus from the skip link.
   ===================================================================== */
#hfe-main-content:focus {
	outline: none;
	box-shadow: none;
}

/* Visually-hidden utility for form labels that must exist for assistive
   technology but are not part of the visual design. Uses the clip-path
   pattern so the text stays selectable by screen readers. */
.screen-reader-text,
.a11y-visually-hidden {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	clip-path: inset(50%);
	white-space: nowrap;
	border: 0;
}

.screen-reader-text:focus,
.a11y-visually-hidden:focus {
	position: static !important;
	width: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	clip: auto;
	clip-path: none;
	white-space: normal;
}
