.container {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 200;
    display: flex;
    justify-content: center;
    padding: 2rem;

    @media screen and (orientation: portrait) {
        padding: 2rem 2rem 1rem;
    }

    &:hover .controls-container {
        [data-variant='subtle'] {
            color: var(--theme-colors-foreground);
            background: var(--theme-colors-surface);
            border: 1px solid transparent;

            &:hover,
            &:active,
            &:focus-visible {
                @mixin dark {
                    background: lighten(var(--theme-colors-surface), 5%);
                }

                @mixin light {
                    background: lighten(var(--theme-colors-surface), 5%);
                }
            }
        }
    }
}

.responsive-container {
    display: grid;
    grid-template-rows: minmax(0, 1fr);
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 2rem;
    width: 100%;
    max-width: 2560px;
    margin-top: 5rem;

    @media screen and (orientation: portrait) {
        grid-template-rows: minmax(0, 1fr) minmax(0, 1fr);
        grid-template-columns: minmax(0, 1fr);
        margin-top: 0;
    }
}

.background-image {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -2;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
}

.background-image-overlay {
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background: var(--theme-overlay-header);
    backdrop-filter: blur(var(--image-blur));
}
