/* Accessibility layer v5.10
   The widget supplements accessible code. It is not a substitute for manual testing. */
.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}
.skip-links{position:fixed;inset-inline-start:18px;top:10px;z-index:10000;display:flex;gap:8px;transform:translateY(-160%)}
.skip-links:focus-within{transform:translateY(0)}
.skip-links a{display:inline-flex;align-items:center;min-height:44px;padding:9px 14px;border-radius:8px;background:#000;color:#fff;text-decoration:none;border:2px solid #fff;box-shadow:0 4px 20px rgba(0,0,0,.3)}
main:focus{outline:none}
html{scroll-padding-bottom:120px}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #0067d9!important;outline-offset:4px!important;box-shadow:0 0 0 2px #fff!important}
:where(a,button,input,select,textarea,summary,[tabindex]){scroll-margin-block:140px 110px}
.btn-primary{background:var(--orange);color:var(--navy)}
.btn-primary:hover,.btn-primary:focus-visible{background:var(--orange-hover);color:var(--navy)}
.recognition-grid svg,.outcomes-grid span,.feature-list span,.error-number{color:#c94f00}
.journey article>span{background:var(--orange);color:var(--navy)}
.match-options button:hover,.match-options button.active{border-color:var(--orange-hover)}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--orange-hover);outline-color:rgba(0,103,217,.25)}

