body {
    font-family: "SN Pro", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    color: #000000;
    background-color: #e5e8fc;
}

.visualization-container {
    display: block;
    margin: auto;
    aspect-ratio: 3 / 2; 
    width: 50%;
}

.visualization {
    width: 100%;
    height: 100%;
}

.column {
    width: 60%;
    margin: auto;
    display: block;
    padding: 1%;
}

p {
    width: 80%;
    margin: auto;
    padding-top: 1%;
    padding-bottom: 1%;
}

.caption {
    width: 50%;
}

img {
    width: 30%;
    margin-left: 35%;
}

@media screen and (max-width: 2000px) {
    .visualization-container {
        width: 50%;
    }
}

@media screen and (max-width: 1680px) {
    .column {
        width: 70%;
    }

    .visualization-container {
        width: 65%;
    }
}

@media screen and (orientation: portrait) and (max-width: 1280px) {
    .column {
        width: 95%;
    }

    p {
        width: 100%;
    }

    img {
        width: 80%;
        margin-left: 10%;
    }

    p.caption {
        width: 85%;
    }
}

@media screen and (orientation: portrait) and (max-width: 736px) {
    .column {
        width: 98%;
    }

    img {
        width: 95%;
        margin-left: 2.5%;
    }

    p.caption {
        width: 95%;
    }

    .disc-title {
        width: 98%;
        font-weight: bold;
        font-size: large;
    }

    .visualization-container {
        width: 95%;
    }
}