/* Shared foundation for Next Impact and its internal pages. */
@font-face{font-family:Polin;src:url('/fonts/Polin-Light.woff2') format('woff2');font-weight:300;font-display:swap}
@font-face{font-family:Polin;src:url('/fonts/Polin-Regular.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Polin;src:url('/fonts/Polin-Medium.woff2') format('woff2');font-weight:500;font-display:swap}
@font-face{font-family:Polin;src:url('/fonts/Polin-Semibold.woff2') format('woff2');font-weight:600;font-display:swap}
@font-face{font-family:Polin;src:url('/fonts/Polin-Bold.woff2') format('woff2');font-weight:700;font-display:swap}
@font-face{font-family:'JB Mono';src:url('/fonts/JetBrainsMono-Latin.woff2') format('woff2');font-weight:400;font-display:swap}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
h1,h2,h3,h4,p,figure,form{margin:0}
a{color:inherit}
img{max-width:100%;display:block}
button{font:inherit}
.mono{font-family:var(--mono);font-weight:400;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}

[data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease,ease),transform .7s var(--ease,ease)}
[data-reveal][data-shown="1"]{opacity:1;transform:none}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  [data-reveal]{opacity:1;transform:none}
}
