/* Header */
.header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1
}

.header-logo {
    width: 8rem;
}

.header-nav {
    display: none;
    color: var(--secondaryColor);
}


/* Laptop */
@media screen and (min-width: 52rem) {
    .header {
        display: flex;
        justify-content: space-between;
    }

    .header-logo {
        width: 9rem;
    }

    .header-nav {
        display: flex;
        justify-content: flex-end;
    }

    .header-nav ul {
        display: flex;
    }

    .header-nav ul li {
        margin-left: 1rem;
    }
}

/* Desktop */
@media screen and (min-width: 100rem) {
    .header-logo {
        width: 10rem;
    }
}



/* Hero */
.hero {
    padding: 6rem 0 1rem;
    grid-gap: 1rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}

.hero-headline,
.hero-text,
.hero-image {
    grid-column: 1/-1;
}

.hero-image {
    max-height: 70vh;
    object-fit: cover;
}

.hero-headline,
.hero-text {
    padding: 0 1rem 1rem;
}

@media screen and (min-width: 52rem) {
    .hero {
        padding: 8rem 0 3rem;
        grid-gap: 3rem;
    }
    .hero-headline {
        grid-column: 2/-2;
    }

    .hero-text {
        grid-column: 2/9;
    }

    .hero-headline,
    .hero-text {
        padding: 0 1rem 2rem;
    }

    .hero-image {
        max-height: 80vh
    }
}

/* Project */
.project {
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}

.project-gallery,
.project-content {
    grid-gap: 1rem;
}

.project-header,
.project-content {
    padding: 1rem;
}
        
.project-header-category,
.project-header-title {
    grid-column: 1/-1;
}

.project-header-category {
    opacity: 0.5;
}

.project-gallery {
    padding: 0 1rem;
}

.project-gallery img {
    grid-column: span 2;
}

.project-gallery img.full {
    grid-column: span 4;
}

.project-content-description,
.project-content-specs {
    grid-column: 1/-1;
}

.project-content-description p {
    margin-bottom: 1em;
}

.project-content-specs {
    padding-left: 1.5rem
}

.project-content-specs li {
    margin-bottom: 1em;
}


@media screen and (min-width: 52rem) {
    .project-header,
    .project-gallery,
    .project-content {
        grid-gap: 1rem;
    }

    .project-header,
    .project-content {
        padding: 2rem 1rem;
    }

    .project-header-category {
        grid-column: 2/3;
        margin-top: 0.5em;
        min-width: min-content;
    }

    .project-header-title {
        grid-column: 3/-2;
    }

    .project-gallery img {
        grid-column: span 6;
        max-height: 80vh;
    }

    .project-gallery img.full {
        grid-column: span 12;
    }

    .project-content-description {
        grid-column: 2/8;
    }

    .project-content-specs {
        grid-column: 9/-2;
        padding-left: 0;
    }
}


/* Project Large */
.project-large {

}

.project-large-title,
.project-large-content {
    padding: 2rem 1rem;
}


.project-large-title h2,
.project-large-hero-description {
    grid-column: 1/-1;
}
/* Hero */
.project-large-hero {
    padding: 15vh 1rem;
    grid-row-gap: 2rem;
    background-image: var(--heroBackground);
    background-size: cover;
}

.project-large-hero-aside {
    grid-column: 1/-2;
    padding-left: 1rem;
}

.project-large-hero-cta {
    grid-column: 1/-1;
    display: flex;
    font-size: 1rem;
    line-height: 1em;
}

.project-large-hero-cta p {
    margin-right: 0.5rem;
    white-space: nowrap;
}

.slotmachine span {
    display: block;
    opacity: 0.5;
    transition: 200ms ease;
    white-space: nowrap;
}

.slotmachine span.active {
    opacity: 1;
}


/* Content */
.project-large-content {
    grid-row-gap: 2rem;
}

