@font-face { font-family: 'Runalto'; src: url('fonts/Runalto-Light.ttf') format('truetype'); font-weight: 300; font-display: swap; }
@font-face { font-family: 'Runalto'; src: url('fonts/Runalto-Italic.ttf') format('truetype'); font-weight: 400; font-style: italic; font-display: swap; }
@font-face { font-family: 'Open Sans'; src: url('fonts/OpenSans-Regular.ttf') format('truetype'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Open Sans'; src: url('fonts/OpenSans-Medium.ttf') format('truetype'); font-weight: 500; font-display: swap; }
@font-face { font-family: 'Open Sans'; src: url('fonts/OpenSans-SemiBold.ttf') format('truetype'); font-weight: 600; font-display: swap; }

html { -webkit-text-size-adjust: 100%; }
body { margin: 0; background: #EDE9DC; text-wrap: pretty; }
img { max-width: 100%; }
a { color: #121212; }
a:hover { color: #121212; }
input, textarea { outline: none; }
:focus-visible { outline: 2px solid #121212; outline-offset: 3px; }

/* Reveals only apply when JS is running, so content is never stranded hidden. */
.js [data-reveal] { opacity: 0; transform: translateY(20px); }
.js [data-reveal].is-in { opacity: 1; transform: none; transition: opacity 600ms cubic-bezier(0.16, 1, 0.3, 1), transform 600ms cubic-bezier(0.16, 1, 0.3, 1); }

[data-hv="1"]:hover { background: #EDE9DC !important color: #121212 !important opacity: 1 !important }
[data-hv="2"]:hover { opacity: 0.75 !important }
[data-hv="3"]:hover { text-decoration: underline !important text-underline-offset: 8px !important }
[data-hv="4"]:hover { background: #121212 !important color: #EDE9DC !important }
[data-hv="5"]:hover { opacity: 0.7 !important color: #EDE9DC !important }
[data-hv="6"]:hover { opacity: 0.6 !important }
[data-hv="7"]:hover { opacity: 0.5 !important }
[data-hv="8"]:hover { opacity: 0.85 !important color: #EDE9DC !important }
[data-hv="9"]:hover { opacity: 0.85 !important }

@media (prefers-reduced-motion: reduce) {
  .js [data-reveal] { opacity: 1; transform: none; }
  * { animation-duration: 0.01ms !important; transition-duration: 0.01ms !important; }
}
