.project-content {
    width: 100%;
    height: auto;
    margin-top: 19rem;
    font-size: 1.2em;
}

.project-text {
    width: 100%;
    height: auto;
    margin-bottom: 5em;
}

.project-image {
    width: 100%;
    height: auto;
    margin-bottom: 5em;
}

.project-image-content {
    width: 100%;
}

.project-information-right {
    width: 20vw;
    height: auto;
    position: fixed;
    right: 5vw;
    top: 20em;
}

.project-information-left {
    width: 20vw;
    height: auto;
    position: fixed;
    left: 5vw;
}

.info-window.results-window {
    min-width: 99%;
}

.project-year {
    font-size: 3em;
    margin-bottom: 2em;
    color: #DB2553;
}

.project-title {
    font-size: 3em;
    margin-bottom: 2em;
    color: #DB2553;
}

.red-bg {
    color: #DB2553;
}

.project-subtitle {
    font-size: 2em;
    margin-bottom: 1em;
    color: #DB2553;
}

.project-context {
    font-size: 1.3em;
    margin-bottom: 2em;
}


.project-metadata {
    font-size: 1.3em;
    margin-bottom: 0.2em;
}

.contact-window.alt {
    display: block;
    position: initial;
    margin-bottom: 10em;
}

.results-window {
    display: block;
    position: initial;
    margin-bottom: 5em;
    width: 100%;
}

.project-videos-grid {
    /* let browser create as many columns as fit, each at least 320px */
    column-width: 320px;
    column-gap: 1rem;
    width: 100%;
    box-sizing: border-box;
    /* keep visual order but pack tightly vertically */
}

.project-videos-grid .project-video {
    display: inline-block;            /* required for column layout */
    width: 100%;                      /* fill column width */
    margin: 0 0 1rem;                 /* vertical spacing between tiles */
    break-inside: avoid;              /* prevent splitting across columns */
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    object-fit: cover;
    border: solid 2px blue;
    border-radius: 6px;
    overflow: hidden;
}

.video-margin {
    padding-top: 3rem;
    padding-bottom: 3rem;
}

.additional-tiles {
    width: 100%;
    box-sizing: border-box;
    padding: 0;
    margin: 1rem 0 2rem 0;

    /* masonry-like columns, no gap */
    column-count: 2;
    column-gap: 0;
}

.additional-tiles > img {
    display: inline-block;               /* required for column layout */
    width: 100%;                         /* fill column width */
    margin: 0;                           /* remove any spacing */
    break-inside: avoid;                 /* keep each image as one tile */
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    object-fit: cover;
    height: auto;
    vertical-align: top;
    border-radius: 0;                    /* remove rounded corners if you want seamless tiles */
}

/* Allow some images to span both columns — add class="wide" to those <img> */
.additional-tiles > img.wide {
    display: block;
    width: 100%;
    column-span: all; /* modern browsers */
    -webkit-column-span: all;
    break-inside: avoid;
    margin: 0;
}


