#header {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--primary);
    padding: 4rem 5rem;
    a.btn {
        max-width: 20rem;
    }
    > div {
        flex: 0 1 40rem;
    }
    img {
        flex: 0 1 40rem;
        max-width: 40rem;
        mask-image: radial-gradient(
            ellipse at center,
            black 60%,
            transparent 70%,
            transparent 100%
        );
    }
    h2 {
        font-size: 4rem;
        margin: 0 0 1rem 0;
    }
}

#features {
    padding: 0 5rem;
    > h2 {
        text-align: center;
        font-size: 3rem;
        font-family: 'Roboto-Medium';
        margin: 4rem 0;
    }
    > div {
        display: grid;
        grid-template: "c a" auto "c b" auto;
        align-items: center;
        justify-content: center;
        margin: 5rem 0;
        gap: 0 2rem;
        &:first-of-type {
            margin-top: 0;
        }
        &:nth-child(2n) {
            grid-template: "a c" auto "b c" auto;
        }
        .images-container {
            grid-area: c;
        }
        > img {
            grid-area: c;
            min-width: 0;
            max-width: 60rem;
            align-self: center;
            justify-self: stretch;
        }
        h3 {
            max-width: 35rem;
            font-family: 'Roboto-Medium';
            font-size: 1.5rem;
            align-self: end;
        }
        > div:first-of-type {
            max-width: 35rem;
            align-self: start;
        }
    }
}

@media (max-width: 1024px) {
    #header {
        position: relative; /* Weird but to make navbar relative positioned elements show behind */
        background-color: var(--primary);
        padding: 2rem 1rem 2rem;
        flex-direction: column-reverse;
        > div {
            background-color: var(--primary);
            flex: none;
        }
        h2 {
            padding-top: 2rem;
            font-size: 2.5rem;
        }
        img {
            flex: none;
            max-width: 100%;
        }
    }
    #features {
        padding: 1rem;
        > h2 {
            font-size: 2.5rem;
        }
        > div {
            grid-template: "a" "c" "b" !important;
            margin: 2rem 0;
            > h3 {
                justify-self: center;
                text-align: center;
            }
            > img {
                min-width: 0;
                max-width: 100%;
                align-self: center;
            }
            > div:first-of-type {
                padding: 1rem 0;
                justify-self: center;
                align-self: center;
            }
        }
    }
}
