html {
color-scheme: dark;
}
@media (prefers-reduced-motion: no-preference) {
html {
scroll-behavior: smooth;
}
}
*,
*::before,
*::after {
box-sizing: border-box;
}
body {
margin: 0;
background: var(--graphite);
color: var(--paper);
font-family: "IBM Plex Sans", Arial, sans-serif;
font-weight: 400;
line-height: 1.5;
min-width: 320px;
}
img,
picture,
video,
svg {
display: block;
max-width: 100%;
}
img {
height: auto;
}
a {
color: inherit;
text-decoration: none;
}
button,
input,
select,
textarea {
font: inherit;
}
button {
cursor: pointer;
}
ul,
ol {
margin: 0;
padding-left: 1.25rem;
}
p,
h1,
h2,
h3,
h4,
h5,
h6,
figure {
margin: 0;
}
:focus-visible {
outline: 2px solid var(--chrome-light);
outline-offset: 3px;
}
.skip-link {
position: absolute;
left: 1rem;
top: -4rem;
z-index: 1000;
padding: 0.75rem 1rem;
background: var(--paper);
color: var(--graphite);
border-radius: 2px;
}
.skip-link:focus {
top: 1rem;
}
.visually-hidden {
position: absolute;
width: 1px;
height: 1px;
margin: -1px;
padding: 0;
overflow: hidden;
border: 0;
clip: rect(0 0 0 0);
white-space: nowrap;
}
