/* Estilos globales de Asociación Plaza Mayor. */
.elementor-widget-container > :last-child {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Conservar el espacio del grid hasta haber medido las fuentes y el contenido. */
.gridTarjetasAltura:not(.apm-grid-heights-ready) {
    visibility: hidden;
}

.gridTarjetasAltura .elementor-icon-box-title,
.gridTarjetasAltura .e-loop-item .elementor-widget-theme-post-title .elementor-heading-title {
    box-sizing: border-box;
    min-height: var(--apm-grid-title-height, 0px) !important;
}

.gridTarjetasAltura .elementor-icon-box-description,
.gridTarjetasAltura .e-loop-item .elementor-widget-theme-post-excerpt > .elementor-widget-container {
    box-sizing: border-box;
    min-height: var(--apm-grid-description-height, 0px) !important;
}

/* Mantener la última palabra y los puntos suspensivos en la misma línea. */
.elementor-widget-theme-post-excerpt .apm-excerpt-tail {
    white-space: nowrap;
}

/* FAQ: dos columnas sin estirar las preguntas al alto de su vecina. */
.FaQ .e-n-accordion {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--apm-faq-gap, 20px);
    align-items: start;
    grid-auto-rows: var(--apm-faq-slot-height, auto);
}

.FaQ .e-n-accordion > .e-n-accordion-item {
    min-width: 0;
    align-self: start;
    margin-block-end: 0 !important;
}

.FaQ .e-n-accordion-item[open]:not(.apm-faq-measure-closed) > .e-n-accordion-item-title {
    border-bottom-width: 0 !important;
    border-bottom-left-radius: 0 !important;
    border-bottom-right-radius: 0 !important;
    padding-bottom: 20px !important;
    margin-block-end: 0 !important;
}

.FaQ .e-n-accordion-item[open] > .e-con {
    border-top-width: 0 !important;
    border-top-left-radius: 0 !important;
    border-top-right-radius: 0 !important;
    margin-block-start: 0 !important;
}

/* El contorno acompaña al alto animado, sin cortarse con la respuesta. */
.FaQ .e-n-accordion-item.apm-faq-card {
    position: relative;
    border-radius: var(--apm-faq-card-radius, 0px);
}

.FaQ .apm-faq-card::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 2;
    box-sizing: border-box;
    border-top: var(--apm-faq-card-border-top, 0);
    border-right: var(--apm-faq-card-border-right, 0);
    border-bottom: var(--apm-faq-card-border-bottom, 0);
    border-left: var(--apm-faq-card-border-left, 0);
    border-radius: inherit;
    pointer-events: none;
}

.FaQ .apm-faq-card > .e-n-accordion-item-title,
.FaQ .apm-faq-card > .e-con {
    border-color: transparent !important;
}

.FaQ .apm-faq-card > .e-n-accordion-item-title {
    align-items: flex-start;
}

.FaQ .apm-faq-card > .e-n-accordion-item-title > .e-n-accordion-item-title-header {
    min-height: var(--apm-faq-title-text-height, 0px);
    align-items: flex-start;
}

.FaQ .apm-faq-card > .e-con {
    min-height: var(--apm-faq-answer-height, 0px) !important;
    justify-content: flex-start !important;
}

.FaQ .e-n-accordion.apm-faq-measuring {
    position: absolute !important;
    top: 0;
    left: 0;
    visibility: hidden !important;
    pointer-events: none;
    grid-auto-rows: auto;
}

@media (max-width: 767px) {
    .FaQ .e-n-accordion {
        grid-template-columns: minmax(0, 1fr);
    }
}

