﻿.block__header {
    position: relative;
}

.block__header--minimal {
    height: var(--nav-height);
    background-image: var(--gradient-orange);
}

.header__image {
    background-color: var(--black);
    position: relative;
}

    .header__image:before,
    .header__image:after {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
    }

    .header__image:before {
        background-image: url(/images/header-fade.png);
        background-position: 50% 0;
        background-size: cover;
        background-repeat: no-repeat;
    }

    .header__image:after {
        background-image: url(/images/header-figures.svg);
        background-size: auto 80%;
        background-position: 100% 0;
        background-repeat: no-repeat;
    }

    .header__image img {
        width: 100%;
        height: auto;
        max-height: 67rem;
    }

.block__header--small .header__image,
.block__header--small .header__image img {
    max-height: 35rem;
}

.header__text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding-top: var(--nav-height);
    color: var(--white);
}

.header__text .container {
    height: 100%;
    display: flex;
    flex-flow: column;
    justify-content: center;
}

    .header__text .container .col {
        max-width: 85rem;
        margin-left: 0;
        display: flex;
        flex-flow: column;
        align-items: flex-start;
        gap: 3rem;
    }

.header__text h1 {
    color: var(--white);
}

.header__text p {
    margin-bottom: 0;
}

@media(max-width: 1023px) {
    .block__header:after {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background-color: #000;
        opacity: .4;
        z-index: 1;
    }

    .header__image:before {
        background-size: 150% 100%;
        z-index: 2;
    }

    .header__image:after {
        background-size: auto 50%;
        z-index: 3;
    }

    .header__image img {
        height: 90vh;
        min-height: 90vh;
        max-height: 90vh;
        object-position: 60% 50%;
    }

    .header__text {
        z-index: 4;
    }

    .header__text .col {
        height: 100%;
        justify-content: flex-end;
        padding-bottom: 4rem;
    }

    .header__text h1 {
        font-size: var(--fontsize-header-lg);
    }

    .block__header--small .header__image,
    .block__header--small .header__image img {
        min-height: 15rem;
        max-height: 15rem;
    }
}