.block-servicios {
    display: flex;
    padding-top: 100px;
    padding-bottom: 100px;
    flex-direction: column;
    align-items: center;
    gap: 46px;
}

.block-servicios.dark {
    background-color: var(--wp--custom--opensalud--servicios--dark, #E4E4E4);
}

.block-servicios.light {
    background-color: var(--wp--custom--opensalud--servicios--light, #EEEEEE);
}

.block-servicios.white {
    background-color: var(--wp--preset--color--white, #FFFFFF);
}

.block-servicios.blue {
    background-color: var(--wp--preset--color--main--blue, #3238C4);
}

.inner-servicios {
    display: flex;
    flex-direction: column;
    row-gap: 46px;
    width: 100%;
    max-width: 1200px;
}

.servicios-header {
    display: flex;
    flex-direction: column;
    text-align: center;
    row-gap: 20px;
}

.servicios-header h2 {
    margin: 0;
}

.servicios-header p {
    margin: 0;
}

.grid-servicios {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}

/* Gutenberg envuelve InnerBlocks en contenedores extra dentro del editor. */
.grid-servicios > .block-editor-inner-blocks {
    width: 100%;
}

.grid-servicios > .block-editor-inner-blocks > .block-editor-block-list__layout {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}


.grid-servicios > .block-editor-inner-blocks > .block-editor-block-list__layout > .wp-block {
    margin: 0;
    max-width: none;
    justify-self: center;
}

:where(.editor-styles-wrapper) .grid-servicios{
    display: flex;
    gap: 30px;
}
:where(.editor-styles-wrapper) .block-card.card-type_1 {
    text-align: center;
    width: 500px;
    height: 220px;
}

@media (max-width: 1024px) {
    .grid-servicios {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }

    .grid-servicios > .block-editor-inner-blocks > .block-editor-block-list__layout {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }

    .grid-servicios > .acf-innerblocks-container {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }
}

@media (max-width: 768px) {
    .block-servicios {
        padding: 50px 20px;
    }

    .grid-servicios {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .grid-servicios > .block-editor-inner-blocks > .block-editor-block-list__layout {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .grid-servicios > .acf-innerblocks-container {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}
