/* Fonts are self-hosted. Heading face: Montserrat 800 stands in for Nexa Bold (not licensed for web). */
@font-face{font-family:"Lato";font-weight:400;font-style:normal;font-display:swap;src:url("../fonts/Lato-Regular.woff2") format("woff2")}
@font-face{font-family:"Lato";font-weight:400;font-style:italic;font-display:swap;src:url("../fonts/Lato-Italic.woff2") format("woff2")}
@font-face{font-family:"Lato";font-weight:300;font-style:normal;font-display:swap;src:url("../fonts/Lato-Light.woff2") format("woff2")}
@font-face{font-family:"Lato";font-weight:700;font-style:normal;font-display:swap;src:url("../fonts/Lato-Bold.woff2") format("woff2")}
@font-face{font-family:"Montserrat";font-weight:800;font-style:normal;font-display:swap;src:url("../fonts/Montserrat-ExtraBold.woff2") format("woff2")}

:root{
  --teal:#00BFD5;          /* accents, rules, icons, large display only */
  --blue:#0091B2;          /* large display and rules only */
  --navy:#002A48;          /* body text, headings, button fills */
  --pine:#007473;          /* links, secondary buttons (5.9:1 on white) */
  --gold:#F9DF8D;
  --grey-tag:#707170;
  --grey-8:#8A8A8D;
  --grey-11:#555559;
  --grey-3:#C9C8C7;
  --wash:#F2F9FB;
  --danger:#A8201A;        /* darker than brand red to pass AA on white */
  --pending:#FFF6B8;
  --font-head:"Montserrat","Helvetica Neue",Arial,sans-serif;
  --font-body:"Lato","Helvetica Neue",Arial,sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:92px;-webkit-text-size-adjust:100%}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:#fff;color:var(--navy);font-family:var(--font-body);font-size:1rem;line-height:1.55}
img{max-width:100%;height:auto}
h1,h2,h3,h4{font-family:var(--font-head);font-weight:800;line-height:1.2;margin:0 0 .6em;color:var(--navy)}
p{margin:0 0 1em}
a{color:var(--pine);text-underline-offset:2px}
a:hover{color:var(--navy)}
:focus-visible{outline:3px solid var(--navy);outline-offset:2px;box-shadow:0 0 0 5px #fff}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:8px;top:-60px;background:var(--navy);color:#fff;padding:.6em 1em;z-index:100}
.skip:focus{top:8px}
.wrap{max-width:1040px;margin:0 auto;padding:0 16px}
.muted{color:var(--grey-11);font-size:.9rem}
[hidden]{display:none!important}
