*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font-text);font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-body);background:var(--surface-page);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5{font-family:var(--font-display);color:var(--text-heading);line-height:var(--lh-heading);letter-spacing:var(--ls-heading);margin:0 0 var(--space-4);text-wrap:balance;font-weight:var(--fw-bold)}
p{margin:0 0 var(--space-4);text-wrap:pretty}
img,video,svg{max-width:100%;height:auto;display:block}
a{color:var(--text-link);text-decoration:none;transition:var(--transition-color)}
a:hover{color:var(--text-link-hover)}
a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}
::selection{background:var(--blue-500);color:#fff}
.goc-overline{font-family:var(--font-text);font-size:var(--fs-overline);font-weight:var(--fw-semibold);letter-spacing:var(--ls-overline);text-transform:uppercase;color:var(--brand-accent)}
.goc-container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--gutter)}
.goc-grain::after{content:"";position:absolute;inset:0;background-image:var(--texture-grain);opacity:.05;pointer-events:none;mix-blend-mode:overlay}
