/* 32460: scoped public-theme corrections, never CMS overlay rules. */
/* Audited interactive states F06/F08/F09. */
#wrapper .visually-hidden:not(:focus):not(:active) { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip-path: inset(50%) !important; white-space: nowrap !important; border: 0 !important; }
#wrapper .searchResult .pageLink { color: #626262; }
#wrapper .searchResult p span { color: #202020 !important; }
#wrapper .ds-infographic-transcript th, #wrapper .ds-infographic-transcript td { padding: .3em .6em; text-align: left; color: #626262; }
#wrapper .ds-infographic-transcript caption { color: #626262; }
#wrapper .ds-form .form-control { border-color: #767676; }
#wrapper #navbar .dropdown.ds-dismissed > .dropdown-menu { display: none !important; }
#wrapper #navbar .dropdown:focus-within:not(.ds-dismissed) > .dropdown-menu { display: block; }
#wrapper #feature-alt h5, #wrapper label, #wrapper .text-muted { color: #626262; }
#wrapper a:not(.btn):not(.item-preview):not(.mega-link-overlay) { text-decoration-skip-ink: auto; }
#wrapper p a:not(.btn), #wrapper li a:not(.btn) { text-decoration: underline; }
#wrapper #navbar a { text-decoration: none; }
#wrapper a, #wrapper .breadcrumb > .active, #wrapper #navbar a.active,
#wrapper #navbar a:hover, #wrapper #navbar a:focus { color: #994500; }
#wrapper span[style*="247, 150, 70"], #wrapper span[style*="#f79646"] { color: #994500 !important; }
#wrapper .btn, #wrapper .btn-default, #wrapper .btn.-btn-default { background-color: #994500; border-color: #994500; color: #fff; }
#wrapper .btn-primary, #wrapper .btn.-btn-primary { background-color: #1765a4; border-color: #1765a4; color: #fff; }
#wrapper .item-overlay a { color: #fff; }
#wrapper .isotope-grid-item-innerwrapper:focus-within .item-overlay { opacity: 1; visibility: visible; transform: none; }
#wrapper .isotope-grid-item-innerwrapper:focus-within .item-details { opacity: 1; visibility: visible; transform: none; }
#wrapper a:focus-visible, #wrapper button:focus-visible, #wrapper input:focus-visible,
#wrapper textarea:focus-visible, #wrapper select:focus-visible { outline: 3px solid #005fcc; outline-offset: 3px; box-shadow: 0 0 0 5px white; }
#wrapper :focus { scroll-margin-top: 140px; }
#wrapper .ds-simple-image-slider .ccm-image-slider .rslides_nav { height: 44px !important; width: auto; top: auto; bottom: 0; padding: 10px; background: #fff; color: #333; }
#wrapper #body .ccm-block-page-list-description { color: #626262; }
/* Keep orange surfaces; use dark text rather than recolouring the brand. */
#wrapper .list-txt-inner .titleText, #wrapper .article-content-head h5 a,
#wrapper .background-label, #wrapper #openbtn { color: #202020 !important; }
#wrapper h5 .first-text,
#wrapper .ds-feature h6 a, #wrapper #navbar .dropdown-toggle,
#wrapper .pagination a.page-link { color: #994500 !important; }
/* The dark footer needs the original light brand orange, not the white-surface fix. */
#wrapper #prefoot h5 .first-text { color: #F58220 !important; }
#wrapper .pagination span.page-link { color: #626262 !important; }
#wrapper .ds-accessible-content li, #wrapper .ds-infographic-transcript li { color: #626262; }
#wrapper .pagination .active .page-link { color: #fff !important; background: #994500; }
#wrapper .social-share .share { color: #fff; }
#wrapper #body h5 a { text-decoration: underline; }
#wrapper .breadcrumb > .active, #wrapper #navbar a.has-active,
#wrapper #body .ds-feature h6 a { color: #994500 !important; }
/* Heading rank is semantic; these classes preserve the existing typography. */
#wrapper .ds-section-heading { font-family: Raleway; font-size: 36px; line-height: 1.1; font-weight: 600; margin: 25px 0; }
#wrapper .ds-section-heading-small { font-size: 25px; }
#wrapper .ds-feature .ds-feature-title { font-size: 18px; line-height: 24px; font-weight: 300; margin: 25px 0; color: #1c1c1c; }
#wrapper .ds-feature .ds-feature-title a { color: #994500; }
#wrapper .ds-four-column-list .ds-article-title { font-size: 18px; line-height: 24px; font-weight: 500; margin: 0; color: #3f3f3f; }
#wrapper #prefoot .ds-footer-heading { font-family: Lato, sans-serif; font-size: 17px; line-height: 1.1; font-weight: 400; margin: 25px 0; color: #bfc9d6; }
#wrapper #prefoot .ds-footer-heading .first-text { color: #f58220 !important; }
@media (max-width: 767px) { #wrapper .ds-section-heading:not(.ds-section-heading-small) { font-size: 26px; } }
/* How we work: one original brand-orange surface, not nested contrast patches.
   Scope every rule to the banner; retain CMS blocks and native tab behaviour. */
#wrapper #banner { background-color: #f58220; color: #202020; padding: 36px 0; }
#wrapper #banner .ccm-custom-style-bigimagetext,
#wrapper #banner .ds-tab-content,
#wrapper #banner .tab-content-container { background: transparent; }
#wrapper #banner .ds-section-heading { margin: 0 0 28px; }
/* Inherit the section palette once; never compete with saved inline colours. */
#wrapper #banner .ds-work-heading,
#wrapper #banner .ds-work-heading .first-text,
#wrapper #banner .ds-work-heading .second-text,
#wrapper #banner .ds-work-heading .small-text { color: inherit; }
#wrapper #banner .ds-work-heading .ds-work-subtitle { border-left: 1px solid currentColor; }
#wrapper #banner .ds-work-heading .small-text { font-weight: 500; }
#wrapper #banner .tab-container { width: 100%; padding: 0; }
#wrapper #banner .nav-tabs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; width: 100%; white-space: normal; }
#wrapper #banner .nav-tabs > li { display: block; width: auto; margin: 0; }
#wrapper #banner .nav-tabs > li > a { display: block; height: 100%; margin: 0; padding: 20px 8px 16px; color: #202020; text-decoration: none; border: 0; border-bottom: 3px solid transparent; border-radius: 0; background: transparent; }
#wrapper #banner .nav-tabs > li > a::after { content: none; }
#wrapper #banner .nav-tabs > li > a:hover,
#wrapper #banner .nav-tabs > li.active > a { color: #202020; border-bottom-color: #202020; background: transparent; }
#wrapper #banner .nav-tabs > li > a:focus-visible { outline: 3px solid #202020; outline-offset: 3px; box-shadow: 0 0 0 5px #fff; }
#wrapper #banner .nav-tabs::before, #wrapper #banner .nav-tabs::after { content: none; }
#wrapper #banner .nav-tabs .fa { color: #202020; font-size: 44px; line-height: 1; }
#wrapper #banner .nav-tabs .titleText { max-width: 240px; margin: 0 auto; padding: 16px 0 0; font-size: 18px; line-height: 1.4; font-weight: 700; text-transform: none; }
/* Existing tab panels must be perceivable when selected, including by keyboard. */
#wrapper #banner .tab-content-container { display: block; }
#wrapper #banner .tab-content { width: 100%; max-width: 850px; min-height: 0; margin: 24px auto 0; padding: 0; text-align: left; }
#wrapper #banner .tab-content h5 { color: #202020; font-size: 22px; line-height: 1.4; margin: 0 0 8px; }
#wrapper #banner .tab-content p { color: #202020; font-size: 17px; line-height: 1.6; margin: 0; }
#wrapper #banner .tab-pane:focus-visible { outline: 3px solid #202020; outline-offset: 6px; }
@media (max-width: 767px) {
 #wrapper #banner { padding: 28px 0; }
 #wrapper #banner .ds-section-heading { font-size: 30px; line-height: 1.2; margin-bottom: 20px; }
 #wrapper #banner .ds-section-heading .small-text { display: block; margin: 12px 0 0; padding: 0; border: 0; font-size: 20px; line-height: 1.4; }
 #wrapper #banner .nav-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
 #wrapper #banner .nav-tabs > li > a { padding: 16px 4px 12px; }
 #wrapper #banner .nav-tabs .titleText { font-size: 17px; }
 #wrapper #banner .nav-tabs .fa { font-size: 36px; }
}
/* Homepage-only static features: no selected/hover/focus affordance or detail gap. */
#wrapper #banner .ds-work-feature-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; margin: 0; padding: 0; list-style: none; text-align: center; }
#wrapper #banner .ds-work-feature-list > li { min-width: 0; padding: 20px 8px 16px; color: #202020; }
#wrapper #banner .ds-work-feature-list .fa { color: #202020; font-size: 44px; line-height: 1; }
#wrapper #banner .ds-work-feature-list .titleText { display: block; max-width: 240px; margin: 0 auto; padding-top: 16px; color: #202020; font-size: 18px; line-height: 1.4; font-weight: 700; text-transform: none; }
@media (max-width: 767px) {
 #wrapper #banner .ds-work-feature-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
 #wrapper #banner .ds-work-feature-list > li { padding: 16px 4px 12px; }
 #wrapper #banner .ds-work-feature-list .titleText { font-size: 17px; }
 #wrapper #banner .ds-work-feature-list .fa { font-size: 36px; }
}
@media (prefers-reduced-motion: reduce) {
 #wrapper *, #wrapper *::before, #wrapper *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
