*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font-body);color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased;overflow-x:hidden;line-height:1.5}
img,video{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit}
.page-width{padding-inline:var(--gutter);max-width:1600px;margin-inline:auto}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{position:absolute;left:8px;top:-60px;z-index:100;background:var(--ink);color:#fff;padding:10px 14px;border-radius:999px}
.skip-link:focus{top:8px}
[data-reveal]{opacity:1}
:root{--reveal-y:24px;--reveal-d:.7s}
.js [data-reveal]{opacity:0;transform:translateY(var(--reveal-y));transition:opacity var(--reveal-d) var(--ease),transform var(--reveal-d) var(--ease);transition-delay:var(--delay,0s)}
.js [data-reveal="clip"]{opacity:1;transform:none;clip-path:inset(12% 6% 12% 6% round var(--radius));transition:clip-path 1.3s var(--ease)}
[data-reveal].is-in,.js [data-reveal].is-in{opacity:1;transform:none}
.js [data-reveal="clip"].is-in{clip-path:inset(0 0 0 0 round var(--radius))}
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .js [data-reveal]{opacity:1;transform:none;clip-path:none}
}
