    html {
        font-size: 14px;
    }

    body {
        margin: 0;
        padding: 0;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        font-family: monospace;
    }

    body>* {
        max-width: 700px;
        width: 100%;
    }

    .subtitle {
        color: grey;
    }

    .two-columns {
        display: flex;
        justify-content: space-between;
        gap: 20px;
        flex-wrap: wrap;
    }

    .two-columns .column {
        flex: 1;
        min-width: 0;
    }

    .useful-links ul {
        list-style: none;
        line-height: 1.5;
    }

    h2 {
        margin-bottom: 0.25em;
    }

    h3 {
        margin-bottom: 0.1em;
    }

    figure {
        margin: 0;
        padding: 0;
        text-align: right;
    }

    iframe {
        display: block;
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 9;
        border: none;
    }

    .classes-list ul,
    .deliverables-list ul {
        list-style: none;
        padding-left: 1em;
    }

    .interaction-station {
        position: relative;
        overflow: hidden;
        width: 100%;
        height: 300px;
        cursor: pointer;
        border: 2px solid #555;
    }

    .interaction-station img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        transform: scale(8) translateY(-10%) translateX(-7%);
        transition: transform 1s ease;
    }

    .interaction-station:hover img {
        object-fit: contain;
        transform: scale(1);
    }