/* Call To Action - Bullets block */

.block-cta-bullets {
    --cta-bullets-gap: 30px;
    --cta-bullets-ratio: 3 / 2;
}

/* Carries the colour and the padding, full width of the block */
.block-cta-bullets__wrap {
    width: 100%;
    padding: var(--wp--preset--spacing--60) var(--wp--preset--spacing--50);
    background-color: var(--wp--preset--color--helder-blauw-licht);
}

/* The grid sits at the same measure as the other blocks */
.block-cta-bullets__inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: var(--cta-bullets-gap);
    align-items: center;
    width: 83%;
    max-width: var(--wp--style--global--wide-size);
    margin-inline: auto;
}

/* Content */

.block-cta-bullets__content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--cta-bullets-gap);
}

.block-cta-bullets__title {
    margin: 0;
    text-wrap: balance;
}

/* Bullets */

.block-cta-bullets__list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.block-cta-bullets__item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.block-cta-bullets__icon {
    display: flex;
    flex-shrink: 0;
}

.block-cta-bullets__icon svg {
    display: block;
}

/* Media */

.block-cta-bullets__media {
    min-height: 0;
    aspect-ratio: var(--cta-bullets-ratio);
    border-radius: var(--radius-06);
    overflow: hidden;
    /* Mobile: above the text. The markup keeps the text first, so the reading
       order is unchanged — only the visual order moves. */
    order: -1;
}

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

/* Team member — a portrait photo and an equally sized white panel, together
   forming one rounded shape. */

/* Two 3:4 halves side by side, so the whole card is 3:2. Holding that ratio on
   the element itself means it scales as one piece, and container-type lets what
   is inside scale with it rather than with the page. */
.block-cta-bullets__member {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    aspect-ratio: 3 / 2;
    container-type: inline-size;
    border-radius: var(--radius-06);
    overflow: hidden;
}

.block-cta-bullets__member-image {
    position: relative;
    min-height: 0;
    height: 100%;
    background-color: var(--wp--preset--color--helder-blauw);
}

.block-cta-bullets__member-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.block-cta-bullets__member-card {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 1cqw;
    height: 100%;
    /* Padding and type in container units: the card keeps its proportions as
       the element gets narrower, instead of the text staying put while the box
       shrinks around it. Clamped so it stays readable at either end. */
    padding: clamp(12px, 6cqw, var(--cta-bullets-gap));
    background-color: var(--wp--preset--color--white);
}

.block-cta-bullets__member-name {
    font-size: clamp(16px, 5cqw, 28px);
    line-height: 1.2;
}

.block-cta-bullets__member-role {
    font-size: clamp(13px, 3.4cqw, 18px);
    line-height: 1.3;
}

.block-cta-bullets__member-name,
.block-cta-bullets__member-role {
    margin: 0;
}

.block-cta-bullets__member-role {
    color: var(--wp--preset--color--warm-grijs-03);
}

/* Desktop */

@media (min-width: 782px) {
    .block-cta-bullets {
        --cta-bullets-gap: 50px;
    }

    .block-cta-bullets__inner {
        grid-template-columns: 1fr 1fr;
    }

    .block-cta-bullets__media {
        order: 0;
    }
}

/* Same breakpoint as the alignwide utility */
@media (max-width: 1049px) {
    .block-cta-bullets__inner {
        width: 100%;
    }
}
