
    /* WCAG 2.4.7 & 2.4.11: Unmistakable Focus Rings */
    .clean-site-footer a:focus-visible,
    .clean-site-footer button:focus-visible {
      outline: 3px solid #0284c7 !important;
      outline-offset: 3px !important;
      border-radius: 4px;
      text-decoration: underline !important;
    }

    /* Screen Reader Only Utility */
    .clean-site-footer .sr-only {
      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;
    }

    .clean-site-footer {
      background-color: #ffffff;
      border-top: 4px solid #9e321d; /* High-contrast rust (6.8:1) */
      color: #1e293b;                /* High-contrast dark text */
      font-size: 0.85rem;
      line-height: 1.6;
      padding: 2.5rem 0 1.5rem 0;
      position: relative;
      font-family: inherit;
    }

    .footer-inner-container {
      width: 100%;
      max-width: 1380px;
      margin: 0 auto;
      padding: 0 1.25rem;
    }

    /* 3-Column Layout */
    .footer-three-col-grid {
      display: grid;
      grid-template-columns: 1.2fr 1fr 1fr;
      gap: 2.5rem;
      padding-bottom: 1.75rem;
    }

    @media (max-width: 992px) {
      .footer-three-col-grid {
        grid-template-columns: 1fr 1fr;
        gap: 2rem;
      }
    }

    @media (max-width: 680px) {
      .footer-three-col-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
      }
    }

    /* Section Headings */
    .col-title-badge {
      display: flex;
      align-items: center;
      gap: 0.5rem;
      color: #9e321d; /* WCAG AA AAA Compliant */
      font-size: 0.925rem;
      font-weight: 800;
      letter-spacing: 0.05em;
      text-transform: uppercase;
      margin: 0 0 1.15rem 0;
    }

    .col-title-icon {
      width: 18px;
      height: 18px;
      color: #9e321d;
      flex-shrink: 0;
    }

    .col-content-body {
      display: flex;
      flex-direction: column;
      gap: 0.5rem;
      font-size: 0.85rem;
    }

    .firm-highlight-name {
      font-size: 1rem;
      font-weight: 800;
      color: #0f172a;
      display: block;
    }

    .meta-field {
      color: #1e293b;
      margin: 0;
      line-height: 1.55;
    }

    /* WCAG 1.4.1: Links are underlined and high contrast (>7:1) */
    .footer-inline-link {
      color: #025a8c;
      text-decoration: underline !important;
      font-weight: 700;
      word-break: break-word;
    }

    .footer-inline-link:hover {
      color: #002d47;
      text-decoration-thickness: 2px !important;
    }

    /* Column 2: Registrations List */
    .reg-primary-item {
      color: #0f172a;
      margin: 0.25rem 0 0.15rem 0;
      font-size: 0.85rem;
    }

    .reg-primary-item:first-child {
      margin-top: 0;
    }

    .vertical-branch-box {
      border-left: 2px solid #002d47;
      padding-left: 0.75rem;
      margin: 0.25rem 0 0.75rem 0.25rem;
      color: #1e293b;
      font-size: 0.825rem;
      display: flex;
      flex-direction: column;
      gap: 0.25rem;
      list-style: none;
    }

    /* Column 3: Officer Details */
    .sub-label-heading {
      font-size: 0.75rem;
      font-weight: 800;
      color: #334155;
      letter-spacing: 0.05em;
      text-transform: uppercase;
      display: block;
      margin-bottom: 0.25rem;
    }

    .officer-detail-block {
      border-left: 2px solid #cbd5e1;
      padding-left: 0.75rem;
      margin-left: 0.25rem;
      margin-bottom: 0.75rem;
    }

    .officer-name {
      color: #0f172a;
      font-size: 0.9rem;
      font-weight: 800;
      display: block;
      margin-bottom: 0.2rem;
    }

    .grievance-separator-block {
      border-left: 2px solid #cbd5e1;
      padding-left: 0.75rem;
      margin-left: 0.25rem;
    }

    /* WCAG 2.5.8: Target Size >= 44x36px with padding */
    .sitemap-btn {
      display: inline-flex;
      align-items: center;
      gap: 0.45rem;
      padding: 0.5rem 0.9rem;
      background: #f8fafc;
      border: 1px solid #94a3b8;
      border-radius: 6px;
      color: #025a8c;
      text-decoration: underline !important;
      font-size: 0.825rem;
      font-weight: 800;
      min-height: 40px;
    }

    .sitemap-btn:hover {
      background: #f1f5f9;
      border-color: #002d47;
      color: #002d47;
    }

    /* =========================================================================
       USEFUL LINKS STRIP
       ========================================================================= */
    .footer-useful-links-strip {
      border-top: 1px solid #cbd5e1;
      padding: 1.15rem 0;
      margin-bottom: 0.5rem;
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      gap: 0.75rem;
      font-size: 0.85rem;
    }

    .useful-links-title {
      font-weight: 800;
      color: #9e321d;
      letter-spacing: 0.04em;
      display: inline-flex;
      align-items: center;
      gap: 0.4rem;
      white-space: nowrap;
    }

    .useful-links-list {
      display: inline-flex;
      align-items: center;
      flex-wrap: wrap;
      gap: 0.6rem;
    }

    /* WCAG 1.4.1 & 1.4.3: High contrast underlined links */
    .useful-link-item {
      color: #0f172a;
      text-decoration: underline !important;
      font-weight: 700;
      padding: 0.2rem 0;
    }

    .useful-link-item:hover {
      color: #9e321d;
    }

    .useful-link-item.highlight-link {
      color: #9e321d;
      font-weight: 800;
    }

    .link-bullet {
      color: #475569;
      font-size: 0.75rem;
      user-select: none;
    }

    /* Regulatory Disclaimer */
    .footer-regulatory-disclaimer {
      border-top: 1px solid #cbd5e1;
      padding: 1.25rem 0;
      font-size: 0.8rem;
      line-height: 1.65;
      color: #1e293b;
    }

    .footer-regulatory-disclaimer strong {
      color: #0f172a;
    }

    /* Bottom Copyright Strip */
    .footer-bottom-bar {
      border-top: 1px solid #e2e8f0;
      padding-top: 1.25rem;
      display: flex;
      justify-content: space-between;
      align-items: center;
      flex-wrap: wrap;
      gap: 0.85rem;
      font-size: 0.8rem;
      color: #334155;
    }

    .copyright-text strong {
      color: #0f172a;
    }

    .compliance-tag-text {
      font-weight: 800;
      letter-spacing: 0.05em;
      color: #002d47;
    }
    
    .market-exchange{
        color: #fff !important;
    }

    /* Dark High Contrast Mode Support */
    html[data-theme="black"] .clean-site-footer {
      background-color: #000000;
      border-top-color: #ffff00;
      color: #ffffff;
    }
    html[data-theme="black"] .col-title-badge,
    html[data-theme="black"] .col-title-icon,
    html[data-theme="black"] .useful-links-title,
    html[data-theme="black"] .useful-link-item.highlight-link {
      color: #ffff00;
    }
    html[data-theme="black"] .footer-inline-link,
    html[data-theme="black"] .useful-link-item,
    html[data-theme="black"] .sitemap-btn {
      color: #38bdf8;
    }
    html[data-theme="black"] .meta-field,
    html[data-theme="black"] .vertical-branch-box,
    html[data-theme="black"] .sub-label-heading,
    html[data-theme="black"] .footer-regulatory-disclaimer,
    html[data-theme="black"] .footer-bottom-bar {
      color: #e2e8f0;
    }
    html[data-theme="black"] .firm-highlight-name,
    html[data-theme="black"] .officer-name,
    html[data-theme="black"] .reg-primary-item,
    html[data-theme="black"] .copyright-text strong,
    html[data-theme="black"] .compliance-tag-text {
      color: #ffffff;
    }
  