.block-router{
    max-width: 100%;
    margin: var(--block-margin) 0;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    overflow: hidden;
}

.block-router-item{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.block-router-item.animate__animated{
    animation-name: fadeInUp;
}

.block-router-item:nth-child(1){
    position: relative;
    background-color: transparent;
    max-width: var(--wide-width);
    padding: var(--item-row-gap) var(--item-column-gap) var(--item-row-gap) var(--item-column-gap);
    margin: 0 auto;
}

.block-router-item:nth-child(1)::before{
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    width: 100vw;
    height: 100%;
    background-color: var(--color-white);
    z-index: -1;
}

.block-router-item:nth-child(n + 2){
    border: 0.1rem solid var(--color-black-50);
    padding: var(--item-row-gap) var(--item-column-gap);
    max-width: var(--wide-width);
    margin: var(--row-gap) auto 0;
}

.block-router-item .eyebrow{
    margin-bottom: 0.8rem;
}

.block-router-item h2{
    font: var(--font-headline-5);
}

.block-router-item:nth-child(1) h2{
    font: var(--font-headline-3);
    margin-bottom: calc(var(--item-row-gap) / 2);
}

.block-router-item p{
    margin-bottom: calc(var(--item-row-gap) / 2);
}

@media (min-width: 768px){
    .block-router{
        grid-template-columns: repeat(2, minmax(0, 1fr));
        grid-template-rows: repeat(2, minmax(0, 1fr));
    }


    .block-router-item:nth-child(1){
        grid-row: 1 / span 2;
        max-width: calc(var(--wide-width) / 2);
        margin: 0;
        justify-self: end;
        padding-left: 0;
    }

    .block-router-item:nth-child(1):last-child{
        grid-column: 1 / span 2;
        max-width: var(--wide-width);
        justify-self: center;
    }

    .block-router-item:nth-child(1).animate__animated{
        animation-name: fadeInLeft;
    }

    .block-router-item:nth-child(n + 2){
        margin: 0 auto 0 calc(var(--column-gap) / 2);
        max-width: calc((var(--wide-width) / 2) - (var(--column-gap) / 2));
    }

    .block-router-item:nth-child(n + 2).animate__animated{
        animation-name: fadeInRight;
    }

    .block-router-item:nth-child(2):last-child{
        grid-row: 1 / span 2;
    }

    .block-router-item:nth-child(2):not(:last-child){
        margin-bottom: calc(var(--row-gap) / 2);
    }
}