/*
 * Accessibility remediation styles (WCAG 2.2 AA)
 * Added alongside the BrowserStack scanner remediation. Loaded after the
 * theme stylesheets from header.php.
 */

/* ---------- Screen-reader-only text + skip link ---------- */
.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.skip-link:focus {
	position: absolute !important;
	left: 8px;
	top: 8px;
	width: auto;
	height: auto;
	clip: auto;
	white-space: normal;
	z-index: 100000;
	background-color: #1a135c;
	color: #ffffff;
	padding: 12px 20px;
	font-family: 'Hind Guntur', sans-serif;
	font-size: 16px;
	font-weight: 600;
	text-decoration: underline;
	outline: 3px solid #ffbf47;
}

/* ---------- Visible keyboard focus ---------- */
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
	outline: 3px solid #ffbf47 !important;
	outline-offset: 2px;
}

/* ---------- Footer news ticker (replaces <marquee>) ---------- */
/*
 * Footer news ticker. To satisfy SC 2.2.2 (Pause, Stop, Hide) reliably the
 * ticker does NOT auto-scroll: it renders as static, readable text by default
 * and only animates after the visitor presses "Play scrolling text".
 */
.marque {
	overflow: hidden;
}

.marque .marque-track {
	display: block;
	white-space: normal;
}

.marque .marque-track p {
	display: inline;
}

/* Motion only after the visitor opts in */
.marq_wrap.ticker-playing .marque {
	white-space: nowrap;
}

.marq_wrap.ticker-playing .marque .marque-track {
	display: inline-block;
	white-space: nowrap;
	padding-left: 100%;
	will-change: transform;
	animation: crown-ticker 40s linear infinite;
}

.marq_wrap.ticker-playing .marque .marque-track p {
	white-space: nowrap;
}

@keyframes crown-ticker {
	from { transform: translateX(0); }
	to   { transform: translateX(-100%); }
}

.marq_wrap.ticker-playing .marque:hover .marque-track,
.marq_wrap.ticker-playing .marque:focus-within .marque-track {
	animation-play-state: paused;
}

@media (prefers-reduced-motion: reduce) {
	.marq_wrap.ticker-playing .marque { white-space: normal; }
	.marq_wrap.ticker-playing .marque .marque-track {
		animation: none;
		padding-left: 0;
		white-space: normal;
	}
}

.marq-toggle {
	display: inline-block;
	background-color: #1a135c;
	color: #ffffff;
	border: 2px solid #ffffff;
	font-family: 'Hind Guntur', sans-serif;
	font-size: 14px;
	font-weight: 600;
	padding: 6px 14px 4px 14px;
	margin: 6px 0;
	cursor: pointer;
}

/* ---------- Inner banner: contrast overlay for the heading text ---------- */
/* The overlay sits BEHIND the "Get Started" buttons so their solid green
   background stays measurable (buttons are lifted with z-index below). */
.inner_banner::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: rgba(16, 12, 60, 0.55);
	z-index: 0;
}

.inner_banner_txt {
	z-index: 2;
}

.banner_btn {
	z-index: 2;
}

.banner_btn h3,
.banner_btn ul,
.banner_btn ul li,
.banner_btn ul li a {
	position: relative;
	z-index: 2;
}

/* Keep the button background opaque and measurable */
.banner_btn ul li a {
	background-color: #028043 !important;
	color: #ffffff !important;
}

/* Breadcrumb current page (span replaces the old dead <a>) */
ul.breadcrumb li span[aria-current="page"] {
	font-family: 'Hind Guntur', sans-serif;
	color: #ffffff;
	font-size: 15px;
	font-weight: 600;
}

/* ---------- In-content links: not colour-alone, and 3:1 vs body text ---------- */
/* Underline is a visual cue; the green (#028043) gives >4.5:1 on white and
   >4:1 against the black body text around it, satisfying the custom
   distinguishable-link check. tel:/mailto:/TablePress links are included. */
.ftr_icon_txt a,
.con_txt a,
.call_em_txt a,
main .about a,
main .about td a,
.custom-table a,
.tablepress a,
.wp-block-list a,
.wp-block-paragraph a,
.history_main a,
.history_main_n a,
main a[href^="tel:"],
main a[href^="mailto:"] {
	text-decoration: underline !important;
	color: #028043 !important;
}

.ftr_icon_txt a,
.con_txt a,
.call_em_txt a {
	color: #ffffff !important; /* footer/contact chrome stays white on navy */
}

main .about a:hover,
main .about a:focus,
.tablepress a:hover,
.tablepress a:focus,
.wp-block-list a:hover,
.wp-block-list a:focus,
main a[href^="tel:"]:hover,
main a[href^="mailto:"]:hover,
main a[href^="tel:"]:focus,
main a[href^="mailto:"]:focus {
	color: #013d20 !important; /* darker green + underline stays: hover cue */
	text-decoration: underline !important;
}

/* ---------- Header search: solid, measurable field in every state ---------- */
.sb-search-input {
	background: #1a135c !important;
	border: 1px solid #ffffff !important;
	color: #ffffff !important;
}

.sb-search-input::placeholder {
	color: #e6e6e6 !important;
	opacity: 1;
}

/* ---------- Keyboard support for the dropdown menu ---------- */
#cssmenu li:focus-within > ul,
#cssmenu li.kb-open > ul {
	display: block !important;
}

/* ---------- Headings that used to be styled <p> tags ---------- */
.glob_eq h2 {
	font-family: 'Hind Guntur', sans-serif !important;
	color: #000 !important;
	font-size: 22px !important;
	line-height: 160% !important;
	font-weight: 500 !important;
	margin-top: 4% !important;
	margin-bottom: 25px;
}

.history_main_n h2 {
	font-family: 'Hind Guntur', sans-serif;
	color: #fff;
	font-size: 25px;
	line-height: 160%;
	margin-bottom: 20px;
	font-weight: 500;
}

/* ---------- Contact form labels ---------- */
.con_form label {
	display: block;
	font-family: 'Hind Guntur', sans-serif;
	font-size: 15px;
	font-weight: 600;
	color: #1a135c;
	margin: 10px 0 2px 0;
	text-align: left;
}
