header:not(.maintenance-header) {
    position: sticky;
    width: 100dvw;
    background-color: var(--color-white);
    z-index: 20;
    top: 0;

    nav {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 24px 5vw 8px;
    }

    .nav-logo img {
        height: 48px;
        image-rendering: crisp-edges;
        margin: 0.25em;
    }

    ul {
        padding: 0;
        margin: 0;
        list-style: none;
    }

    .menu {
        display: flex;
        gap: 1em;

        li {
            padding: .5em;
            position: relative;

            ul {
                margin-top: .5em;
                margin-left: -.5em;
                position: absolute;
                height: 0;
                white-space: nowrap;
                overflow: hidden;
                transition: height .3s ease;
            }

            .open.menu ul {
                position: absolute;
            }

            &:hover {
                ul {
                    height: fit-content;
                }
            }
        }
    }

    .mobile-toggle {
        width: 2em;
        height: 2em;
        display: none;
        cursor: pointer;
        position: relative;
        z-index: 10;
        color: var(--color-black);
        background-color: transparent;
        border: none;

        .close-icon,
        .menu-icon {
            width: 100%;
            height: 100%;
            display: none;
        }

        .menu-icon {
            display: inline;
        }
    }

    .social-links {
        display: none;
    }

    @media screen and (max-width: 768px) {
        .mobile-toggle {
            display: block;
        }

        .social-links {
            display: block;
        }

        #main-menu-container {
            position: fixed;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            inset: 0;
            background-color: var(--color-brand);
            z-index: 5;

            .menu {
                flex-direction: column;
                text-align: center;
                gap: 0;
                margin-bottom: 1em;

                a {
                    color: var(--color-white);

                    &:hover {
                        color: var(--color-accent);
                    }
                }
            }

            ul {
                position: relative;
                height: fit-content;
                margin: 1em -1em 0;

                a {
                    font-size: 1.2em;
                    line-height: 2em;


                }
            }

            &:not(.open) {
                display: none;
            }

            &.open+.mobile-toggle {
                position: fixed;
                right: 5%;
                color: var(--color-white);

                .close-icon {
                    display: inline;
                }

                .menu-icon {
                    display: none;
                }
            }
        }
    }
}

.hero {
    /* background-color: var(--color-brand); */
    display: grid;
    grid-template:
        "img headline headline" 25vh
        "img subtitle cta" 25vh / 50% 25% 25%;


    * {
        padding: 1em;
        display: flex;
        justify-content: center;
        align-items: center;
        text-align: center;
    }


    .img {
        grid-area: img;
    }

    .headline {
        grid-area: headline;
    }

    .subtitle {
        grid-area: subtitle;
    }

    .cta {
        grid-area: cta;
    }
}