174 lines
2.6 KiB
CSS
174 lines
2.6 KiB
CSS
@layer reset {
|
|
*,
|
|
*::before,
|
|
*::after {
|
|
box-sizing: border-box;
|
|
}
|
|
|
|
body,
|
|
h1,
|
|
h2,
|
|
h3,
|
|
h4,
|
|
p,
|
|
figure,
|
|
blockquote,
|
|
dl,
|
|
dd {
|
|
margin: 0;
|
|
}
|
|
|
|
img,
|
|
svg,
|
|
video,
|
|
canvas {
|
|
display: block;
|
|
max-width: 100%;
|
|
}
|
|
|
|
img,
|
|
video {
|
|
height: auto;
|
|
}
|
|
|
|
input,
|
|
button,
|
|
textarea,
|
|
select {
|
|
font: inherit;
|
|
color: inherit;
|
|
}
|
|
|
|
button {
|
|
cursor: pointer;
|
|
}
|
|
|
|
[hidden] {
|
|
display: none !important;
|
|
}
|
|
}
|
|
|
|
@layer base {
|
|
html {
|
|
background: var(--bg);
|
|
color: var(--text);
|
|
font-family: var(--font-body);
|
|
font-size: 100%;
|
|
line-height: 1.6;
|
|
-webkit-text-size-adjust: 100%;
|
|
text-size-adjust: 100%;
|
|
-webkit-font-smoothing: antialiased;
|
|
-moz-osx-font-smoothing: grayscale;
|
|
scroll-padding-top: calc(var(--header-h) + 1rem);
|
|
hanging-punctuation: first;
|
|
}
|
|
|
|
@media (prefers-reduced-motion: no-preference) {
|
|
html {
|
|
scroll-behavior: smooth;
|
|
}
|
|
}
|
|
|
|
body {
|
|
min-height: 100vh;
|
|
min-height: 100svh;
|
|
display: flex;
|
|
flex-direction: column;
|
|
background: var(--bg);
|
|
font-size: var(--step-0);
|
|
overflow-x: clip;
|
|
}
|
|
|
|
main {
|
|
flex: 1;
|
|
padding-bottom: var(--section);
|
|
}
|
|
|
|
main:focus {
|
|
outline: none;
|
|
}
|
|
|
|
h1,
|
|
h2,
|
|
h3,
|
|
h4 {
|
|
font-family: var(--font-display);
|
|
font-weight: 650;
|
|
line-height: 1.05;
|
|
letter-spacing: -0.025em;
|
|
text-wrap: balance;
|
|
overflow-wrap: break-word;
|
|
}
|
|
|
|
p,
|
|
li {
|
|
text-wrap: pretty;
|
|
}
|
|
|
|
a {
|
|
color: inherit;
|
|
text-underline-offset: 0.2em;
|
|
text-decoration-thickness: 1px;
|
|
}
|
|
|
|
:focus-visible {
|
|
outline: 2px solid var(--pink-text);
|
|
outline-offset: 3px;
|
|
border-radius: 4px;
|
|
}
|
|
|
|
::selection {
|
|
background: var(--pink);
|
|
color: var(--bg);
|
|
}
|
|
|
|
.icon {
|
|
width: 1.15em;
|
|
height: 1.15em;
|
|
flex: none;
|
|
fill: none;
|
|
stroke: currentColor;
|
|
stroke-width: 1.8;
|
|
stroke-linecap: round;
|
|
stroke-linejoin: round;
|
|
}
|
|
|
|
.icon--play {
|
|
fill: currentColor;
|
|
stroke: none;
|
|
}
|
|
}
|
|
|
|
@layer utilities {
|
|
.visually-hidden {
|
|
position: absolute !important;
|
|
width: 1px;
|
|
height: 1px;
|
|
padding: 0;
|
|
margin: -1px;
|
|
overflow: hidden;
|
|
clip-path: inset(50%);
|
|
white-space: nowrap;
|
|
border: 0;
|
|
}
|
|
|
|
.skip-link {
|
|
position: fixed;
|
|
top: 0.75rem;
|
|
left: 0.75rem;
|
|
z-index: 100;
|
|
padding: 0.75rem 1rem;
|
|
border-radius: var(--radius-s);
|
|
background: var(--text);
|
|
color: var(--bg);
|
|
font-weight: 500;
|
|
text-decoration: none;
|
|
translate: 0 -200%;
|
|
transition: translate 0.2s;
|
|
|
|
&:focus {
|
|
translate: none;
|
|
}
|
|
}
|
|
}
|