*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;background:var(--color-background);color:var(--color-text);font-family:var(--font-body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
button,a{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible{outline:3px solid #007d87;outline-offset:5px}
[hidden]{display:none!important}
h1,h2,h3,p{margin:0 0 16px}
h1,h2,h3{font-family:var(--font-heading);color:var(--color-brand-deep);line-height:1.18;letter-spacing:-.025em}
h1{font-size:clamp(36px,4vw,56px);font-weight:800}
h2{font-size:clamp(28px,2.6vw,38px);font-weight:700}
h3{font-size:20px;font-weight:600}
p{color:var(--color-text-muted)}
p:last-child{margin-bottom:0}
.section-container{width:min(calc(100% - 64px),var(--content-max));margin-inline:auto}
.section-band{padding-block:var(--section-space)}
.eyebrow{color:var(--color-brand-teal);font:600 12px/1.5 var(--font-body);text-transform:uppercase;letter-spacing:2px;margin-bottom:12px}
.section-heading{max-width:780px;margin-bottom:30px}
.section-heading h2{margin-bottom:0}
.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:fixed;top:-100px;left:20px;z-index:10000;background:white;padding:12px 20px;border:2px solid var(--color-brand-deep)}
.skip-link:focus{top:10px}
[id]{scroll-margin-top:112px}
.icon{width:24px;height:24px;flex:0 0 24px;vertical-align:middle}
.page-content{padding-block:64px;min-height:50vh}
.page-body{max-width:800px;overflow-wrap:anywhere}
