* {
    box-sizing: border-box;
}
body {
    max-width: 1920px;
    margin-inline: auto;
    margin-block: 0;
    color: light-dark(black, white);
    background: light-dark(#fcffff, rgb(28, 27, 34));
    font-size: calc(clamp(16px, 4vw, 20px));
    font-family: sans-serif;
}
iframe {
    width: 100%;
    background: light-dark(white, black);
    border: 2px solid transparent;
    border-radius: 10px;
    box-shadow: 0px 0px 16px light-dark(#d2d2d2, black);
}
h2 {
    font-weight: bold;
    font-size: clamp(2rem, 11.25vw, 40px);
    line-height: 0.95;
    color: light-dark(rgb(54, 135, 174), rgb(245, 238, 182));
    font-family: sans-serif;
    text-align: center;
}
b {
    font-style: italic;
}

body > header, body > footer {
    color-scheme: dark;
    color: light-dark(black, white);
    background: light-dark(#f0f0f0, #333);
    font-family: sans;
    font-weight: bold;
}

.display {
    font-weight: bold;
    font-size: clamp(2rem, 11.25vw, 72px);
    line-height: 0.95;
    color: light-dark(rgb(54, 135, 174), rgb(245, 238, 182));
    font-family: sans-serif;
}
.display-copy {
    font-family: 'Times New Roman', Times, serif;
    font-size: 24px;
}
            
@media (width < 640px) {
    .display:has(br) {
        width: min-content;
        margin-inline: auto;
    }
}
@media (width >= 900px) {
    .two-col {
        display: flex;
        justify-content: center;
        gap: 6rem;
        margin-block: 5rem;
        max-width: calc(100% - 4rem);
        margin-inline: auto;
    }
    .two-col div *:first-child {
        margin-top: 0;
    }
    .two-col p:has(img) {
        max-width: min(28rem, 100% - 4rem);
    }
    .two-col p:has(img), img {
        margin-block: 0;
    }
    .two-col div {
        max-width: 35rem;
    }
}
@media (width < 900px) {
    .two-col {
        margin-inline: auto;
        max-width: min(100% - 4rem, 640px);
    }
}
.alt-section {
    background: light-dark(#f4f7ff, rgb(42, 40, 51));
    padding-block: 5rem;
    border-block: 1px solid #bbb;
}
hgroup h2.display {
    margin: 0;
}
main hgroup p {
    text-align: center;
}
img {
    display: block;
    width: 100%;
    height: auto;
    max-width: 100%;
    object-fit: scale-down;
}
img.filled-img { 
    border-radius: 10px;
    box-shadow: 0px 0px 16px light-dark(#d2d2d2, black);
    
}
footer {
    padding-block: 4rem;
}
footer p, footer li, footer dt, footer dd {
    font-size: 18px;
    text-align: center;
    margin-inline: auto;
}
.wide-col {
    width: min(1104px, 100%);
    margin-inline: calc((100% - min(1104px, 100%)) / 2);
}

.reading-col {
    box-sizing: content-box;
    max-width: 640px;
    margin-inline: auto;
    padding: 1rem;
    line-height: 1.75;
    padding-block: 5rem;
}
.reading-col h2:first-child {
    margin-top: 0;
    margin-bottom: 4rem;
}