/* Task 30038: product FAQ; native details/summary provide keyboard interaction. */
.stoco-product-faq {
    clear: both;
    margin-block: 28px 24px;
    max-width: 100%;
}
.stoco-product-faq > .h2 {
    margin: 0 0 18px;
    color: #242424;
    font-size: 24px;
    font-weight: 600;
    line-height: 1.3;
}
.stoco-product-faq__item {
    margin: 0 0 10px;
    border: 1px solid #222;
    border-radius: 3px;
    overflow: hidden;
}
.stoco-product-faq__question {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    min-height: 48px;
    padding: 12px 16px;
    background: #181818;
    color: #fff;
    cursor: pointer;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.45;
    list-style: none;
    overflow-wrap: anywhere;
}
.stoco-product-faq__question::-webkit-details-marker { display: none; }
.stoco-product-faq__question::marker { content: ""; }
.stoco-product-faq__question::after {
    content: "+";
    flex: 0 0 18px;
    text-align: center;
    font-size: 23px;
    font-weight: 400;
    line-height: 1;
}
.stoco-product-faq__item[open] > .stoco-product-faq__question::after { content: "−"; }
.stoco-product-faq__question:focus-visible {
    outline: 3px solid #64a63c;
    outline-offset: -4px;
}
.stoco-product-faq__answer {
    padding: 14px 16px;
    background: #fff;
    color: #111;
    overflow-wrap: anywhere;
}
.stoco-product-faq__paragraph {
    margin: 0;
    font-size: 15px;
    line-height: 1.65;
}
body:has(.stoco-product-faq details[open]) :is(.stoco-audit-fab, .socs-gif, .scrollToTop) {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}
@media (max-width: 767px) {
    .stoco-product-faq { margin-block: 24px 20px; }
    .stoco-product-faq > .h2 { font-size: 22px; }
    .stoco-product-faq__question { gap: 10px; padding: 12px; font-size: 15px; }
    .stoco-product-faq__answer { padding: 12px; }
    .stoco-product-faq__paragraph { font-size: 14px; }
}

/* Linked source anchors remain readable inside the flex summary label. */
.stoco-product-faq__question-text { min-width: 0; }
.stoco-product-faq__question a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.stoco-product-faq__paragraph a { color: #333; text-decoration: underline; text-underline-offset: 3px; }
.stoco-product-faq a:hover { text-decoration-thickness: 2px; }
.stoco-product-faq a:focus-visible { outline: 2px solid #64a63c; outline-offset: 2px; }
