:root {
--background: white;
--text: #111;
--accent: var(--text);
}
body {
font-family: var(--sans-serif);
}
main {
max-inline-size: none;
padding: 0;
}
h1 {
font-family: var(--serif);
font-weight: normal;
}
.introduction {
--accent: #d62b00;
padding-block-end: 2em;
padding-inline: max(2em, calc(50vw - 70ch));
font-family: var(--serif);
font-size: 1.1rem;
& > * {
margin: auto;
}
& .previous-list {
text-align: center;
margin-block-end: 1em;
}
& p {
max-inline-size: 70ch;
}
}
.page-footer, .comment-section {
max-inline-size: 70ch;
margin: auto;
font-family: var(--serif);
}
.page-footer {
padding-block-start: 2em;
}
.awards {
display: grid;
grid-template-columns: 1fr 2.5fr;
grid-template-rows: auto auto;
padding-block: 2em;
padding-inline: max(2em, calc(50vw - 70ch));
column-gap: 1em;
background-color: navajowhite;
background-image: linear-gradient(to var(--bg-direction), var(--bg-translucent), var(--background) 30%), var(--bg-image);
@media (width < 750px) {
grid-template-columns: 1fr 1.5fr;
background-image: linear-gradient(to bottom, transparent, var(--bg-translucent) 5em, var(--background) 15em), var(--bg-image);
background-position: 0 0, top left !important;
background-size: auto, 100% auto !important;
}
@media (width < 425px) {
grid-template-columns: auto;
grid-template-rows: auto auto auto;
padding-block: 1em;
padding-inline: 0.5em;
}
@media (width >= 750px) {
&:nth-of-type(odd) {
grid-template-columns: 2.5fr 1fr;
& figure.model {
grid-column: 2 / 3;
}
}
}
& figure.model {
grid-row: 1 / 3;
block-size: auto;
inline-size: 100%;
@media (width < 750px) {
grid-column: 1 / 2;
grid-row: 1 / 2;
}
@media (width < 425px) {
inline-size: 60%;
margin: auto;
}
& model-viewer {
block-size: auto;
inline-size: 100%;
aspect-ratio: 1 / 1;
}
& figcaption {
inline-size: 80%;
margin-inline: auto;
padding-block: 0.3em;
color: var(--accent);
font-style: italic;
text-align: center;
text-wrap: balance;
background-color: var(--background);
border-radius: 0.5em;
@media (width < 750px) {
display: none;
}
}
}
& h3 {
margin-block: 0 1rem;
@media (width < 750px) {
grid-column: 2 / 3;
align-self: end;
padding: 0.25rem;
background-image: linear-gradient(to bottom, color-mix(in srgb, var(--background), transparent 40%), var(--background));
backdrop-filter: blur(0.25rem);
border-radius: 0.25rem;
box-shadow: 0 0.5ch 1ch #0002;
}
@media (width < 425px) {
grid-column: 1 / 2;
grid-row: 2 / 3;
}
& small {
display: block;
font-size: 1rem;
font-style: italic;
font-weight: normal;
}
& strong {
display: block;
color: var(--text);
font-size: 2.5rem;
font-weight: 900;
line-height: 1;
@media (width < 750px) {
font-size: 2rem;
}
& .artist {
font-weight: normal;
}
}
}
& .elaboration {
font-size: 1.1rem;
@media (width < 750px) {
grid-column: 1 / 3;
}
@media (width < 425px) {
grid-column: 1 / 2;
}
& p {
font-family: var(--serif);
}
& p:first-child {
margin-block-start: 0;
}
& p:last-child {
margin-block-end: 0;
}
& h4 {
font-variant-caps: all-small-caps;
letter-spacing: var(--caps-spacing);
}
& .dingus-list {
display: flex;
flex-wrap: wrap;
gap: 1em;
padding-inline-start: 0;
& .hon-mention {
display: grid;
grid-template-columns: 4em 1fr;
gap: 0.75em;
max-inline-size: 17.5em;
margin: 0;
padding: 1ch 1em;
background-image: linear-gradient(to bottom, #fff3, #fff1);
border-radius: 1em;
box-shadow: 0 0.5ch 1ch #0002;
& strong {
display: block;
line-height: 1.1;
}
& p {
margin-block-start: 0.3rem;
font-family: var(--sans-serif);
font-size: 0.9em;
}
}
}
& a.big-link {
display: inline-block;
padding-inline: 1em;
padding-block: 0.667em;
color: inherit;
font-family: var(--sans-serif);
font-size: 1.2em;
font-style: italic;
font-weight: bold;
text-decoration: none;
background-image: linear-gradient(to bottom, #fff3, #fff1);
border-radius: 1em;
box-shadow: 0 0.5ch 1ch #0002;
& strong {
margin-inline-end: 1ch;
}
&::after {
display: none;
}
}
}
}
#laurel {
--accent: #860d13;
--background: #e7a34e;
background-color: #e7a34e;
--bg-direction: right;
--bg-translucent: #e7a34e33;
--bg-image: url("/bestof/2025/caughtstealing-bg.jpg");
background-position: 0 0, top left;
background-size: auto, auto 100%;
}
#zoetrope {
--accent: #e4573a;
--background: #21251e;
--text: #f8f8f8;
color: #f8f8f8;
background-color: #21251e;
--bg-direction: left;
--bg-translucent: #21251e33;
--bg-image: url("/bestof/2025/itmom-bg.jpg");
background-position: 0 0, top right;
background-size: auto, auto 100%;
}
#catchup {
--accent: #618091;
--background: #080808;
--text: #f8f8f8;
color: #f8f8f8;
background-color: #080808;
--bg-direction: right;
--bg-translucent: #08080833;
--bg-image: url("/bestof/2025/nosferatu-bg.jpg");
background-position: 0 0, top left;
background-size: auto, auto 100%;
}
#pebbledash {
--accent: #41006c;
--background: #f1f0db;
background-color: #f1f0db;
--bg-direction: left;
--bg-translucent: #f1f0db33;
--bg-image: url("/bestof/2025/doau-bg.jpg");
background-position: 0 0, top right;
background-size: auto, auto 100%;
}
#ninajirachi {
--accent: #0a68e2;
--background: #ecf0f7;
background-color: #ecf0f7;
--bg-direction: right;
--bg-translucent: #ecf0f733;
--bg-image: url("/bestof/2025/ninajirachi-bg.jpg");
background-position: 0 0, top left;
background-size: auto, auto 100%;
}
#nin {
--accent: #8e2f11;
--background: #f4e6b7;
background-color: #f4e6b7;
--bg-direction: left;
--bg-translucent: #f4e6b733;
--bg-image: url("/bestof/2025/nin-bg.jpg");
background-position: 0 0, top right;
background-size: auto, auto 100%;
}
#control {
--accent: #e6615d;
--background: #4b161eff;
background-color: #4b161eff;
--text: #f8f8f8;
color: #f8f8f8;
--bg-direction: right;
--bg-translucent: #4b161e33;
--bg-image: url("/bestof/2025/control-bg.jpg");
background-position: 0 0, top left;
background-size: auto, auto 100%;
}
#telephone {
--accent: #1e7810;
--background: #fff;
background-color: #fff;
--bg-direction: left;
--bg-translucent: #fff3;
--bg-image: url("/bestof/2025/telephone-bg.jpg");
background-position: 0 0, top right;
background-size: auto, auto 100%;
}
#cabinet {
--accent: #2c56e1;
--background: #f4debf;
background-color: #f4debf;
--bg-direction: right;
--bg-translucent: #f4debf33;
--bg-image: url("/bestof/2025/cabinet-bg.jpg");
background-position: 0 0, top left;
background-size: auto, auto 100%;
}
#vibecode {
--accent: #85d493;
--background: #22212e;
background-color: #22212e;
--text: #f8f8f8;
color: #f8f8f8;
--bg-direction: left;
--bg-translucent: #22212e33;
--bg-image: url("/bestof/2025/vibecode-bg.jpg");
background-position: 0 0, top right;
background-size: auto, auto 100%;
}
#rijksmuseum {
--accent: #ffe3a9;
--background: #634845;
background-color: #634845;
--text: #f8f8f8;
color: #f8f8f8;
--bg-direction: right;
--bg-translucent: #63484533;
--bg-image: url("/bestof/2025/rijksmuseum-bg.jpg");
background-position: 0 0, top left;
background-size: auto, auto 100%;
}
#syria {
--accent: #b8a57b;
--background: #00332e;
background-color: #00332e;
--text: #f8f8f8;
color: #f8f8f8;
--bg-direction: left;
--bg-translucent: #00332e33;
--bg-image: url("/bestof/2025/syria-bg.jpg");
background-position: 0 0, top right;
background-size: auto, auto 100%;
}
@font-face {
font-family: "Junicode";
src: url("/fonts/JunicodeVF-Roman.woff2");
font-weight: 300 700;
font-stretch: 75% 125%;
font-style: normal;
}
@font-face {
font-family: "Junicode";
src: url("/fonts/JunicodeVF-Italic.woff2");
font-weight: 300 700;
font-stretch: 75% 125%;
font-style: italic;
}