/* ==========================================================================
   Accessibility remediation — WCAG 2.1/2.2 AA
   prabhatmittal.com  |  loaded last in MasterPage.master so it wins specificity
   ========================================================================== */

/* --------------------------------------------------------------------------
   Skip link — off-screen until it receives keyboard focus (WCAG 2.4.1)
   -------------------------------------------------------------------------- */
.skip-link {
  position: absolute; left: -9999px; top: 0; z-index: 100000;
  background: #0F2A43; color: #ffffff; padding: 10px 16px;
  border-radius: 0 0 4px 0; text-decoration: underline;
}
.skip-link:focus, .skip-link:focus-visible {
  left: 8px; top: 8px; outline: 3px solid #ffffff; outline-offset: 2px;
}
#main-content:focus { outline: none; }

/* --------------------------------------------------------------------------
   Screen-reader-only utility (used for the programmatic <h1>) — not visible
   -------------------------------------------------------------------------- */
.visually-hidden {
  position: absolute !important; width: 1px; height: 1px; margin: -1px;
  padding: 0; border: 0; overflow: hidden; clip: rect(0 0 0 0);
  clip-path: inset(50%); white-space: nowrap;
}

/* --------------------------------------------------------------------------
   Heading sizes pinned to originals — heading *levels* were corrected for a
   valid outline; these keep the visible size unchanged.
   -------------------------------------------------------------------------- */
.media-heading { font-size: 18px; }   /* Default service cards: originally <h4> */
.ft_1 { font-size: 18px; }            /* footer headings: originally <h4> */
.a11y-fs18 { font-size: 18px; }       /* Services/validUPI/Contact section heads: originally <h4> */

/* --------------------------------------------------------------------------
   WCAG 1.4.3 — colour contrast for footer compliance links on the dark
   footer. Brand red #ca0928 on #2e2e2e = 2.31:1 (fails). #ff6b6b = ~4.9:1.
   NOTE: confirm the exact shade with the brand owner.
   -------------------------------------------------------------------------- */
:root { --brand-red-accessible: #ff6b6b; }
/* Underline too: these links sit inside footer text, so they must be
   distinguishable without relying on colour (WCAG 1.4.1 link-in-text-block). */
.compliance-link { color: var(--brand-red-accessible); text-decoration: underline; }
h2 > span { color: inherit; }   /* "Rev..." review heading spans inherit accessible colour */

/* --------------------------------------------------------------------------
   WCAG 1.4.1 — in-content links must be distinguishable by more than colour.
   Underline body-content links; nav/footer/icon links keep their own
   affordances and are exempt.
   -------------------------------------------------------------------------- */
#main-content a, .content a, main a { text-decoration: underline; text-underline-offset: 2px; }
#main-content a:hover, #main-content a:focus,
.content a:hover, .content a:focus,
main a:hover, main a:focus { text-decoration-thickness: 2px; }

#main-content .navbar a, #main-content .nav a,
.navbar a, .footer a, footer a, .social-icons a,
#main-content .btn, #main-content a.btn { text-decoration: none; }

/* --------------------------------------------------------------------------
   WCAG 2.5.8 — target size: interactive controls >= 24x24 px (or spaced).
   -------------------------------------------------------------------------- */
.navbar-toggle { min-width: 44px; min-height: 44px; }

#main-menu .nav > li > a { padding-top: 14px; padding-bottom: 14px; min-height: 24px; }

#footer .footer_links li a { display: inline-block; min-height: 24px; padding: 6px 0; line-height: 1.6; }

.social-icons a {
  display: inline-block; min-width: 32px; min-height: 32px;
  margin: 4px 6px 4px 0; padding: 4px; line-height: 24px;
  text-align: center; font-size: 20px;
}

#main-content li > a.btn, #main-content a.btn { min-height: 24px; }
