.block-features {
    margin: 0;
    padding: var(--spacing-top) 0 var(--spacing-bottom) 0;
    position: relative;
    background: var(--bgcolor);

    h2 {
        font-size: clamp(28px,3.6vw,36px);
        line-height: 1.33;
        text-align: center;
    }

    ul {
        display: grid;
        grid-template-columns: repeat(2,1fr);
        padding: 0;
        margin-top: 48px;
        gap: 48px 24px;
    }

    figure {
        width: 24px;
        aspect-ratio: 1;
        margin-bottom: 16px;

        img {
            display: block;
            object-fit: cover;
            width: 100%;
            height: 100%;
        }
    }

    h3 {
        color: #171C21;
        font-size: clamp(18px,2vw,20px);
        line-height: 1.4;
    }

    p {
        color: #171C21;
        font-size: clamp(16px,1.6vw,18px);
        line-height: 1.5;
        margin: 8px 0;
    }

    a {
        --color: #24292E;
        --color-focus: #CA4A2B;


        font-size: clamp(16px,1.6vw,18px);
        text-decoration: 1px underline;
        text-underline-offset: 2px;
        font-weight: 800;
        color: var(--color);
        display: inline flex;
        align-items: center;
        position: relative;
        transition: all .3s ease-in-out;

        &::after {
            content: '';
            mask-image: var(--icon-chevron-light);
            mask-size: cover;
            background-color: var(--color);
            width: 24px;
            aspect-ratio: 1;
            display: block;
            transition: all .3s ease-in-out;
        }

        &:hover {
            --color: #CA4A2B;
            text-decoration: 1px underline;
            text-underline-offset: 2px;
        }

        &:focus-visible {
            &::before {
                content: '';    
                position: absolute;
                border: 2px solid var(--color-focus);
                border-radius: 6px;
                inset: 0;
                top: -6px;
                left: -12px;
                height: calc(100% + 12px);
                width: calc(100% + 16px);
            }
        }
    }

    .text {
        p:empty {
            content: none;
            display: none;
        }

        ul {
            list-style: disc;
            display: flex;
            flex-direction: column;
            gap: 8px;
            padding: 0 1em;
            margin: 0;

            li {
                list-style: disc;
                margin: 0;
            }
        }
    }

    @media screen and (min-width: 748px) {
        ul {
            grid-template-columns: repeat(3,1fr);
            gap: 64px 48px;
        }
        
    }

}