﻿/* mobile_header_skip_fix_v1.css
   Full-site mobile header/menu and skip-link authority. Loaded last on purpose. */

/* keep skip link available for keyboard users, never visible on initial page paint */
.skip-link,
a.skip-link{
  position:fixed !important;
  left:12px !important;
  top:max(12px, env(safe-area-inset-top)) !important;
  width:auto !important;
  height:auto !important;
  padding:10px 14px !important;
  margin:0 !important;
  border-radius:12px !important;
  border:1px solid rgba(124,196,255,.30) !important;
  background:#0f1e31 !important;
  color:#f4f8ff !important;
  text-decoration:none !important;
  box-shadow:0 10px 24px rgba(0,0,0,.35) !important;
  white-space:nowrap !important;
  z-index:10000 !important;
  opacity:0 !important;
  pointer-events:none !important;
  transform:translateY(calc(-100% - 18px)) !important;
  clip:auto !important;
  overflow:hidden !important;
}
.skip-link:focus,
.skip-link:active{
  opacity:0 !important;
  pointer-events:none !important;
  transform:translateY(calc(-100% - 18px)) !important;
}
.skip-link:focus-visible{
  opacity:1 !important;
  pointer-events:auto !important;
  transform:translateY(0) !important;
  overflow:visible !important;
}