.a11y-widget-root{position:relative;z-index:460}
.a11y-launcher{position:fixed;inset-inline-start:24px;bottom:24px;z-index:460;display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;min-width:58px;min-height:58px;padding:0;border:2px solid #fff;border-radius:50%;background:#005fcc;color:#fff;font:700 15px/1.2 Arial,sans-serif;cursor:pointer;box-shadow:0 12px 32px rgba(0,0,0,.3)}
.a11y-launcher span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.a11y-launcher:hover{background:#004898}
.a11y-launcher svg{width:28px;height:28px;stroke-width:2}
.a11y-panel{position:fixed;inset-inline-start:24px;bottom:94px;z-index:470;width:min(390px,calc(100vw - 32px));max-height:calc(100vh - 120px);overflow:auto;border:2px solid #17233a;border-radius:20px;background:#fff;color:#111827;box-shadow:0 22px 75px rgba(0,0,0,.38);font:16px/1.5 Arial,sans-serif;text-align:start}
.a11y-panel[hidden]{display:none!important}
.a11y-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:20px;border-bottom:1px solid #d8dee8;background:#f4f7fb;border-radius:18px 18px 0 0}
.a11y-panel-header h2{margin:0 0 5px;font:800 24px/1.2 Arial,sans-serif;color:#111827;letter-spacing:0}
.a11y-panel-header p{margin:0;color:#445168;font:14px/1.5 Arial,sans-serif}
.a11y-close{flex:0 0 44px;width:44px;height:44px;display:grid;place-items:center;border:1px solid #aeb8c7;border-radius:50%;background:#fff;color:#111827;cursor:pointer}
.a11y-close svg{width:22px;height:22px}
.a11y-font-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 20px;border-bottom:1px solid #d8dee8;font-weight:700}
.a11y-font-controls>div{display:flex;align-items:center;gap:8px}
.a11y-font-controls button{width:44px;height:44px;display:grid;place-items:center;border:1px solid #9aa7b8;border-radius:10px;background:#fff;color:#111827;cursor:pointer}
.a11y-font-controls button:hover{background:#e9f1fb}
.a11y-font-controls button svg{width:21px;height:21px}
.a11y-font-controls output{min-width:55px;text-align:center;font-weight:800}
.a11y-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:18px 20px}
.a11y-options button{display:flex;align-items:center;gap:9px;min-height:60px;padding:10px 11px;border:2px solid #c7d0dc;border-radius:12px;background:#fff;color:#111827;font:700 14px/1.25 Arial,sans-serif;text-align:start;cursor:pointer}
.a11y-options button:hover{border-color:#005fcc;background:#f2f7ff}
.a11y-options button[aria-pressed="true"]{border-color:#005fcc;background:#005fcc;color:#fff}
.a11y-options button svg{flex:0 0 24px;width:24px;height:24px}
.a11y-panel-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 20px;border-top:1px solid #d8dee8;background:#f8fafc;border-radius:0 0 18px 18px}
.a11y-reset{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:8px 10px;border:0;background:transparent;color:#8b2500;font:700 14px/1.3 Arial,sans-serif;cursor:pointer;text-decoration:underline}
.a11y-reset svg{width:19px;height:19px}
.a11y-panel-footer a{color:#004f9f;font-weight:700}
body.cookie-banner-visible .a11y-launcher{bottom:190px}
body.cookie-banner-visible .a11y-panel{bottom:258px;max-height:calc(100vh - 285px)}


/* User-selected adjustments */
html.a11y-readable body,html.a11y-readable input,html.a11y-readable select,html.a11y-readable textarea,html.a11y-readable button{font-family:Arial,Verdana,sans-serif!important}
html.a11y-links a:not(.btn):not(.brand):not(.a11y-panel a){text-decoration:underline!important;text-decoration-thickness:3px!important;text-underline-offset:4px!important;background:#fff3a6!important;color:#0000c8!important}
html.a11y-grayscale body>:not(.a11y-widget-root){filter:grayscale(100%)}
html.a11y-spacing :where(p,li,dd,dt,label,summary,blockquote,figcaption){line-height:1.8!important;letter-spacing:.12em!important;word-spacing:.16em!important}
html.a11y-spacing p{margin-bottom:2em!important}
html.a11y-motion{scroll-behavior:auto!important}
html.a11y-motion *,html.a11y-motion *::before,html.a11y-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html.a11y-cursor,html.a11y-cursor body,html.a11y-cursor body *{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 36 36'%3E%3Cpath d='M4 2 29 20l-11 2.5L12 33Z' fill='white' stroke='black' stroke-width='2'/%3E%3C/svg%3E") 4 2,auto!important}
html.a11y-cursor :where(a,button,summary,label,select,input[type='checkbox'],input[type='radio']){cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 36 36'%3E%3Cpath d='M4 2 29 20l-11 2.5L12 33Z' fill='%23ffdf55' stroke='black' stroke-width='2'/%3E%3C/svg%3E") 4 2,pointer!important}
html.a11y-focus :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:5px solid #0067d9!important;outline-offset:5px!important;box-shadow:0 0 0 3px #fff,0 0 0 9px #0067d9!important}

html[data-a11y-contrast="dark"]{--ink:#fff;--muted:#fff;--line:#fff;--cream:#000;--paper:#000;--navy:#000;--navy2:#000;--blue:#000}
html[data-a11y-contrast="dark"] body,html[data-a11y-contrast="dark"] :where(main,section,article,aside,header,footer,nav,.surface,.dark-section,.site-header,.site-footer,.topbar,.proof-strip,.match-result,.contact-aside,.contact-form,.google-reviews-panel,.review-card,.faq details,.cta-panel,.breadcrumbs){background:#000!important;background-image:none!important;color:#fff!important;border-color:#fff!important;box-shadow:none!important}
html[data-a11y-contrast="dark"] :where(p,span,small,li,h1,h2,h3,h4,strong,label,summary,blockquote,figcaption){color:#fff!important}
html[data-a11y-contrast="dark"] a:not(.btn):not(.a11y-panel a){color:#ffe600!important;text-decoration:underline!important}
html[data-a11y-contrast="dark"] .btn{background:#ffe600!important;color:#000!important;border-color:#ffe600!important}
html[data-a11y-contrast="dark"] :where(input,select,textarea){background:#000!important;color:#fff!important;border:2px solid #fff!important}
html[data-a11y-contrast="dark"] img{outline:1px solid #fff}
html[data-a11y-contrast="dark"] .hero-orb{display:none}

html[data-a11y-contrast="light"]{--ink:#000;--muted:#000;--line:#000;--cream:#fff;--paper:#fff;--navy:#fff;--navy2:#fff;--blue:#fff}
html[data-a11y-contrast="light"] body,html[data-a11y-contrast="light"] :where(main,section,article,aside,header,footer,nav,.surface,.dark-section,.site-header,.site-footer,.topbar,.proof-strip,.match-result,.contact-aside,.contact-form,.google-reviews-panel,.review-card,.faq details,.cta-panel,.breadcrumbs){background:#fff!important;background-image:none!important;color:#000!important;border-color:#000!important;box-shadow:none!important}
html[data-a11y-contrast="light"] :where(p,span,small,li,h1,h2,h3,h4,strong,label,summary,blockquote,figcaption){color:#000!important}
html[data-a11y-contrast="light"] a:not(.btn):not(.a11y-panel a){color:#0000c8!important;text-decoration:underline!important}
html[data-a11y-contrast="light"] .btn{background:#000!important;color:#fff!important;border-color:#000!important}
html[data-a11y-contrast="light"] :where(input,select,textarea){background:#fff!important;color:#000!important;border:2px solid #000!important}
html[data-a11y-contrast="light"] .hero-orb{display:none}

@media(max-width:640px){
  .skip-links{inset-inline-start:8px;right:8px;flex-wrap:wrap}
  .skip-links a{font-size:14px;padding:8px 10px}
  .a11y-launcher{inset-inline-start:14px;bottom:14px;width:52px;height:52px;min-width:52px;min-height:52px;padding:0}
  .a11y-launcher svg{width:27px;height:27px}
  .a11y-panel{inset-inline-start:8px;bottom:76px;width:calc(100vw - 16px);max-height:calc(100vh - 170px);border-radius:16px}
  .a11y-panel-header{padding:17px}
  .a11y-options{padding:15px;gap:8px}
  .a11y-options button{min-height:58px;font-size:13px}
  .a11y-panel-footer{padding:14px 16px;align-items:flex-start;flex-direction:column}
  body.cookie-banner-visible .a11y-launcher{bottom:245px}
  body.cookie-banner-visible .a11y-panel{bottom:305px;max-height:calc(100vh - 320px)}
}
