/* a11y-20261030: manual accessibility pass. Additive; colour steps keep the brand hue. */
/* 2.4.1 skip link (custom pages): hidden until focused, then top-left above the sticky header */
.skip-link:not(.screen-reader-text){position:absolute;left:8px;top:-100px;z-index:100001;background:#14202e;color:#fff;padding:12px 18px;font:700 16px/1.2 Inter,Arial,sans-serif;text-decoration:none;border-radius:4px}
.skip-link:not(.screen-reader-text):focus{top:8px;outline:3px solid #fff;outline-offset:2px;box-shadow:0 0 0 6px #14202e}
/* Astra's own skip link: make sure it shows on focus above the sticky header */
a.skip-link.screen-reader-text:focus{z-index:100001;background:#14202e;color:#fff;clip:auto!important;clip-path:none;height:auto;width:auto;left:8px!important;top:8px!important;padding:12px 18px;font-size:16px;font-weight:700;text-decoration:none;box-shadow:0 0 0 3px #fff,0 0 0 6px #14202e}
/* 2.4.7 / 2.4.11 visible focus: blue ring plus white halo works on light and dark sections */
:focus-visible{outline:3px solid #0b5cad;outline-offset:2px;box-shadow:0 0 0 2px #fff}
#masthead :focus-visible,.site-header :focus-visible,footer :focus-visible,.site-footer :focus-visible{outline-color:#fff;box-shadow:0 0 0 5px #0b5cad}
iframe:focus-visible{outline-offset:-3px}
html{scroll-padding-top:110px}
@media(max-width:921px){html{scroll-padding-top:90px;scroll-padding-bottom:84px}}
/* 1.4.3 contrast: same brand green, one hex step darker (white on it 4.49 -> 4.55:1) */
:root{--ast-global-color-0:#217c1c;--e-global-color-astglobalcolor0:#217c1c;--e-global-color-55d5e15:#24881f}
.elementor-kit-9{--e-global-color-55d5e15:#24881f}
.ast-header-button-1 .ast-custom-button,#ast-scroll-top:hover{background-color:#24881f}
body a.elementor-button,body .elementor-button.elementor-button-link{background-color:#24881f}
body .ekit-double-btn-one,body .ekit-double-btn-two{color:#24881f}
/* green text links on tan / pale bands: #24891f (3.87:1) -> #217c1c (4.57:1) */
.entry-content p a,.entry-content li a,.entry-content strong a,.entry-content span a,.uf-reviewed a,.ast-breadcrumbs a,.ast-breadcrumbs-wrapper a,.elementor-widget-text-editor a,.elementor-widget-heading a:not(.elementor-button){color:#217c1c}
a[rel="home"] span{color:#217c1c}
.entry-content p a,.entry-content li a,.elementor-widget-text-editor p a,.uf-reviewed a,.uf-brand-depth a,#content p a:not(.elementor-button):not([class*="ekit"]):not(.ast-button):not(.button){text-decoration:underline}
/* 2.5.8 target size: submenu toggle arrows */
.ast-header-navigation-arrow,.dropdown-menu-toggle{min-width:24px;min-height:24px;box-sizing:border-box;margin-left:-2.45px;margin-right:-2.45px}
/* 1.4.10 reflow: content tables wrap instead of forcing sideways scroll */
@media(max-width:640px){.entry-content table,.elementor-widget-container table{width:100%!important;table-layout:fixed}.entry-content th,.entry-content td,.elementor-widget-container th,.elementor-widget-container td{overflow-wrap:anywhere;word-break:break-word;padding-left:8px;padding-right:8px}}
/* 1.4.10 reflow at 320px: the 300px Turnstile widget no longer pushes the page sideways */
@media(max-width:359px){#uf-quote-block{padding-left:6px;padding-right:6px}#uf-quote-form{padding-left:6px;padding-right:6px}.uf-quote-turnstile{overflow:hidden}.uf-quote-turnstile>div{transform:scale(.97);transform-origin:0 0}}