.project-large-content h3,
.project-large-content p {
    grid-column: 1/-1;
}

/* Gallery */
.project-large-gallery {
    padding: 1rem;
    grid-gap: 1rem;
}

.project-large-gallery img {
    grid-column: span 2;
}

.project-large-gallery img.full {
    grid-column: 1/-1;
}

/* Team */
.team {
    padding: 2rem 1rem;
    grid-row-gap: 2rem;
    background-color: #626269;
}

.team h2,
.team .person {
    grid-column: 1/-1;
}

.person {
    display: flex;
}

.person-portrait {
    margin-right: 1rem;
    width: 4rem;
    height: 4rem;
    object-fit: cover;
}

/* Desktop */
@media screen and (min-width: 52rem) {
    .project-large-title h2 {
        grid-column: 2/-2;
    }

    /* Hero */
    .project-large-hero {
        padding: 20vh 1rem;
        grid-row-gap: 15vh;
    }

    .project-large-hero-description {
        grid-column: 2/-5;
    }

    .project-large-hero-aside {
        grid-column: 10/-2;
    }

    .project-large-hero-cta {
        grid-column: 2/-4;
        font-size: 1.75rem;
        line-height: 1em;
    }

    /* Content */
    .project-large-content {
        padding: 3rem 1rem;
    }

    .project-large-content {
        grid-row-gap: 2rem;
    }

    .project-large-content h3 {
        grid-column: 2/5;
        padding-right: 2rem;
    }
    .project-large-content p {
        grid-column: 5/-3;
    }

    /* Gallery */
    .project-large-gallery img {
        grid-column: span 3;
    }

    .project-large-gallery img.full {
        grid-column: 1/-1;
    }


    /* Team */
    .team {
        padding: 2rem 1rem 3.5rem;
    }
    .team h2 {
        grid-column: 2/-4;
    }

    .team .person:nth-child(even) {
        grid-column: 2/6;
    }
    .team .person:nth-child(odd) {
        grid-column: 7/11;
    }

    .person span {
        opacity: 0.5;
    }

    .person-portrait {
        width: 5rem;
        height: 5rem;
    }
}

/* Footer */
.footer {
    color: white;
    padding: 3rem 1rem 1rem;
    display: grid;
}

/* Contacts */
.footer-contacts {
    grid-column: 1/-1;
    margin-bottom: 1rem;
}

.footer-contacts a {
    display: block;
}

.footer-contacts a:first-of-type {
    margin-top: 2em;
}

/* Partners */
.footer-partners {
    grid-column: 1/-1;
}

.footer-partners ul {
    display: flex;
    flex-wrap: wrap;
    margin-top: 2rem;
}

.footer-partners ul img {
    margin-right: 1rem;
}

.footer-partners ul li:first-of-type {
    min-width: 100%;
    max-width: 100%;
    padding-bottom: .25rem;
    border-bottom: 1px solid var(--primaryColor);
    margin-bottom: 2rem;
}

.footer-partners img {
    width: auto;
    height: fit-content;
    max-height: 1.75rem;
    max-width: 80vw;
    margin-bottom: 2.5rem;
}

/* Footnotes */
.footer-footnotes {
    grid-column: 1/-1;
    margin-top: 1rem;
}

/* Desktop Media Query */
@media screen and (min-width: 52rem) {
    .footer-contacts {
        grid-column: 2/6;
        margin-bottom: 3rem;
    }

    /* Partners */
    .footer-partners {
        grid-column: 2/-2;
    }

    .footer-partners ul {
        margin: 0 0 1rem;
        justify-content: flex-start;
    }

    .footer-partners ul img {
        margin-right: 2.5rem;
        height: 2rem;
        width: auto;
        max-width: 12rem;
    }

    /* Footnotes */
    .footer-footnotes {
        grid-column: 2/-2;
        display: flex;
    }

    .footer-footnotes p  {
        margin-right: 1rem
    }
}