@use "../base/mixins";

section.flexi-block.block--services-01 {
    .content {
        margin-bottom: 40px;
        max-width: 850px;
        text-align: center;

        h1, h2 {
            font-size: clamp(1.75rem, 4vw, 3rem);
            line-height: 1.125;
            margin: 0 auto clamp(18px, 4vw, 33px);
            max-width: 995px;
        }

        .eyebrow {
            color: var(--c-primary);
            font-size: clamp(.875rem, 4vw, 1.125rem) !important;
            margin-bottom: clamp(8px, 4vw, 12px) !important;
        }
    }

    .cards {
        --columns: 1;
        padding: 0;
        margin: 0;
        display: grid;
        gap: var(--site-gutter);
        grid-template-columns: repeat(var(--columns), 1fr);
    }

    .card {
        padding: 0;
        text-align: center;
        list-style: none;
        min-height: 100%;
        margin-bottom: 0;

        > a {

            width: 100%;
            height: 100%;
            display: flex;
            flex-direction: column;
            justify-content: space-between;
        }

        .card__link, .card__icon {
            margin-left: auto;
            margin-right: auto;
        }

        .card__icon {
            position: relative;
            width: 46px;
            height: 46px;
            margin-left: auto;
            margin-right: auto;

            margin-bottom: clamp(12px, 2vw, 22px);

            img {
                transition: .5s cubic-bezier(.25, 0, .3, 1);

                @include mixins.object-fit
            }
        }

        .card__excerpt {
            margin-top: clamp(18px, 2vw, 22px);
            margin-bottom: 0;
        }

        .button {
            margin-top: clamp(18px, 4vw, 34px);
        }

        &:hover {
            .card__icon img {
                scale: 1.1;
            }
        }
    }

    @include mixins.min-width(m) {
        .cards {
            --columns: 2;
        }
    }

    @include mixins.min-width(l) {
        .cards {
            --columns: 3;
        }
    }


}