/* ASR canonical public header · one component, one style on every public route.
   Independent of legacy React / static header selectors and theme layers. */
html{scroll-padding-top:88px}
html body header.site-header:not(.asr-unified-header),
html body header.asr-shared-public-header:not(.asr-unified-header),
html body header.asr-static-header:not(.asr-unified-header){
  display:none!important;
}
html body > header.asr-unified-header{
  --uh-text:#18141d;
  --uh-muted:#55505c;
  --uh-border:#e9e5eb;
  position:sticky!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:2000!important;
  display:block!important;
  width:100%!important;
  height:76px!important;
  min-height:76px!important;
  max-height:76px!important;
  margin:0!important;
  padding:0!important;
  background:#fff!important;
  background-color:#fff!important;
  background-image:none!important;
  color:var(--uh-text)!important;
  color-scheme:light!important;
  border:0!important;
  border-bottom:1px solid var(--uh-border)!important;
  border-radius:0!important;
  box-shadow:0 1px 0 rgba(35,23,41,.05)!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  isolation:isolate;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:14px!important;
  line-height:1.4!important;
}
html body > header.asr-unified-header *,
html body > header.asr-unified-header *::before,
html body > header.asr-unified-header *::after{
  box-sizing:border-box;
}
html body > header.asr-unified-header .asr-uh-inner{
  width:min(1560px,calc(100% - 48px));
  height:100%;
  min-height:0;
  max-height:none;
  margin:0 auto;
  padding:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:clamp(12px,1.5vw,24px);
}
html body > header.asr-unified-header .asr-uh-brand{
  flex:none;
  display:flex;
  align-items:center;
  gap:12px;
  padding:0;
  margin:0;
  border:0;
  background:none;
  text-align:left;
  color:#19131d;
  text-decoration:none;
  white-space:nowrap;
}
html body > header.asr-unified-header .asr-uh-mark{
  color:#18141d;
  font-size:27px;
  font-weight:760;
  letter-spacing:-.055em;
  line-height:1;
}
html body > header.asr-unified-header .asr-uh-brand-rule{
  display:block;
  height:34px;
  width:1px;
  background:#b4aab9;
  flex:0 0 1px;
}
html body > header.asr-unified-header .asr-uh-brand-name{
  display:block;
  color:#45404a;
  font-size:11px;
  font-weight:650;
  letter-spacing:.12em;
  line-height:1.45;
  text-transform:uppercase;
}
html body > header.asr-unified-header .asr-uh-nav{
  display:flex;
  flex:0 1 auto;
  align-items:center;
  justify-content:flex-end;
  gap:clamp(1px,.25vw,5px);
  min-width:0;
  margin-left:auto;
  white-space:nowrap;
}
html body > header.asr-unified-header .asr-uh-nav > a,
html body > header.asr-unified-header .asr-uh-nav > details > summary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-width:0;
  min-height:44px;
  margin:0;
  padding:9px clamp(7px,.65vw,11px);
  background:transparent;
  border:0;
  border-radius:7px;
  box-shadow:none;
  color:#5b5662;
  font-family:inherit;
  font-size:14px;
  line-height:1.3;
  font-weight:500;
  letter-spacing:0;
  text-decoration:none;
  text-transform:none;
  cursor:pointer;
  opacity:1;
}
html body > header.asr-unified-header .asr-uh-nav > a:hover,
html body > header.asr-unified-header .asr-uh-nav > a[aria-current="page"],
html body > header.asr-unified-header .asr-uh-nav > details > summary:hover,
html body > header.asr-unified-header .asr-uh-nav > details[open] > summary{
  background:#f6f2fa;
  color:#4e247c;
}
html body > header.asr-unified-header .asr-uh-library{
  position:relative;
  display:block;
}
html body > header.asr-unified-header .asr-uh-library > summary{
  list-style:none;
}
html body > header.asr-unified-header .asr-uh-library > summary::-webkit-details-marker{display:none}
html body > header.asr-unified-header .asr-uh-chevron{
  width:15px;
  height:15px;
  flex:none;
  transition:transform .15s ease;
}
html body > header.asr-unified-header .asr-uh-library[open] .asr-uh-chevron{transform:rotate(180deg)}
html body > header.asr-unified-header .asr-uh-library-panel{
  display:grid;
  grid-template-columns:1fr;
  gap:2px;
  position:absolute;
  top:calc(100% + 8px);
  right:0;
  z-index:2300;
  width:280px;
  max-width:calc(100vw - 32px);
  padding:8px;
  border:1px solid #e7e1ed;
  border-radius:12px;
  background:#fff;
  color:#211b2a;
  box-shadow:0 15px 40px rgba(23,11,33,.12);
}
html body > header.asr-unified-header .asr-uh-library-panel > a{
  display:grid;
  grid-template-columns:1fr auto;
  gap:3px 9px;
  padding:12px;
  border-radius:9px;
  color:#2b2333;
  font-family:inherit;
  font-size:14px;
  font-weight:650;
  line-height:1.3;
  text-decoration:none;
}
html body > header.asr-unified-header .asr-uh-library-panel > a:hover,
html body > header.asr-unified-header .asr-uh-library-panel > a:focus-visible{
  background:#f6f1fa;
}
html body > header.asr-unified-header .asr-uh-library-panel small{
  display:block;
  grid-column:1/-1;
  color:#655d6c;
  font-size:12px;
  font-weight:450;
}
html body > header.asr-unified-header .asr-uh-lang{
  font-size:10px;
  letter-spacing:.07em;
  color:#765392;
  font-weight:750;
}
html body > header.asr-unified-header .asr-uh-actions{
  display:flex;
  flex:none;
  align-items:center;
  gap:clamp(7px,.65vw,13px);
}
html body > header.asr-unified-header .asr-uh-actions > a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:42px;
  padding:0 10px;
  border:0;
  border-radius:9px;
  background:transparent;
  color:#37303b;
  font-family:inherit;
  font-size:14px;
  font-weight:550;
  line-height:1;
  text-decoration:none;
  white-space:nowrap;
}
html body > header.asr-unified-header .asr-uh-actions > a:hover{color:#632e94}
html body > header.asr-unified-header .asr-uh-search{
  background:#141116!important;
  color:#fff!important;
  padding:0 14px!important;
  border:1px solid #141116!important;
}
html body > header.asr-unified-header .asr-uh-search:hover{background:#2b2230!important}
html body > header.asr-unified-header .asr-uh-apply{
  background:#7c3aed!important;
  color:#fff!important;
  padding:0 16px!important;
  font-weight:700!important;
  border:1px solid #7c3aed!important;
}
html body > header.asr-unified-header .asr-uh-apply:hover{background:#6726c6!important;color:#fff!important}
html body > header.asr-unified-header :is(a,button,summary):focus-visible{
  outline:2px solid #6e2eb0!important;
  outline-offset:3px!important;
}
html body > header.asr-unified-header .asr-uh-icon{height:17px;width:17px;flex:none}
html body > header.asr-unified-header .asr-uh-toggle{
  display:none;
  flex:none;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  padding:0;
  border:1px solid #e2dbe7;
  border-radius:9px;
  background:#fff;
  color:#251b2b;
  cursor:pointer;
}
html body > header.asr-unified-header .asr-uh-mobile-actions{display:none}
@media(max-width:1440px){
 html body > header.asr-unified-header .asr-uh-inner{width:min(1260px,calc(100% - 32px));gap:12px}
 html body > header.asr-unified-header .asr-uh-toggle{display:inline-flex;margin-left:auto}
 html body > header.asr-unified-header .asr-uh-nav{
   display:none;
   position:absolute;
   top:calc(100% - 1px);
   left:16px;
   right:16px;
   z-index:2100;
   max-height:calc(100dvh - 94px);
   overflow-y:auto;
   overscroll-behavior:contain;
   flex-direction:column;
   align-items:stretch;
   margin:0;
   padding:10px;
   border:1px solid #e7e0ea;
   border-radius:0 0 12px 12px;
   background:#fff;
   box-shadow:0 17px 34px rgba(25,15,35,.11);
   white-space:normal;
 }
 html body > header.asr-unified-header .asr-uh-nav.is-open{display:flex}
 html body > header.asr-unified-header .asr-uh-nav > a,
 html body > header.asr-unified-header .asr-uh-nav > details > summary{
   width:100%;
   min-height:43px;
   padding:11px 13px;
   justify-content:flex-start;
   font-size:15px;
 }
 html body > header.asr-unified-header .asr-uh-library{width:100%}
 html body > header.asr-unified-header .asr-uh-library-panel{
   position:static;
   width:100%;
   max-width:100%;
   box-shadow:none;
   margin:4px 0 6px;
 }
 html body > header.asr-unified-header .asr-uh-mobile-actions{display:flex;flex-wrap:wrap;gap:9px;margin:12px 5px 4px}
 html body > header.asr-unified-header .asr-uh-mobile-actions > a{
   border-radius:8px;
   border:1px solid #dfd4e8;
   padding:10px 13px;
   text-decoration:none;
   color:#4e2877;
   font-size:14px;
   font-weight:600;
 }
}
@media(max-width:700px){
 html{scroll-padding-top:76px}
 html body > header.asr-unified-header{height:68px!important;min-height:68px!important;max-height:68px!important}
 html body > header.asr-unified-header .asr-uh-inner{width:calc(100% - 24px);gap:8px}
 html body > header.asr-unified-header .asr-uh-mark{font-size:25px}
 html body > header.asr-unified-header .asr-uh-brand-rule{height:28px}
 html body > header.asr-unified-header .asr-uh-brand-name{font-size:9.5px;letter-spacing:.075em}
 html body > header.asr-unified-header .asr-uh-actions{gap:4px}
 html body > header.asr-unified-header .asr-uh-search{width:40px;height:40px;min-height:40px;padding:0!important}
 html body > header.asr-unified-header .asr-uh-search .asr-uh-action-label{display:none}
 html body > header.asr-unified-header .asr-uh-login{display:none!important}
 html body > header.asr-unified-header .asr-uh-apply{height:40px;min-height:40px;padding:0 10px!important;font-size:12px!important}
}
@media(max-width:390px){
 html body > header.asr-unified-header .asr-uh-brand-rule,
 html body > header.asr-unified-header .asr-uh-brand-name{display:none}
 html body > header.asr-unified-header .asr-uh-actions > a.asr-uh-apply{padding:0 9px!important}
 html body > header.asr-unified-header .asr-uh-inner{gap:6px}
}
@media(prefers-reduced-motion:reduce){
 html body > header.asr-unified-header *{transition:none!important}
}

/* Hide older headers even where legacy body classes use high-specificity rules. */
html body #root header.site-header:not(.asr-unified-header),
html body #app header.site-header:not(.asr-unified-header),
html body > header.site-header:not(.asr-unified-header),
html body > header.asr-shared-public-header:not(.asr-unified-header),
html body > header.asr-static-header:not(.asr-unified-header){
  display:none!important;
  height:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  visibility:hidden!important;
}


/* Contrast authority v2026-10-09.
   An older !important global link palette was overriding the canonical
   Services-like white header. Keep this ONE header's typography authoritative
   on every public route, rather than patching individual page variants. */
html body > header.asr-unified-header.asr-unified-header{
  background:#ffffff!important;
  background-color:#ffffff!important;
  background-image:none!important;
  color:#18141d!important;
  color-scheme:light!important;
  opacity:1!important;
  filter:none!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-brand,
html body > header.asr-unified-header.asr-unified-header .asr-uh-mark{
  color:#18141d!important;
  -webkit-text-fill-color:#18141d!important;
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  opacity:1!important;
  filter:none!important;
  text-shadow:none!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-brand-name{
  color:#393340!important;
  -webkit-text-fill-color:#393340!important;
  font-size:11px!important;
  font-weight:650!important;
  opacity:1!important;
  filter:none!important;
  text-shadow:none!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-nav{
  opacity:1!important;
  filter:none!important;
  color:#29242e!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-nav>a,
html body > header.asr-unified-header.asr-unified-header .asr-uh-nav>details>summary{
  color:#302a35!important;
  -webkit-text-fill-color:#302a35!important;
  background:transparent!important;
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-size:14px!important;
  font-weight:600!important;
  letter-spacing:0!important;
  line-height:1.3!important;
  opacity:1!important;
  visibility:visible!important;
  filter:none!important;
  mix-blend-mode:normal!important;
  text-shadow:none!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-nav>a:hover,
html body > header.asr-unified-header.asr-unified-header .asr-uh-nav>a[aria-current="page"],
html body > header.asr-unified-header.asr-unified-header .asr-uh-nav>details>summary:hover,
html body > header.asr-unified-header.asr-unified-header .asr-uh-nav>details[open]>summary{
  color:#55268d!important;
  -webkit-text-fill-color:#55268d!important;
  background:#f4eff9!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-nav :is(svg,.asr-uh-chevron){
  color:currentColor!important;
  stroke:currentColor!important;
  opacity:1!important;
  filter:none!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-library-panel{
  background:#fff!important;
  color:#211b2a!important;
  opacity:1!important;
  filter:none!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-library-panel>a{
  color:#302a35!important;
  -webkit-text-fill-color:#302a35!important;
  background:#fff!important;
  font-size:14px!important;
  font-weight:650!important;
  opacity:1!important;
  text-shadow:none!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-library-panel>a:hover{
  color:#55268d!important;
  -webkit-text-fill-color:#55268d!important;
  background:#f4eff9!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-library-panel small{
  color:#5b5361!important;
  -webkit-text-fill-color:#5b5361!important;
  opacity:1!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-actions>a{
  font-family:Inter,ui-sans-serif,system-ui,sans-serif!important;
  font-size:14px!important;
  opacity:1!important;
  filter:none!important;
  text-shadow:none!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-actions>a.asr-uh-login{
  color:#302a35!important;
  -webkit-text-fill-color:#302a35!important;
  font-weight:600!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-actions>a.asr-uh-search{
  background:#141116!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border-color:#141116!important;
  font-weight:650!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-actions>a.asr-uh-apply{
  background:#7c3aed!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  border-color:#7c3aed!important;
  font-weight:700!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-actions :is(svg,.asr-uh-action-label){
  color:inherit!important;
  -webkit-text-fill-color:inherit!important;
  opacity:1!important;
}
@media(max-width:1440px){
  html body > header.asr-unified-header.asr-unified-header .asr-uh-toggle{
    color:#211b2a!important;
    background:#fff!important;
    border-color:#d9d1e0!important;
    opacity:1!important;
  }
  html body > header.asr-unified-header.asr-unified-header .asr-uh-nav{
    background:#fff!important;
  }
  html body > header.asr-unified-header.asr-unified-header .asr-uh-nav>a,
  html body > header.asr-unified-header.asr-unified-header .asr-uh-nav>details>summary{
    font-size:15px!important;
  }
  html body > header.asr-unified-header.asr-unified-header .asr-uh-mobile-actions>a{
    color:#302a35!important;
    -webkit-text-fill-color:#302a35!important;
    font-size:14px!important;
    font-weight:600!important;
    opacity:1!important;
  }
}

/* Help dropdown + hover parity · 2026-10-09 */
html body > header.asr-unified-header .asr-uh-help{
  position:relative;
  display:block;
}
html body > header.asr-unified-header .asr-uh-help>summary{
  list-style:none;
}
html body > header.asr-unified-header .asr-uh-help>summary::-webkit-details-marker{display:none}
html body > header.asr-unified-header .asr-uh-help[open] .asr-uh-chevron{transform:rotate(180deg)}
html body > header.asr-unified-header .asr-uh-nav>details.is-active>summary{
  background:#f6f2fa;
  color:#4e247c;
}
html body > header.asr-unified-header .asr-uh-help-panel{
  display:grid;
  grid-template-columns:1fr;
  gap:3px;
  position:absolute;
  top:calc(100% + 8px);
  right:0;
  z-index:2300;
  width:310px;
  max-width:calc(100vw - 32px);
  padding:8px;
  border:1px solid #e7e1ed;
  border-radius:12px;
  background:#fff;
  color:#211b2a;
  box-shadow:0 15px 40px rgba(23,11,33,.12);
}
html body > header.asr-unified-header .asr-uh-help-panel>a{
  display:block;
  padding:12px;
  border-radius:9px;
  color:#2b2333;
  text-decoration:none;
  background:#fff;
}
html body > header.asr-unified-header .asr-uh-help-panel>a:hover,
html body > header.asr-unified-header .asr-uh-help-panel>a:focus-visible{
  background:#f6f1fa;
  color:#55268d;
}
html body > header.asr-unified-header .asr-uh-help-panel b{
  display:block;
  margin:0 0 3px;
  color:#302a35;
  font-size:14px;
  font-weight:700;
  line-height:1.25;
}
html body > header.asr-unified-header .asr-uh-help-panel small{
  display:block;
  color:#655d6c;
  font-size:12px;
  font-weight:450;
  line-height:1.4;
}
html body > header.asr-unified-header .asr-uh-help-panel>a[aria-current="page"]{
  background:#f4eff9;
}
html body > header.asr-unified-header .asr-uh-help-panel>a[aria-current="page"] b{
  color:#55268d;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-help-panel{
  background:#fff!important;
  color:#211b2a!important;
  opacity:1!important;
  filter:none!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-help-panel>a{
  color:#302a35!important;
  -webkit-text-fill-color:#302a35!important;
  background:#fff!important;
  opacity:1!important;
  text-shadow:none!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-help-panel>a:hover,
html body > header.asr-unified-header.asr-unified-header .asr-uh-help-panel>a[aria-current="page"]{
  color:#55268d!important;
  -webkit-text-fill-color:#55268d!important;
  background:#f4eff9!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-help-panel b{
  color:#302a35!important;
  -webkit-text-fill-color:#302a35!important;
}
html body > header.asr-unified-header.asr-unified-header .asr-uh-help-panel small{
  color:#5b5361!important;
  -webkit-text-fill-color:#5b5361!important;
}
@media(max-width:1440px){
  html body > header.asr-unified-header .asr-uh-help{width:100%}
  html body > header.asr-unified-header .asr-uh-help-panel{
    position:static;
    width:100%;
    max-width:100%;
    margin:4px 0 6px;
    box-shadow:none;
  }
}