/* mobile header: brand left, menu always right */
@media (max-width: 980px){
  header .wrap.topbar,
  .site header .wrap.topbar,
  header .topbar,
  .site header .topbar,
  .topbar{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) auto !important;
    align-items:start !important;
    gap:14px !important;
    flex-wrap:unset !important;
  }

  header .brand,
  .site header .brand,
  .brand{
    min-width:0 !important;
    max-width:none !important;
    width:auto !important;
    margin:0 !important;
  }

  header .navwrap,
  .site header .navwrap,
  .navwrap{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:flex-end !important;
    justify-self:end !important;
    align-self:start !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 0 0 auto !important;
    padding:0 !important;
    flex:0 0 auto !important;
  }

  header .navlinks,
  .site header .navlinks{
    display:none !important;
  }

  header .menu,
  .site header .menu,
  details.menu{
    display:block !important;
    position:relative !important;
    width:auto !important;
    min-width:0 !important;
    margin:0 !important;
  }

  /* Match desktop header Start Intake CTA exactly. */
  header .menu-btn,
  .site header .menu-btn,
  summary.menu-btn{
    appearance:none !important;
    -webkit-appearance:none !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:.45rem !important;
    min-height:var(--d365-cta-minh) !important;
    width:auto !important;
    min-width:0 !important;
    padding:13px var(--d365-cta-pad-x) !important;
    margin:0 !important;
    border-radius:var(--d365-cta-radius) !important;
    border:1px solid transparent !important;
    background:linear-gradient(180deg, #203754 0%, #182a42 100%) !important;
    border-color:#5d83aa !important;
    color:var(--d365-cta-text) !important;
    font:inherit !important;
    font-size:var(--d365-cta-font) !important;
    font-weight:650 !important;
    line-height:1.15 !important;
    letter-spacing:.01em !important;
    text-decoration:none !important;
    white-space:nowrap !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 12px 28px rgba(0,0,0,.24), 0 0 0 1px rgba(120,170,220,.10) !important;
    transition:transform 160ms ease, border-color 160ms ease, background 160ms ease, box-shadow 160ms ease, color 160ms ease !important;
    cursor:pointer !important;
  }

  header .menu-btn:hover,
  header .menu-btn:focus-visible,
  .site header .menu-btn:hover,
  .site header .menu-btn:focus-visible,
  summary.menu-btn:hover,
  summary.menu-btn:focus-visible{
    transform:translateY(-1px) !important;
    background:linear-gradient(180deg, #243d5f 0%, #1a2e49 100%) !important;
    border-color:#6e95bd !important;
    color:var(--d365-cta-text-strong) !important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 18px 36px rgba(0,0,0,.30), 0 0 0 1px rgba(120,170,220,.10) !important;
    outline:2px solid rgba(150,194,244,.42) !important;
    outline-offset:2px !important;
  }

  header .menu-btn:active,
  .site header .menu-btn:active,
  summary.menu-btn:active{
    transform:translateY(0) !important;
  }

  header .menu-btn::-webkit-details-marker,
  summary.menu-btn::-webkit-details-marker{
    display:none !important;
  }

  header .menu-btn::marker,
  summary.menu-btn::marker{
    content:'' !important;
  }

  header .menu-panel,
  .site header .menu-panel,
  details.menu > .menu-panel{
    position:absolute !important;
    right:0 !important;
    left:auto !important;
    top:calc(100% + 10px) !important;
    width:min(88vw, 420px) !important;
    min-width:min(88vw, 320px) !important;
    max-height:calc(100vh - 120px) !important;
    overflow:auto !important;
    margin-top:0 !important;
    z-index:999 !important;
  }

  header .menu-panel .navcta-mobile,
  header .menu-panel .navcta-mobile:visited{
    display:flex !important;
    width:100% !important;
    min-height:40px !important;
    justify-content:center !important;
  }
}

@media (max-width: 520px){
  header .wrap.topbar,
  .site header .wrap.topbar,
  .topbar{
    gap:12px !important;
  }

  header .menu-panel,
  .site header .menu-panel,
  details.menu > .menu-panel{
    width:min(92vw, 380px) !important;
    min-width:min(92vw, 300px) !important;
  }
}

/* Thursday11am header stack fix start */
header .brand .brand-tagline,
.site header .brand .brand-tagline{
  display:block !important;
  margin-top:4px !important;
  max-width:none !important;
}

header .brand .brand-tagline .brand-line,
.site header .brand .brand-tagline .brand-line{
  display:block !important;
  white-space:normal !important;
}

header .brand .brand-tagline .brand-line + .brand-line,
.site header .brand .brand-tagline .brand-line + .brand-line{
  margin-top:2px !important;
}

header .brand .tag:last-of-type,
.site header .brand .tag:last-of-type{
  max-width:none !important;
}

@media (max-width: 980px){
  header .brand,
  .site header .brand,
  .brand{
    min-width:0 !important;
    max-width:none !important;
    width:auto !important;
    margin:0 !important;
  }

  header .navwrap,
  .site header .navwrap,
  .navwrap{
    align-self:start !important;
  }

  header .brand .name,
  .site header .brand .name{
    display:block !important;
    padding-right:118px !important;
  }
}
/* Thursday11am header stack fix end */
/* Thursday11am header left alignment fix v3 */
header .brand,
.site header .brand{
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  text-align:left !important;
}

header .brand .name,
.site header .brand .name,
header .brand a.name,
.site header .brand a.name{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  text-align:left !important;
  text-indent:0 !important;
  align-self:flex-start !important;
}

header .brand .tag,
.site header .brand .tag{
  display:block !important;
  width:100% !important;
  margin-left:0 !important;
  padding-left:0 !important;
  text-align:left !important;
  align-self:flex-start !important;
}

header .brand .brand-tagline,
.site header .brand .brand-tagline{
  display:block !important;
  width:100% !important;
  margin-left:0 !important;
  padding-left:0 !important;
  text-align:left !important;
  align-self:flex-start !important;
}

header .brand .brand-tagline .brand-line,
.site header .brand .brand-tagline .brand-line{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  text-align:left !important;
}

@media (max-width: 980px){
  header .brand .name,
  .site header .brand .name,
  header .brand a.name,
  .site header .brand a.name,
  header .brand .tag,
  .site header .brand .tag,
  header .brand .brand-tagline,
  .site header .brand .brand-tagline,
  header .brand .brand-tagline .brand-line,
  .site header .brand .brand-tagline .brand-line{
    text-align:left !important;
  }
}
/* Thursday11am desktop header logo using existing /images/logo.jpg */
@media (min-width: 981px){
  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    display:grid !important;
    grid-template-columns:96px minmax(0,1fr) !important;
    column-gap:18px !important;
    align-items:start !important;
    max-width:640px !important;
    flex:0 1 640px !important;
    width:auto !important;
    margin:0 !important;
  }

  header .brand.brand-with-logo .brand-logo-link,
  .site header .brand.brand-with-logo .brand-logo-link{
    display:block !important;
    width:96px !important;
    min-width:96px !important;
    line-height:0 !important;
    text-decoration:none !important;
    margin:0 !important;
    padding:0 !important;
    align-self:start !important;
  }

  header .brand.brand-with-logo .brand-logo,
  .site header .brand.brand-with-logo .brand-logo{
    display:block !important;
    width:96px !important;
    height:auto !important;
    margin:0 !important;
  }

  header .brand.brand-with-logo .brand-copy,
  .site header .brand.brand-with-logo .brand-copy{
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  header .brand.brand-with-logo .brand-copy .name,
  .site header .brand.brand-with-logo .brand-copy .name,
  header .brand.brand-with-logo .brand-copy .tag,
  .site header .brand.brand-with-logo .brand-copy .tag{
    display:block !important;
    margin-left:0 !important;
    padding-left:0 !important;
    text-align:left !important;
  }
}

@media (max-width: 980px){
  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    display:block !important;
    max-width:none !important;
    width:auto !important;
  }

  header .brand.brand-with-logo .brand-logo-link,
  .site header .brand.brand-with-logo .brand-logo-link{
    display:none !important;
  }

  header .brand.brand-with-logo .brand-copy,
  .site header .brand.brand-with-logo .brand-copy{
    display:block !important;
  }
}
/* Thursday11am desktop header logo on all pages using existing /images/logo.jpg */
@media (min-width: 981px){
  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    display:grid !important;
    grid-template-columns:96px minmax(0,1fr) !important;
    column-gap:18px !important;
    align-items:start !important;
    max-width:740px !important;
    width:auto !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  header .brand.brand-with-logo .brand-logo-link,
  .site header .brand.brand-with-logo .brand-logo-link{
    display:block !important;
    width:96px !important;
    min-width:96px !important;
    margin:0 !important;
    padding:0 !important;
    line-height:0 !important;
    text-decoration:none !important;
    align-self:start !important;
  }

  header .brand.brand-with-logo .brand-logo,
  .site header .brand.brand-with-logo .brand-logo{
    display:block !important;
    width:96px !important;
    height:auto !important;
    margin:0 !important;
  }

  header .brand.brand-with-logo .brand-copy,
  .site header .brand.brand-with-logo .brand-copy{
    display:block !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  header .brand.brand-with-logo .brand-copy .name,
  .site header .brand.brand-with-logo .brand-copy .name,
  header .brand.brand-with-logo .brand-copy .tag,
  .site header .brand.brand-with-logo .brand-copy .tag{
    display:block !important;
    margin-left:0 !important;
    padding-left:0 !important;
    text-align:left !important;
  }
}

@media (max-width: 980px){
  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    display:block !important;
    max-width:none !important;
    width:auto !important;
  }

  header .brand.brand-with-logo .brand-logo-link,
  .site header .brand.brand-with-logo .brand-logo-link{
    display:none !important;
  }

  header .brand.brand-with-logo .brand-copy,
  .site header .brand.brand-with-logo .brand-copy{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
  }
}
/* Thursday11am canonical single-logo header restore */
@media (min-width: 981px){
  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    display:grid !important;
    grid-template-columns:96px minmax(0,1fr) !important;
    column-gap:18px !important;
    align-items:start !important;
    width:auto !important;
    max-width:740px !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  header .brand.brand-with-logo .brand-logo-link,
  .site header .brand.brand-with-logo .brand-logo-link{
    display:block !important;
    width:96px !important;
    min-width:96px !important;
    margin:0 !important;
    padding:0 !important;
    line-height:0 !important;
    text-decoration:none !important;
    align-self:start !important;
  }

  header .brand.brand-with-logo .brand-logo,
  .site header .brand.brand-with-logo .brand-logo{
    display:block !important;
    width:96px !important;
    height:auto !important;
    margin:0 !important;
  }

  header .brand.brand-with-logo .brand-copy,
  .site header .brand.brand-with-logo .brand-copy{
    display:block !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  header .brand.brand-with-logo .brand-copy .name,
  .site header .brand.brand-with-logo .brand-copy .name,
  header .brand.brand-with-logo .brand-copy .tag,
  .site header .brand.brand-with-logo .brand-copy .tag{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    text-align:left !important;
  }

  header .brand.brand-with-logo .brand-tagline,
  .site header .brand.brand-with-logo .brand-tagline{
    margin-top:4px !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line{
    display:block !important;
    white-space:normal !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line + .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line + .brand-line{
    margin-top:2px !important;
  }
}

@media (max-width: 980px){
  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    display:block !important;
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
  }

  header .brand.brand-with-logo .brand-logo-link,
  .site header .brand.brand-with-logo .brand-logo-link{
    display:none !important;
  }

  header .brand.brand-with-logo .brand-copy,
  .site header .brand.brand-with-logo .brand-copy{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
  }

  header .brand.brand-with-logo .brand-copy .name,
  .site header .brand.brand-with-logo .brand-copy .name,
  header .brand.brand-with-logo .brand-copy .tag,
  .site header .brand.brand-with-logo .brand-copy .tag{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    text-align:left !important;
  }

  header .brand.brand-with-logo .brand-tagline,
  .site header .brand.brand-with-logo .brand-tagline{
    margin-top:6px !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line{
    display:block !important;
    white-space:normal !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line + .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line + .brand-line{
    margin-top:2px !important;
  }
}
/* Thursday11am canonical header full reset + alignment repair */
@media (min-width: 981px){
  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    display:grid !important;
    grid-template-columns:96px minmax(0,1fr) !important;
    column-gap:18px !important;
    align-items:start !important;
    width:auto !important;
    max-width:740px !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
    flex:0 1 740px !important;
  }

  header .brand.brand-with-logo .brand-logo-link,
  .site header .brand.brand-with-logo .brand-logo-link{
    display:block !important;
    width:96px !important;
    min-width:96px !important;
    margin:0 !important;
    padding:0 !important;
    line-height:0 !important;
    text-decoration:none !important;
    align-self:start !important;
  }

  header .brand.brand-with-logo .brand-logo,
  .site header .brand.brand-with-logo .brand-logo{
    display:block !important;
    width:96px !important;
    height:auto !important;
    margin:0 !important;
  }

  header .brand.brand-with-logo .brand-copy,
  .site header .brand.brand-with-logo .brand-copy{
    display:block !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  header .brand.brand-with-logo .brand-copy .name,
  .site header .brand.brand-with-logo .brand-copy .name,
  header .brand.brand-with-logo .brand-copy .tag,
  .site header .brand.brand-with-logo .brand-copy .tag{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    text-align:left !important;
  }

  header .brand.brand-with-logo .brand-tagline,
  .site header .brand.brand-with-logo .brand-tagline{
    margin-top:4px !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line{
    display:block !important;
    white-space:normal !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line + .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line + .brand-line{
    margin-top:2px !important;
  }
}

@media (max-width: 980px){
  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    display:block !important;
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
  }

  header .brand.brand-with-logo .brand-logo-link,
  .site header .brand.brand-with-logo .brand-logo-link{
    display:none !important;
  }

  header .brand.brand-with-logo .brand-copy,
  .site header .brand.brand-with-logo .brand-copy{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
  }

  header .brand.brand-with-logo .brand-copy .name,
  .site header .brand.brand-with-logo .brand-copy .name,
  header .brand.brand-with-logo .brand-copy .tag,
  .site header .brand.brand-with-logo .brand-copy .tag{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    text-align:left !important;
  }

  header .brand.brand-with-logo .brand-tagline,
  .site header .brand.brand-with-logo .brand-tagline{
    margin-top:6px !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line{
    display:block !important;
    white-space:normal !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line + .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line + .brand-line{
    margin-top:2px !important;
  }
}
/* Thursday11am mobile header logo bleed layout fix */
@media (max-width: 980px){
  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    display:grid !important;
    grid-template-columns:88px minmax(0,1fr) !important;
    grid-template-areas:
      "name name"
      "logo tagline"
      "logo location" !important;
    column-gap:10px !important;
    row-gap:2px !important;
    align-items:start !important;
    min-width:0 !important;
    width:auto !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
  }

  header .brand.brand-with-logo .brand-copy,
  .site header .brand.brand-with-logo .brand-copy{
    display:contents !important;
  }

  header .brand.brand-with-logo .brand-copy .name,
  .site header .brand.brand-with-logo .brand-copy .name{
    grid-area:name !important;
    display:block !important;
    margin:0 0 6px 0 !important;
    padding:0 !important;
    text-align:left !important;
    line-height:1.05 !important;
  }

  header .brand.brand-with-logo .brand-logo-link,
  .site header .brand.brand-with-logo .brand-logo-link{
    grid-area:logo !important;
    display:block !important;
    width:88px !important;
    min-width:88px !important;
    height:88px !important;
    margin:0 !important;
    padding:0 !important;
    line-height:0 !important;
    align-self:start !important;
    text-decoration:none !important;
    position:relative !important;
  }

  header .brand.brand-with-logo .brand-logo,
  .site header .brand.brand-with-logo .brand-logo{
    content:url('/images/logo-mobile-bleed.png') !important;
    display:block !important;
    width:88px !important;
    height:88px !important;
    object-fit:contain !important;
    margin:0 !important;
    padding:0 !important;
    background:transparent !important;
    border-radius:0 !important;
    box-shadow:none !important;
  }

  header .brand.brand-with-logo .brand-tagline,
  .site header .brand.brand-with-logo .brand-tagline{
    grid-area:tagline !important;
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    min-width:0 !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    white-space:normal !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line + .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line + .brand-line{
    margin-top:2px !important;
  }

  header .brand.brand-with-logo .brand-copy > .tag:last-of-type,
  .site header .brand.brand-with-logo .brand-copy > .tag:last-of-type{
    grid-area:location !important;
    display:block !important;
    margin:4px 0 0 0 !important;
    padding:0 !important;
    min-width:0 !important;
  }

  header .brand.brand-with-logo .location-line,
  .site header .brand.brand-with-logo .location-line{
    display:block !important;
  }
}
/* Thursday11am mobile header text-breaks + location sentence fix */
@media (max-width: 980px){
  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    grid-template-areas:
      "name name"
      "logo tagline"
      "location location" !important;
    grid-template-columns:88px minmax(0,1fr) !important;
    column-gap:10px !important;
    row-gap:2px !important;
  }

  header .brand.brand-with-logo .brand-tagline,
  .site header .brand.brand-with-logo .brand-tagline{
    grid-area:tagline !important;
    margin:0 !important;
    padding:0 !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line{
    display:block !important;
    white-space:nowrap !important;
    margin:0 !important;
    padding:0 !important;
    font-size:0 !important;
    line-height:0 !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(1)::before,
  .site header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(1)::before{
    content:"Preservation";
    display:block;
    font-size:11px;
    line-height:1.2;
    color:inherit;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(2)::before,
  .site header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(2)::before{
    content:"Forensic Data Acquisition";
    display:block;
    font-size:11px;
    line-height:1.2;
    color:inherit;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(3)::before,
  .site header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(3)::before{
    content:"Evidence Handling & Documentation";
    display:block;
    font-size:10.5px;
    line-height:1.2;
    color:inherit;
  }

  header .brand.brand-with-logo .brand-copy > .tag:last-of-type,
  .site header .brand.brand-with-logo .brand-copy > .tag:last-of-type{
    grid-area:location !important;
    display:block !important;
    margin:5px 0 0 0 !important;
    padding:0 !important;
    min-width:0 !important;
    max-width:none !important;
  }

  header .brand.brand-with-logo .location-line,
  .site header .brand.brand-with-logo .location-line{
    display:block !important;
    white-space:nowrap !important;
    font-size:10px !important;
    line-height:1.15 !important;
    letter-spacing:0 !important;
  }
}
/* Thursday11am header logo bleed for both desktop and mobile */
header .brand.brand-with-logo .brand-logo,
.site header .brand.brand-with-logo .brand-logo{
  content:url('/images/logo-header-bleed.png') !important;
  background:transparent !important;
  border-radius:0 !important;
  box-shadow:none !important;
}

@media (min-width: 981px){
  header .brand.brand-with-logo .brand-logo,
  .site header .brand.brand-with-logo .brand-logo{
    width:96px !important;
    height:96px !important;
    object-fit:contain !important;
    margin:0 !important;
    padding:0 !important;
  }
}

@media (max-width: 980px){
  header .brand.brand-with-logo .brand-logo,
  .site header .brand.brand-with-logo .brand-logo{
    width:88px !important;
    height:88px !important;
    object-fit:contain !important;
    margin:0 !important;
    padding:0 !important;
  }
}
/* Thursday11am mobile header text shift + full first phrase */
@media (max-width: 980px){
  header .brand.brand-with-logo .brand-tagline,
  .site header .brand.brand-with-logo .brand-tagline{
    margin-top:10px !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line{
    display:block !important;
    white-space:nowrap !important;
    margin:0 !important;
    padding:0 !important;
    font-size:0 !important;
    line-height:0 !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(1)::before,
  .site header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(1)::before{
    content:"Preservation-first services";
    display:block;
    font-size:11px;
    line-height:1.2;
    color:inherit;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(2)::before,
  .site header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(2)::before{
    content:"Forensic Data Acquisition";
    display:block;
    font-size:11px;
    line-height:1.2;
    color:inherit;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(3)::before,
  .site header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(3)::before{
    content:"Evidence Handling & Documentation";
    display:block;
    font-size:10.5px;
    line-height:1.2;
    color:inherit;
  }
}
/* Thursday11am mobile header force text 3 lines lower */
@media (max-width: 980px){
  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    grid-template-areas:
      "name name"
      "logo tagline"
      "location location" !important;
  }

  header .brand.brand-with-logo .brand-tagline,
  .site header .brand.brand-with-logo .brand-tagline{
    grid-area:tagline !important;
    margin-top:32px !important;
    position:relative !important;
    top:0 !important;
    align-self:start !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line{
    display:block !important;
    white-space:nowrap !important;
    margin:0 !important;
    padding:0 !important;
    font-size:0 !important;
    line-height:0 !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(1)::before,
  .site header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(1)::before{
    content:"Preservation-first services";
    display:block;
    font-size:11px;
    line-height:1.2;
    color:inherit;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(2)::before,
  .site header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(2)::before{
    content:"Forensic Data Acquisition";
    display:block;
    font-size:11px;
    line-height:1.2;
    color:inherit;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(3)::before,
  .site header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(3)::before{
    content:"Evidence Handling & Documentation";
    display:block;
    font-size:10.5px;
    line-height:1.2;
    color:inherit;
  }
}
/* Thursday11am desktop header single-line location consistency */
@media (min-width: 981px){
  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    grid-template-columns:96px minmax(0,max-content) !important;
    max-width:1100px !important;
    width:auto !important;
    min-width:0 !important;
    column-gap:18px !important;
    align-items:start !important;
  }

  header .brand.brand-with-logo .brand-copy,
  .site header .brand.brand-with-logo .brand-copy{
    min-width:0 !important;
    width:auto !important;
    max-width:none !important;
  }

  header .brand.brand-with-logo .brand-copy > .tag:last-of-type,
  .site header .brand.brand-with-logo .brand-copy > .tag:last-of-type{
    display:block !important;
    width:auto !important;
    max-width:none !important;
    white-space:nowrap !important;
    margin-top:0 !important;
  }

  header .brand.brand-with-logo .location-line,
  .site header .brand.brand-with-logo .location-line{
    display:inline-block !important;
    white-space:nowrap !important;
    max-width:none !important;
    width:auto !important;
    letter-spacing:0 !important;
  }
}
/* Thursday11am mobile header hard shift service text lower */
@media (max-width: 980px){
  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    grid-template-areas:
      "name name"
      "logo tagline"
      "location tagline" !important;
    grid-template-columns:88px minmax(0,1fr) !important;
    column-gap:10px !important;
    row-gap:0 !important;
    align-items:start !important;
  }

  header .brand.brand-with-logo .brand-tagline,
  .site header .brand.brand-with-logo .brand-tagline{
    grid-area:tagline !important;
    display:block !important;
    margin:0 !important;
    padding-top:34px !important;
    transform:translateY(0) !important;
    align-self:start !important;
    min-width:0 !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line{
    display:block !important;
    white-space:nowrap !important;
    margin:0 !important;
    padding:0 !important;
    font-size:0 !important;
    line-height:0 !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(1)::before,
  .site header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(1)::before{
    content:"Preservation-first services";
    display:block;
    font-size:11px;
    line-height:1.2;
    color:inherit;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(2)::before,
  .site header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(2)::before{
    content:"Forensic Data Acquisition";
    display:block;
    font-size:11px;
    line-height:1.2;
    color:inherit;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(3)::before,
  .site header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(3)::before{
    content:"Evidence Handling & Documentation";
    display:block;
    font-size:10.5px;
    line-height:1.2;
    color:inherit;
  }

  header .brand.brand-with-logo .brand-copy > .tag:last-of-type,
  .site header .brand.brand-with-logo .brand-copy > .tag:last-of-type{
    grid-area:location !important;
    display:block !important;
    margin:4px 0 0 0 !important;
    padding:0 !important;
    align-self:start !important;
    width:auto !important;
    max-width:none !important;
  }

  header .brand.brand-with-logo .location-line,
  .site header .brand.brand-with-logo .location-line{
    display:inline-block !important;
    white-space:nowrap !important;
    font-size:10px !important;
    line-height:1.15 !important;
    letter-spacing:0 !important;
  }
}
/* Thursday11am mobile header restore real selectable text v2 */
@media (max-width: 980px){
  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    display:grid !important;
    grid-template-areas:
      "name name"
      "logo tagline"
      "location tagline" !important;
    grid-template-columns:88px minmax(0,1fr) !important;
    column-gap:10px !important;
    row-gap:0 !important;
    align-items:start !important;
    min-width:0 !important;
    width:auto !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
  }

  header .brand.brand-with-logo .brand-copy,
  .site header .brand.brand-with-logo .brand-copy{
    display:contents !important;
  }

  header .brand.brand-with-logo .brand-copy .name,
  .site header .brand.brand-with-logo .brand-copy .name{
    grid-area:name !important;
    display:block !important;
    margin:0 0 6px 0 !important;
    padding:0 !important;
    text-align:left !important;
    line-height:1.05 !important;
  }

  header .brand.brand-with-logo .brand-logo-link,
  .site header .brand.brand-with-logo .brand-logo-link{
    grid-area:logo !important;
    display:block !important;
    width:88px !important;
    min-width:88px !important;
    height:88px !important;
    margin:0 !important;
    padding:0 !important;
    line-height:0 !important;
    align-self:start !important;
    text-decoration:none !important;
  }

  header .brand.brand-with-logo .brand-tagline,
  .site header .brand.brand-with-logo .brand-tagline{
    grid-area:tagline !important;
    display:block !important;
    margin:0 !important;
    padding-top:34px !important;
    min-width:0 !important;
    align-self:start !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line{
    display:block !important;
    white-space:nowrap !important;
    margin:0 !important;
    padding:0 !important;
    font-size:11px !important;
    line-height:1.2 !important;
    color:inherit !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(3),
  .site header .brand.brand-with-logo .brand-tagline .brand-line:nth-child(3){
    font-size:10.5px !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line::before,
  .site header .brand.brand-with-logo .brand-tagline .brand-line::before,
  header .brand.brand-with-logo .brand-tagline .brand-line::after,
  .site header .brand.brand-with-logo .brand-tagline .brand-line::after{
    content:none !important;
    display:none !important;
  }

  header .brand.brand-with-logo .brand-copy > .tag:last-of-type,
  .site header .brand.brand-with-logo .brand-copy > .tag:last-of-type{
    grid-area:location !important;
    display:block !important;
    margin:4px 0 0 0 !important;
    padding:0 !important;
    align-self:start !important;
    width:auto !important;
    max-width:none !important;
  }

  header .brand.brand-with-logo .location-line,
  .site header .brand.brand-with-logo .location-line{
    display:inline-block !important;
    white-space:nowrap !important;
    font-size:10px !important;
    line-height:1.15 !important;
    letter-spacing:0 !important;
  }
}
/* Thursday11am mobile header move service lines 3 rows down */
@media (max-width: 980px){
  header .brand.brand-with-logo .brand-tagline,
  .site header .brand.brand-with-logo .brand-tagline{
    margin-top:0 !important;
    padding-top:0 !important;
    transform:none !important;
    position:relative !important;
  }

  header .brand.brand-with-logo .brand-tagline::before,
  .site header .brand.brand-with-logo .brand-tagline::before{
    content:"" !important;
    display:block !important;
    height:36px !important;
    width:100% !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line{
    display:block !important;
  }
}
/* Thursday11am mobile header location follows service lines */
@media (max-width: 980px){
  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    grid-template-areas:
      "name name"
      "logo tagline"
      "logo location" !important;
    grid-template-columns:88px minmax(0,1fr) !important;
    column-gap:10px !important;
    row-gap:0 !important;
    align-items:start !important;
  }

  header .brand.brand-with-logo .brand-tagline,
  .site header .brand.brand-with-logo .brand-tagline{
    grid-area:tagline !important;
    display:block !important;
    margin:0 !important;
    padding-top:34px !important;
    min-width:0 !important;
    align-self:start !important;
  }

  header .brand.brand-with-logo .brand-copy > .tag:last-of-type,
  .site header .brand.brand-with-logo .brand-copy > .tag:last-of-type{
    grid-area:location !important;
    display:block !important;
    margin:2px 0 0 0 !important;
    padding:0 !important;
    align-self:start !important;
    width:auto !important;
    max-width:none !important;
  }

  header .brand.brand-with-logo .location-line,
  .site header .brand.brand-with-logo .location-line{
    display:inline-block !important;
    white-space:nowrap !important;
    font-size:10px !important;
    line-height:1.15 !important;
    letter-spacing:0 !important;
  }
}
/* Thursday11am mobile header shift full text block up one line */
@media (max-width: 980px){
  header .brand.brand-with-logo .brand-copy .name,
  .site header .brand.brand-with-logo .brand-copy .name,
  header .brand.brand-with-logo .brand-tagline,
  .site header .brand.brand-with-logo .brand-tagline,
  header .brand.brand-with-logo .brand-copy > .tag:last-of-type,
  .site header .brand.brand-with-logo .brand-copy > .tag:last-of-type{
    transform: translateY(-12px) !important;
  }

  header .brand.brand-with-logo .brand-tagline,
  .site header .brand.brand-with-logo .brand-tagline{
    padding-top:22px !important;
  }

  header .brand.brand-with-logo .brand-copy > .tag:last-of-type,
  .site header .brand.brand-with-logo .brand-copy > .tag:last-of-type{
    margin-top:-8px !important;
  }
}
/* Thursday11am mobile header equal text spacing */
@media (max-width: 980px){
  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    grid-template-areas:
      "name name"
      "logo tagline"
      "logo location" !important;
    grid-template-columns:88px minmax(0,1fr) !important;
    column-gap:10px !important;
    row-gap:0 !important;
    align-items:start !important;
  }

  header .brand.brand-with-logo .brand-copy .name,
  .site header .brand.brand-with-logo .brand-copy .name{
    margin:0 0 10px 0 !important;
    line-height:1.05 !important;
  }

  header .brand.brand-with-logo .brand-tagline,
  .site header .brand.brand-with-logo .brand-tagline{
    grid-area:tagline !important;
    display:block !important;
    margin:0 !important;
    padding-top:24px !important;
    min-width:0 !important;
    align-self:start !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    white-space:nowrap !important;
    font-size:11px !important;
    line-height:1.2 !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line + .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line + .brand-line{
    margin-top:4px !important;
  }

  header .brand.brand-with-logo .brand-copy > .tag:last-of-type,
  .site header .brand.brand-with-logo .brand-copy > .tag:last-of-type{
    grid-area:location !important;
    display:block !important;
    margin:4px 0 0 0 !important;
    padding:0 !important;
    align-self:start !important;
    width:auto !important;
    max-width:none !important;
  }

  header .brand.brand-with-logo .location-line,
  .site header .brand.brand-with-logo .location-line{
    display:block !important;
    white-space:nowrap !important;
    font-size:10px !important;
    line-height:1.2 !important;
    letter-spacing:0 !important;
    margin:0 !important;
    padding:0 !important;
  }
}

/* D365_SECURITY_LINK_VISIBILITY_AND_MOBILE_HEADER_PATCH_V2_START */
main.wrap .muted a,
main.wrap p.muted a,
main.wrap li.muted a,
main.wrap .small.muted a,
main.wrap .muted a:link,
main.wrap .muted a:visited,
main.wrap p.muted a:link,
main.wrap p.muted a:visited,
main.wrap li.muted a:link,
main.wrap li.muted a:visited,
main.wrap .small.muted a:link,
main.wrap .small.muted a:visited{
  color: var(--d365-link, var(--link, #8fc4ff)) !important;
  -webkit-text-fill-color: var(--d365-link, var(--link, #8fc4ff)) !important;
  opacity: 1 !important;
  text-decoration: none !important;
}
main.wrap .muted a:hover,
main.wrap .muted a:focus,
main.wrap .muted a:focus-visible,
main.wrap .muted a:active,
main.wrap p.muted a:hover,
main.wrap p.muted a:focus,
main.wrap p.muted a:focus-visible,
main.wrap p.muted a:active,
main.wrap li.muted a:hover,
main.wrap li.muted a:focus,
main.wrap li.muted a:focus-visible,
main.wrap li.muted a:active,
main.wrap .small.muted a:hover,
main.wrap .small.muted a:focus,
main.wrap .small.muted a:focus-visible,
main.wrap .small.muted a:active{
  color: var(--d365-link-hover, #b6dcff) !important;
  -webkit-text-fill-color: var(--d365-link-hover, #b6dcff) !important;
  opacity: 1 !important;
  text-decoration: none !important;
}

@media (max-width: 980px){
  header .location-line .by-appointment-fragment,
  .site header .location-line .by-appointment-fragment{
    display:none !important;
  }
}
/* D365_SECURITY_LINK_VISIBILITY_AND_MOBILE_HEADER_PATCH_V2_END */

/* D365_CANONICAL_LINK_AND_MOBILE_HEADER_AUTHORITY_V1
   Terminal authority: readable inline links inside muted copy + stable mobile location line. */
.site-main .wrap .muted a:not(.btn),
.site-main .wrap p.muted a:not(.btn),
.site-main .wrap li.muted a:not(.btn),
.site-main .wrap .small.muted a:not(.btn),
main .wrap .muted a:not(.btn),
main .wrap p.muted a:not(.btn),
main .wrap li.muted a:not(.btn),
main .wrap .small.muted a:not(.btn),
.wrap .muted a:not(.btn),
.wrap p.muted a:not(.btn),
.wrap li.muted a:not(.btn),
.wrap .small.muted a:not(.btn){
  color:#8ec5ff !important;
  -webkit-text-fill-color:#8ec5ff !important;
  text-decoration:none !important;
}

.site-main .wrap .muted a:not(.btn):hover,
.site-main .wrap .muted a:not(.btn):focus,
.site-main .wrap .muted a:not(.btn):focus-visible,
.site-main .wrap p.muted a:not(.btn):hover,
.site-main .wrap p.muted a:not(.btn):focus,
.site-main .wrap p.muted a:not(.btn):focus-visible,
.site-main .wrap li.muted a:not(.btn):hover,
.site-main .wrap li.muted a:not(.btn):focus,
.site-main .wrap li.muted a:not(.btn):focus-visible,
.site-main .wrap .small.muted a:not(.btn):hover,
.site-main .wrap .small.muted a:not(.btn):focus,
.site-main .wrap .small.muted a:not(.btn):focus-visible,
main .wrap .muted a:not(.btn):hover,
main .wrap .muted a:not(.btn):focus,
main .wrap .muted a:not(.btn):focus-visible,
main .wrap p.muted a:not(.btn):hover,
main .wrap p.muted a:not(.btn):focus,
main .wrap p.muted a:not(.btn):focus-visible,
main .wrap li.muted a:not(.btn):hover,
main .wrap li.muted a:not(.btn):focus,
main .wrap li.muted a:not(.btn):focus-visible,
main .wrap .small.muted a:not(.btn):hover,
main .wrap .small.muted a:not(.btn):focus,
main .wrap .small.muted a:not(.btn):focus-visible,
.wrap .muted a:not(.btn):hover,
.wrap .muted a:not(.btn):focus,
.wrap .muted a:not(.btn):focus-visible,
.wrap p.muted a:not(.btn):hover,
.wrap p.muted a:not(.btn):focus,
.wrap p.muted a:not(.btn):focus-visible,
.wrap li.muted a:not(.btn):hover,
.wrap li.muted a:not(.btn):focus,
.wrap li.muted a:not(.btn):focus-visible,
.wrap .small.muted a:not(.btn):hover,
.wrap .small.muted a:not(.btn):focus,
.wrap .small.muted a:not(.btn):focus-visible{
  color:#b6dcff !important;
  -webkit-text-fill-color:#b6dcff !important;
}

@media (max-width: 980px){
  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    display:grid !important;
    grid-template-columns:96px minmax(0,1fr) !important;
    grid-template-areas:
      "logo name"
      "logo tagline"
      "logo location" !important;
    column-gap:10px !important;
    row-gap:4px !important;
    align-items:start !important;
  }

  header .brand.brand-with-logo .brand-logo-link,
  .site header .brand.brand-with-logo .brand-logo-link{
    grid-area:logo !important;
    display:block !important;
    width:96px !important;
    margin:0 !important;
    padding:0 !important;
    align-self:start !important;
  }

  header .brand.brand-with-logo .brand-logo,
  .site header .brand.brand-with-logo .brand-logo{
    display:block !important;
    width:96px !important;
    height:auto !important;
    margin:0 !important;
  }

  header .brand.brand-with-logo .brand-copy,
  .site header .brand.brand-with-logo .brand-copy{
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  header .brand.brand-with-logo .brand-copy .name,
  .site header .brand.brand-with-logo .brand-copy .name{
    grid-area:name !important;
    display:block !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    white-space:nowrap !important;
    line-height:1.05 !important;
  }

  header .brand.brand-with-logo .brand-tagline,
  .site header .brand.brand-with-logo .brand-tagline{
    grid-area:tagline !important;
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    position:static !important;
  }

  header .brand.brand-with-logo .brand-tagline::before,
  .site header .brand.brand-with-logo .brand-tagline::before,
  header .brand.brand-with-logo .brand-tagline::after,
  .site header .brand.brand-with-logo .brand-tagline::after,
  header .brand.brand-with-logo .brand-tagline .brand-line::before,
  .site header .brand.brand-with-logo .brand-tagline .brand-line::before,
  header .brand.brand-with-logo .brand-tagline .brand-line::after,
  .site header .brand.brand-with-logo .brand-tagline .brand-line::after{
    content:none !important;
    display:none !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    transform:none !important;
    white-space:nowrap !important;
    font-size:11px !important;
    line-height:1.2 !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line + .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line + .brand-line{
    margin-top:2px !important;
  }

  header .brand.brand-with-logo .brand-copy > .tag:last-of-type,
  .site header .brand.brand-with-logo .brand-copy > .tag:last-of-type{
    grid-area:location !important;
    display:block !important;
    margin:4px 0 0 0 !important;
    padding:0 !important;
    transform:none !important;
  }

  header .brand.brand-with-logo .location-line,
  .site header .brand.brand-with-logo .location-line{
    display:block !important;
    white-space:nowrap !important;
    font-size:10px !important;
    line-height:1.15 !important;
    letter-spacing:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  header .location-line .by-appointment-fragment,
  .site header .location-line .by-appointment-fragment{
    display:none !important;
  }
}
/* D365_CANONICAL_LINK_AND_MOBILE_HEADER_AUTHORITY_V1_END */

/* D365_RUNTIME_LINK_AND_MOBILE_HEADER_AUTHORITY_V3_START */
:root{
  --d365-content-link:#9fd0ff;
  --d365-content-link-hover:#c7e3ff;
}
.site-main .wrap a:not(.btn):not(.navtop):not(.ddlink):not(.navlink):not(.menu-btn):not(.navcta),
main.site-main a:not(.btn):not(.navtop):not(.ddlink):not(.navlink):not(.menu-btn):not(.navcta),
body > main a:not(.btn):not(.navtop):not(.ddlink):not(.navlink):not(.menu-btn):not(.navcta){
  color:var(--d365-content-link) !important;
  -webkit-text-fill-color:var(--d365-content-link) !important;
  text-decoration:none !important;
  opacity:1 !important;
}
.site-main .wrap a:not(.btn):not(.navtop):not(.ddlink):not(.navlink):not(.menu-btn):not(.navcta):hover,
.site-main .wrap a:not(.btn):not(.navtop):not(.ddlink):not(.navlink):not(.menu-btn):not(.navcta):focus,
.site-main .wrap a:not(.btn):not(.navtop):not(.ddlink):not(.navlink):not(.menu-btn):not(.navcta):focus-visible,
main.site-main a:not(.btn):not(.navtop):not(.ddlink):not(.navlink):not(.menu-btn):not(.navcta):hover,
main.site-main a:not(.btn):not(.navtop):not(.ddlink):not(.navlink):not(.menu-btn):not(.navcta):focus,
main.site-main a:not(.btn):not(.navtop):not(.ddlink):not(.navlink):not(.menu-btn):not(.navcta):focus-visible,
body > main a:not(.btn):not(.navtop):not(.ddlink):not(.navlink):not(.menu-btn):not(.navcta):hover,
body > main a:not(.btn):not(.navtop):not(.ddlink):not(.navlink):not(.menu-btn):not(.navcta):focus,
body > main a:not(.btn):not(.navtop):not(.ddlink):not(.navlink):not(.menu-btn):not(.navcta):focus-visible{
  color:var(--d365-content-link-hover) !important;
  -webkit-text-fill-color:var(--d365-content-link-hover) !important;
  text-decoration-color:rgba(199,227,255,.88) !important;
  opacity:1 !important;
}
@media (max-width:980px){
  body header .location-line .by-appointment-fragment,
  header .location-line .by-appointment-fragment,
  .site header .location-line .by-appointment-fragment{
    display:none !important;
  }
}
/* D365_RUNTIME_LINK_AND_MOBILE_HEADER_AUTHORITY_V3_END */


/* D365_CANONICAL_LINK_AND_MOBILE_HEADER_AUTHORITY_V4_START */
:root{
  --d365-link:#8fc4ff !important;
  --d365-link-hover:#b6dcff !important;
}

main.wrap .muted a,
main.wrap p.muted a,
main.wrap li.muted a,
main.wrap .small.muted a,
main.wrap .muted a:link,
main.wrap .muted a:visited,
main.wrap p.muted a:link,
main.wrap p.muted a:visited,
main.wrap li.muted a:link,
main.wrap li.muted a:visited,
main.wrap .small.muted a:link,
main.wrap .small.muted a:visited{
  color:#8fc4ff !important;
  -webkit-text-fill-color:#8fc4ff !important;
  opacity:1 !important;
  text-decoration:none !important;
}

main.wrap .muted a:hover,
main.wrap .muted a:focus,
main.wrap .muted a:focus-visible,
main.wrap .muted a:active,
main.wrap p.muted a:hover,
main.wrap p.muted a:focus,
main.wrap p.muted a:focus-visible,
main.wrap p.muted a:active,
main.wrap li.muted a:hover,
main.wrap li.muted a:focus,
main.wrap li.muted a:focus-visible,
main.wrap li.muted a:active,
main.wrap .small.muted a:hover,
main.wrap .small.muted a:focus,
main.wrap .small.muted a:focus-visible,
main.wrap .small.muted a:active{
  color:#b6dcff !important;
  -webkit-text-fill-color:#b6dcff !important;
  opacity:1 !important;
  text-decoration:none !important;
}

@media (max-width: 980px){
  header .location-line .by-appointment-fragment,
  .site header .location-line .by-appointment-fragment{
    display:none !important;
  }
}
/* D365_CANONICAL_LINK_AND_MOBILE_HEADER_AUTHORITY_V4_END */

/* 2026-04-08 mobile header normalization
   Final mobile authority to keep the deployed header aligned with the
   compact reference layout: logo left, brand copy beside it, menu pinned right. */
@media (max-width: 980px){
  header .wrap.topbar,
  .site header .wrap.topbar,
  header .topbar,
  .site header .topbar{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) auto !important;
    align-items:start !important;
    gap:14px !important;
    padding:12px 0 14px !important;
  }

  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    display:grid !important;
    grid-template-columns:72px minmax(0, 1fr) !important;
    column-gap:12px !important;
    row-gap:0 !important;
    align-items:start !important;
    width:auto !important;
    max-width:none !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  header .brand.brand-with-logo .brand-logo-link,
  .site header .brand.brand-with-logo .brand-logo-link{
    display:block !important;
    width:72px !important;
    min-width:72px !important;
    margin:0 !important;
    padding:0 !important;
    line-height:0 !important;
    text-decoration:none !important;
    align-self:start !important;
  }

  header .brand.brand-with-logo .brand-logo,
  .site header .brand.brand-with-logo .brand-logo{
    display:block !important;
    width:72px !important;
    height:auto !important;
    margin:0 !important;
  }

  header .brand.brand-with-logo .brand-copy,
  .site header .brand.brand-with-logo .brand-copy{
    display:block !important;
    min-width:0 !important;
    margin:0 !important;
    padding:0 !important;
  }

  header .brand.brand-with-logo .brand-copy .name,
  .site header .brand.brand-with-logo .brand-copy .name{
    display:block !important;
    width:auto !important;
    margin:2px 0 6px !important;
    padding:0 !important;
    font-size:clamp(17px, 4.8vw, 21px) !important;
    line-height:1.02 !important;
    letter-spacing:0 !important;
    text-align:left !important;
    transform:none !important;
  }

  header .brand.brand-with-logo .brand-tagline,
  .site header .brand.brand-with-logo .brand-tagline{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    min-width:0 !important;
    position:static !important;
    transform:none !important;
  }

  header .brand.brand-with-logo .brand-tagline::before,
  .site header .brand.brand-with-logo .brand-tagline::before{
    content:none !important;
    display:none !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    white-space:normal !important;
    font-size:11px !important;
    line-height:1.22 !important;
    color:inherit !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line + .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line + .brand-line{
    margin-top:2px !important;
  }

  header .brand.brand-with-logo .brand-copy > .tag:last-of-type,
  .site header .brand.brand-with-logo .brand-copy > .tag:last-of-type{
    display:block !important;
    margin:6px 0 0 !important;
    padding:0 !important;
    width:auto !important;
    max-width:none !important;
    transform:none !important;
  }

  header .brand.brand-with-logo .location-line,
  .site header .brand.brand-with-logo .location-line{
    display:block !important;
    margin:0 !important;
    padding:0 !important;
    white-space:normal !important;
    font-size:10px !important;
    line-height:1.2 !important;
    letter-spacing:0 !important;
  }

  header .navwrap,
  .site header .navwrap{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:flex-end !important;
    justify-self:end !important;
    align-self:start !important;
    margin:0 !important;
    padding:0 !important;
  }

  header .menu,
  .site header .menu{
    display:block !important;
    width:auto !important;
    margin:0 !important;
  }

  header .menu-btn,
  .site header .menu-btn,
  summary.menu-btn{
    min-width:76px !important;
    min-height:44px !important;
    padding:0 16px !important;
    margin:0 !important;
    border-radius:14px !important;
    font-size:14px !important;
  }

  header .menu-panel,
  .site header .menu-panel,
  details.menu > .menu-panel{
    top:calc(100% + 8px) !important;
    right:0 !important;
    left:auto !important;
    width:min(92vw, 340px) !important;
    min-width:min(92vw, 280px) !important;
  }

  header .location-line .by-appointment-fragment,
  .site header .location-line .by-appointment-fragment{
    display:none !important;
  }
}

@media (max-width: 430px){
  header .wrap.topbar,
  .site header .wrap.topbar,
  header .topbar,
  .site header .topbar{
    gap:12px !important;
  }

  header .brand.brand-with-logo,
  .site header .brand.brand-with-logo{
    grid-template-columns:64px minmax(0, 1fr) !important;
    column-gap:10px !important;
  }

  header .brand.brand-with-logo .brand-logo-link,
  .site header .brand.brand-with-logo .brand-logo-link{
    width:64px !important;
    min-width:64px !important;
  }

  header .brand.brand-with-logo .brand-logo,
  .site header .brand.brand-with-logo .brand-logo{
    width:64px !important;
  }

  header .brand.brand-with-logo .brand-copy .name,
  .site header .brand.brand-with-logo .brand-copy .name{
    font-size:clamp(16px, 5vw, 19px) !important;
    margin:2px 0 5px !important;
  }

  header .brand.brand-with-logo .brand-tagline .brand-line,
  .site header .brand.brand-with-logo .brand-tagline .brand-line{
    font-size:10.5px !important;
    line-height:1.18 !important;
  }

  header .brand.brand-with-logo .location-line,
  .site header .brand.brand-with-logo .location-line{
    font-size:9.75px !important;
  }

  header .menu-btn,
  .site header .menu-btn,
  summary.menu-btn{
    min-width:72px !important;
    padding:0 14px !important;
  }

  header .navwrap,
  .site header .navwrap,
  header .menu,
  .site header .menu{
    transform:translateX(-8px) !important;
  }
}

/* 2026-04-08 mobile content width + radius normalization
   Match the tighter mobile layout used by the preservation-first page across the site. */
@media (max-width: 640px){
  body main.site-main > .wrap,
  body .site-main > .wrap,
  body main > .wrap{
    width:auto !important;
    max-width:none !important;
    margin-left:14px !important;
    margin-right:14px !important;
    padding-left:0 !important;
    padding-right:0 !important;
  }

  body main.site-main > .wrap > *:not(p):not(ul):not(ol):not(dl):not(h1):not(h2):not(h3):not(h4):not(h5):not(h6):not(hr),
  body .site-main > .wrap > *:not(p):not(ul):not(ol):not(dl):not(h1):not(h2):not(h3):not(h4):not(h5):not(h6):not(hr),
  body main > .wrap > *:not(p):not(ul):not(ol):not(dl):not(h1):not(h2):not(h3):not(h4):not(h5):not(h6):not(hr){
    border-radius:18px !important;
    overflow:visible !important;
  }

  body main.site-main > .wrap > .card,
  body main.site-main > .wrap > section,
  body main.site-main > .wrap > article,
  body main.site-main > .wrap > aside,
  body main.site-main > .wrap > div,
  body .site-main > .wrap > .card,
  body .site-main > .wrap > section,
  body .site-main > .wrap > article,
  body .site-main > .wrap > aside,
  body .site-main > .wrap > div,
  body main .card,
  body main .panel,
  body main .section-card,
  body main .box,
  body main .related-box,
  body main .callout-muted,
  body main .link-card,
  body main .dep-hero-card,
  body main .dep-hero-wide,
  body main .dep-related-box,
  body main .hero,
  body main .hero-card,
  body main .feature-card,
  body main .content-panel,
  body main .overview-panel,
  body main .service-panel,
  body main .resource-panel,
  body main [class*="hero"],
  body main [class*="panel"],
  body main [class*="callout"],
  body main [class*="feature"],
  body main [class*="resource"],
  body main .footer-mobile-nav,
  body main .menusec{
    border-radius:18px !important;
    overflow:visible !important;
  }
}

@media (max-width: 430px){
  body main.site-main > .wrap,
  body .site-main > .wrap,
  body main > .wrap{
    margin-left:14px !important;
    margin-right:14px !important;
  }

  body main.site-main > .wrap > *:not(p):not(ul):not(ol):not(dl):not(h1):not(h2):not(h3):not(h4):not(h5):not(h6):not(hr),
  body .site-main > .wrap > *:not(p):not(ul):not(ol):not(dl):not(h1):not(h2):not(h3):not(h4):not(h5):not(h6):not(hr),
  body main > .wrap > *:not(p):not(ul):not(ol):not(dl):not(h1):not(h2):not(h3):not(h4):not(h5):not(h6):not(hr){
    border-radius:18px !important;
    overflow:visible !important;
  }

  body main.site-main > .wrap > .card,
  body main.site-main > .wrap > section,
  body main.site-main > .wrap > article,
  body main.site-main > .wrap > aside,
  body main.site-main > .wrap > div,
  body .site-main > .wrap > .card,
  body .site-main > .wrap > section,
  body .site-main > .wrap > article,
  body .site-main > .wrap > aside,
  body .site-main > .wrap > div,
  body main .card,
  body main .panel,
  body main .section-card,
  body main .box,
  body main .related-box,
  body main .callout-muted,
  body main .link-card,
  body main .dep-hero-card,
  body main .dep-hero-wide,
  body main .dep-related-box,
  body main .hero,
  body main .hero-card,
  body main .feature-card,
  body main .content-panel,
  body main .overview-panel,
  body main .service-panel,
  body main .resource-panel,
  body main [class*="hero"],
  body main [class*="panel"],
  body main [class*="callout"],
  body main [class*="feature"],
  body main [class*="resource"]{
    border-radius:18px !important;
  }
}

@media (min-width: 981px){
  footer.site,
  footer.site .footer-mobile-nav,
  footer.site .footer-mobile-nav-static,
  footer.site .footer-mobile-nav-stack{
    background:transparent !important;
    box-shadow:none !important;
    border:none !important;
  }

  footer.site .footer-mobile-nav{
    padding:0 !important;
    margin:0 0 18px !important;
  }

  footer.site .footer-mobile-nav-stack{
    display:flex !important;
    flex-wrap:wrap !important;
    justify-content:center !important;
    gap:22px !important;
  }

  footer.site .footer-mobile-nav .navcta,
  footer.site .footer-mobile-nav-stack .navcta{
    display:none !important;
  }

  footer.site .d365-disclaimer,
  footer.site [role="note"].d365-disclaimer{
    background:transparent !important;
    box-shadow:none !important;
    border:none !important;
    padding:0 !important;
    margin:14px auto 0 !important;
    max-width:980px !important;
  }
}

.d365-checklist-panel-fix{
  background:rgba(20, 30, 45, .96) !important;
  border:1px solid rgba(72, 108, 152, .38) !important;
  border-radius:18px !important;
  box-shadow:none !important;
}

/* Site-wide normalization for lighter section panels discovered in Firefox QA. */
main.site-main section.section,
.site-main section.section,
#maincontent section.section,
body section.section,
main.site-main .card,
main.site-main .panel,
main.site-main .box,
main.site-main .tile,
main.site-main .callout,
main.site-main details,
.site-main .card,
.site-main .panel,
.site-main .box,
.site-main .tile,
.site-main .callout,
.site-main details,
#maincontent .card,
#maincontent .panel,
#maincontent .box,
#maincontent .tile,
#maincontent .callout,
#maincontent details {
  background: #141b2b !important;
  background-color: #141b2b !important;
  background-image: none !important;
  border: 1px solid rgba(72, 108, 152, 0.38) !important;
  border-radius: 18px !important;
  box-shadow: none !important;
}

main.site-main .related-box .card.link-card,
main.site-main .related-box a.link-card,
main.site-main .related-box .link-card,
main.site-main .related-box .cards-grid > a,
main.site-main .related-box .cards-grid > .card,
.site-main .related-box .card.link-card,
.site-main .related-box a.link-card,
.site-main .related-box .link-card,
.site-main .related-box .cards-grid > a,
.site-main .related-box .cards-grid > .card,
#maincontent .related-box .card.link-card,
#maincontent .related-box a.link-card,
#maincontent .related-box .link-card,
#maincontent .related-box .cards-grid > a,
#maincontent .related-box .cards-grid > .card {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

main.site-main section.section > .wrap,
.site-main section.section > .wrap,
#maincontent section.section > .wrap,
body section.section > .wrap {
  background: transparent !important;
  background-color: transparent !important;
}

main.site-main > section.section,
main.site-main > .wrap > section.section,
.site-main > section.section,
.site-main > .wrap > section.section,
#maincontent > section.section,
#maincontent > .wrap > section.section {
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

@media (max-width: 767px) {
  html,
  body {
    overflow-x: hidden;
  }

  main.site-main,
  .site-main,
  #maincontent {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow-x: hidden !important;
  }

  main.site-main > section.section,
  main.site-main > .wrap > section.section,
  .site-main > section.section,
  .site-main > .wrap > section.section,
  #maincontent > section.section,
  #maincontent > .wrap > section.section {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  main.site-main > section.section > .wrap,
  main.site-main > .wrap > section.section > .wrap,
  .site-main > section.section > .wrap,
  .site-main > .wrap > section.section > .wrap,
  #maincontent > section.section > .wrap,
  #maincontent > .wrap > section.section > .wrap {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

main.site-main section.section > section.section,
main.site-main section.section > div,
.site-main .card > div,
.site-main .panel > div,
.site-main .box > div,
.site-main .tile > div,
.site-main section.section > section.section,
.site-main section.section > div,
#maincontent section.section > section.section,
#maincontent section.section > div,
main.site-main details > div,
#maincontent details > div,
body section.section > section.section,
body section.section > div {
  background: #141b2b !important;
  background-color: #141b2b !important;
  background-image: none !important;
}
@media (max-width: 767px) {
  html,
  body {
    overflow-x: hidden !important;
  }

  main.site-main,
  .site-main,
  #maincontent {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    overflow-x: hidden !important;
  }

  main.site-main > *,
  .site-main > *,
  #maincontent > * {
    box-sizing: border-box !important;
    width: min(100%, calc(100vw - 28px)) !important;
    max-width: calc(100vw - 28px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  main.site-main .wrap,
  .site-main .wrap,
  #maincontent .wrap {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  main.site-main > section.section,
  main.site-main > .wrap > section.section,
  .site-main > section.section,
  .site-main > .wrap > section.section,
  #maincontent > section.section,
  #maincontent > .wrap > section.section {
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  main.site-main > section.section > .wrap,
  main.site-main > .wrap > section.section > .wrap,
  .site-main > section.section > .wrap,
  .site-main > .wrap > section.section > .wrap,
  #maincontent > section.section > .wrap,
  #maincontent > .wrap > section.section > .wrap {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
@media (max-width: 767px) {
  html,
  body,
  body > * {
    max-width: 100vw !important;
  }

  main,
  main.site-main,
  .site-main,
  #maincontent,
  main > *,
  main .wrap,
  main section,
  main article,
  main div {
    box-sizing: border-box !important;
    max-width: 100% !important;
  }

  main .grid,
  main [class*="grid"],
  main [class*="columns"],
  main [class*="split"],
  main [style*="grid-template-columns"] {
    display: block !important;
    grid-template-columns: 1fr !important;
  }
}
/* Keep links consistent site-wide after cleanup. */
a,
a:visited,
a:hover,
a:focus,
a:active {
  text-decoration: none !important;
}
@media (min-width: 960px) {
  main {
    width: 100% !important;
    max-width: min(1120px, calc(100vw - 64px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
  }

  main > section,
  main > div,
  main > .grid,
  main > .card,
  main > .related-box,
  main > .faq {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
  }

  main .grid {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  main .grid > * {
    min-width: 0 !important;
  }
}
