@layer genr.component {
    .facts__background {
        background: var(--color-light-patrol);
    }

    .facts {
        max-width: 75rem;
        margin: 0 auto;
        padding: 4rem 1.5rem 4.5rem 1.5rem;
        color: var(--color-darker-green);
        display: flex;
        flex-direction: column;
        gap: 3rem;

        @media (width > 1280px) {
            padding: 7.5rem 0 8rem;
        }
    }

    .facts__container {
        max-width: 50rem;
        margin-left: auto;
        margin-right: auto;
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
    }

    .facts__intro {
        font-size: 1.125rem;
        line-height: 1.6;
    }

    .facts__list {
        display: grid;
        gap: 3rem;

        @media (max-width: 992px) {
            display: flex;
            flex-direction: column;
        }
    }

    .facts__list[data-layout="2"] {
        grid-template-columns: repeat(2, 1fr);
    }

    .facts__list[data-layout="3"] {
        grid-template-columns: repeat(3, 1fr);
    }

    .facts__list:has(> .facts__item:nth-child(2):last-child),
    .facts__list:has(> .facts__item:only-child) {
        display: flex;
        justify-content: center;
    }

    .facts__list:has(> .facts__item:nth-child(2):last-child) .facts__item,
    .facts__list:has(> .facts__item:only-child) .facts__item {
        max-width: 25rem;
        margin-left: 0;
        margin-right: 0;
    }

    .facts__item {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;

        @media (width > 576px) and (width <= 992px) {
            flex-direction: row;
        }
    }

    .facts__icon {
        width: 48px;
        height: 48px;
    }

    .facts__icon > svg {
        fill: var(--color-darker-green);
    }

    .facts__title {
        font-size: 1.375rem;
        font-weight: bold;

        @media (max-width: 992px) {
            font-size: 1.125rem;
        }
    }

    .facts__content {
        display: flex;
        flex-direction: column;
        gap: 0.5rem;
    }
}
