.greenbox-faq-native {
    display: grid;
    grid-template-columns: minmax(0, max-content);
    justify-content: center;
    background: #e8f2ec;
    padding: clamp(40px, 6vw, 90px) clamp(20px, 4vw, 48px);
    margin: 48px auto;
    max-width: 1320px;
    text-align: left;
    overflow-wrap: anywhere;
    scroll-margin-top: 110px;
}

.greenbox-faq-native h2 {
    font-family: 'Space Grotesk', sans-serif;
    font-size: clamp(28px, 4vw, 40px);
    line-height: 1.1;
    color: #000;
    margin: 0 0 24px;
}

.greenbox-faq-native .greenbox-faq-label { color: #718e2f; font-weight: 700; margin: 0 0 12px; }
.greenbox-faq-native .greenbox-faq-item { border-bottom: 1px solid #c9d8cd; text-align: left; contain: inline-size; }
.greenbox-faq-native summary {
    cursor: pointer;
    min-height: 48px;
    padding: 14px 4px;
    display: flex;
    align-items: center;
    gap: 10px;
    color: #285a3d;
    list-style: none;
}
.greenbox-faq-native summary::-webkit-details-marker { display: none; }
.greenbox-faq-native summary::before { content: '+'; font-size: 20px; font-weight: 700; flex: none; }
.greenbox-faq-native details[open] summary::before { content: '−'; }
.greenbox-faq-native summary:focus-visible { outline: 3px solid #235b3d; outline-offset: 2px; }
.greenbox-faq-native summary h3 { font-size: 16px; line-height: 1.4; font-weight: 700; color: inherit; margin: 0; text-align: left; }
.greenbox-faq-native .greenbox-faq-answer { color: #222; text-align: left; padding: 0 4px 16px 24px; }
.greenbox-faq-native .greenbox-faq-answer p { margin: 0; text-align: left; }

.greenbox-faq > .elementor-container > .elementor-column > .elementor-widget-wrap:has(> .elementor-widget-heading):has(> .elementor-widget-greenbox-faq) {
    display: grid;
    grid-template-columns: minmax(0, max-content);
    width: fit-content;
    max-width: 100%;
    margin-inline: auto;
}

/* Size the column from the heading, so longer answers do not extend the dividers. */
.greenbox-faq > .elementor-container > .elementor-column > .elementor-widget-wrap:has(> .elementor-widget-heading) > .elementor-widget-greenbox-faq {
    contain: inline-size;
}

.gbfaq-video { margin-top: 1em; width: 100%; }
.gbfaq-video iframe, .gbfaq-video video { display: block; width: 100%; height: auto; border: 0; }
.gbfaq-video iframe { aspect-ratio: 16 / 9; }

