.project .left {
    width: 50%;
}

.project .left .title {
    margin: 0 0 3.2rem;
}

.project .left .editor {
	text-align: justify;
}

.project .left .awards {
    margin: 3.2rem 0 0;
}

.project .left .awards .image {
    width: 15.0rem;
    height: 15.0rem;
}

.project .right {
    width: 33.3333%;
}

.project .right svg {
    width: 3.2rem;
    height: 3.2rem;
    margin: 6.0rem 0 2.4rem;
}

.project .right .tag {
    padding: 0.8rem 1.6rem;
    border-radius: 6.0rem;
}

.project .right .title {
    margin: 6.0rem 0 2.4rem;
}

.project .right .title.no-margin,
.project .right .title:first-child {
    margin-top: 0;
}


.gallery a {
    width: calc(25% - 0.6rem);
    margin: 0 0.8rem 0.8rem 0;
    aspect-ratio: 4 / 3;
}

.gallery a .shadow {
    inset: 0;
    background: rgba(0,0,0, 0.32);
    transition: background 0.3s ease-out;
}

.gallery.mode-0 a:nth-child(4n+4) { margin-right: 0 }
.gallery.mode-1 a:nth-child(4n+1) { margin-right: 0 }
.gallery.mode-2 a:nth-child(4n+2) { margin-right: 0 }
.gallery.mode-3 a:nth-child(4n+3) { margin-right: 0 }

.gallery.mode-1 a:nth-child(1) {
    width: 100%;
    margin-right: 0;
    aspect-ratio: 16 / 6;
}

.gallery.mode-2 a:nth-child(1),
.gallery.mode-2 a:nth-child(2) {
    width: calc(50% - 0.4rem);
    aspect-ratio: 8 / 5;
}

.gallery.mode-3 a:nth-child(1),
.gallery.mode-3 a:nth-child(2),
.gallery.mode-3 a:nth-child(3) {
    width: calc(33.3333% - 0.53333rem);
    aspect-ratio: 6 / 4;
}



.contact {
    background: white;
}

.contact:after,
.contact:before {
    top: 0;
    width: calc(50% - 35rem);
    height: 100%;

    content: '';
    display: block;
    position: absolute;

    background: url(./images/pattern-02.png);
    background-size: auto 64rem;
    background-repeat: repeat;
}

.contact:after { left: 0; background-position: right center }
.contact:before { right: 0; background-position: left center }

.contact .title {
    text-align: center;
    margin-bottom: 4.8rem;
}


@media (max-width: 1100px) {
    .project .left,
    .project .right {
        width: 100%;
    }

    .project .left .btn {
        width: 26rem;
    }

    .project .left .btn > div:first-child {
        width: calc(100% - 1.6rem - 2rem);
    }

    .project .right {
        margin-top: 6rem;
    }

    .gallery {
        justify-content: space-between;
    }

    .gallery a {
        width: calc(50% - 0.4rem) !important;
        margin: 0 0 0.8rem;
    }

    .gallery a:first-child {
        width: 100% !important;
    }

    .partners .image {
        width: 14rem;
        height: 8rem;
    }
}


@media (any-hover: hover) {
    .gallery a:hover .shadow {
        background: rgba(0,0,0, 0);
    }
}
