/*
 * MDS - WPBakery FAQ Item
 * Version 1.0.0
 * Completely plugin-specific class namespace: mdsfaq-
 */

.mdsfaq-item,
#Content .mdsfaq-item {
    box-sizing: border-box;
    width: 100%;
    margin: 0 0 12px;
    padding: 0;
    overflow: hidden;
    background: var(--cem-bg-alt, rgb(244, 250, 252));
    border: 1px solid var(--cem-divider, rgba(0, 151, 178, 0.2));
    border-radius: 12px;
}

.mdsfaq-item:last-child,
#Content .mdsfaq-item:last-child {
    margin-bottom: 0;
}

/* Remove the browser's default disclosure marker. */
.mdsfaq-item__summary,
#Content .mdsfaq-item__summary {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    width: 100%;
    padding: 18px 22px;
    margin: 0;
    cursor: pointer;
    list-style: none;
}

.mdsfaq-item__summary::-webkit-details-marker {
    display: none;
}

.mdsfaq-item__summary::marker {
    display: none;
    content: '';
}

.mdsfaq-item__question,
#Content .mdsfaq-item__question {
    min-width: 0;
    font-family: var(--cem-font-head, 'Libre Baskerville', Georgia, 'Times New Roman', serif);
    font-weight: 700;
    font-size: 17px;
    line-height: 1.4;
    color: var(--cem-ink, rgb(0, 98, 118));
}

.mdsfaq-item__icon,
#Content .mdsfaq-item__icon {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin: 0;
    padding: 0;
    overflow: visible;
    stroke: var(--cem-teal, rgb(0, 151, 178));
    stroke-width: 2.4;
    stroke-linecap: round;
    transition: transform 0.18s ease;
}

/* Open state: rotate the + into an ×, matching the supplied design. */
.mdsfaq-item[open] .mdsfaq-item__icon,
#Content .mdsfaq-item[open] .mdsfaq-item__icon {
    transform: rotate(45deg);
}

.mdsfaq-item__answer,
#Content .mdsfaq-item__answer {
    box-sizing: border-box;
    margin: 0;
    padding: 0 22px 20px;
    font-family: var(--cem-font-body, system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif);
    font-size: 16.5px;
    line-height: 1.7;
    color: var(--cem-body, rgb(65, 75, 74));
}

.mdsfaq-item__answer p,
#Content .mdsfaq-item__answer p {
    margin: 0;
    line-height: 1.7;
    color: inherit;
}

.mdsfaq-item__answer p + p,
#Content .mdsfaq-item__answer p + p {
    margin-top: 1em;
}

/* Keep links inheriting the site's normal link treatment without forcing strong styles. */
.mdsfaq-item__answer a,
#Content .mdsfaq-item__answer a {
    text-underline-offset: 2px;
}

.mdsfaq-item__summary:focus-visible,
#Content .mdsfaq-item__summary:focus-visible {
    outline: 2px solid var(--cem-teal, rgb(0, 151, 178));
    outline-offset: -3px;
    border-radius: 10px;
}

@media (max-width: 767px) {
    .mdsfaq-item__summary,
    #Content .mdsfaq-item__summary {
        padding: 17px 18px;
    }

    .mdsfaq-item__answer,
    #Content .mdsfaq-item__answer {
        padding: 0 18px 18px;
    }
}
