/* Inhaltsverzeichnis */
.faq-toc {
    margin-bottom: 5rem;
    margin-left: 0;
    list-style: none;
    padding-left: 0;
	font-size: 14px;
}

.faq-toc li {
    margin-bottom: 0.25rem;
}

.faq-toc li a {
    text-decoration: none;
    color: inherit;
}

.faq-toc li a:hover {
    opacity: 0.8;
}

/* Allgemeine Sektionen */
.faq-sections {
    display: flex;
    flex-direction: column;
    gap: 4rem;
}

.faq-section {
    margin-bottom: 3rem;
}

.faq-section h3 {
    margin-bottom: 1.25rem;
}

/* Standardinhalt */
.faq-content {
    display: flex;
    flex-direction: column;
}

.faq-content p:last-child {
    margin-bottom: 1.5rem !important;
}

.faq-content .w-gallery.ratio_1x1.w-gallery-item {
	aspect-ratio: unset;
}

/* Zwei Spalten bei text-bild */
.faq-content.two-columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
}

@media (max-width: 1023px) {
    .faq-content.two-columns {
        display: block;
    }
    .faq-content.two-columns figure img {
        width: 100%;
    }
    .faq-content.two-columns .col:not(:first-child) {
        margin-top: 1.5rem;
    }
}

/* Figure-Bilder global */
.faq-content figure {
    margin: 0;
}

.faq-content figure img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* Gallery Overwrite */
.faq-content .wp_gallery {
    --items-gap: 1.5rem !important;
}

/* Spalten für text-spalten Layout */
.faq-columns {
    display: grid;
    gap: 1.5rem;
    grid-template-columns: repeat(1, 1fr);
}

@media (min-width: 769px) {
    .faq-columns {
        grid-template-columns: repeat(2, 1fr);
        gap: 3rem;
    }
}

@media (min-width: 1024px) {
    .faq-columns {
        grid-template-columns: repeat(4, 1fr);
    }
}

/* text-bild-bild Layout */
.faq-section.text-bild-bild .images {
    display: flex;
    gap: 3rem;
    flex-wrap: nowrap;
}

.faq-section.text-bild-bild .images figure {
    flex: 1 1 48%;
    margin: 0;
}

@media (max-width: 768px) {
    .faq-section.text-bild-bild .images {
        flex-direction: column;
        gap: 1.5rem;
    }

    .faq-section.text-bild-bild .images figure {
        flex: none;
        width: 100%;
    }
}

/* text-bild-bild-bild Layout – Bento-Stil */
.faq-section.text-bild-bild-bild .images img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Optional: feste Höhen, um Bento-Grid zu stabilisieren */
.faq-section.text-bild-bild-bild .images figure {
    height: 100%;
    overflow: hidden;
}

.faq-section.text-bild-bild-bild .images {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 1.5rem;
    grid-auto-rows: 1fr;
}

.faq-section.text-bild-bild-bild .images figure:nth-child(1) {
    grid-row: 1 / span 2;
}

@media (max-width: 768px) {
    .faq-section.text-bild-bild-bild .images {
        grid-template-columns: 1fr;
        grid-auto-rows: auto;
    }

    .faq-section.text-bild-bild-bild .images figure {
        height: auto;
    }
}

.hideWidgetTitle h2.jdgm-rev-widg__title {
    display: none;
}
