/* Shared visual parity for FAQ, tabs and testimonial slider. */
.testimonial-card,
.testimonial-card .testimonial-copy,
.testimonial-card .testimonial-copy h3,
.testimonial-card .testimonial-copy p,
.testimonial-card .testimonial-copy strong,
.testimonial-card .testimonial-copy small {
    color: #fff !important;
}
.testimonial-card .testimonial-copy p {
    color: rgba(255, 255, 255, 0.82) !important;
}
.testimonial-card .testimonial-copy small {
    color: rgba(255, 255, 255, 0.68) !important;
}
.testimonial-carousel .testimonial-track {
    align-items: stretch;
}
.testimonial-carousel .testimonial-card {
    flex: 0 0 calc((100% - 36px) / 3) !important;
    width: auto;
    max-width: none;
    box-sizing: border-box;
}
.testimonial-carousel.single-page .testimonial-controls button {
    opacity: 0.35;
    cursor: default;
}
.nested-accordion summary,
.nested-accordion details > div {
    box-sizing: border-box;
}
.nested-accordion details:first-child[open] {
    margin: 0;
}

/* The builder uses frame classes instead of the browser viewport width. */
.wb-canvas-frame.tablet .wb-public-component-preview .testimonial-card {
    flex-basis: calc((100% - 18px) / 2) !important;
}
.wb-canvas-frame.mobile .wb-public-component-preview .testimonial-card {
    flex-basis: 100% !important;
}
.wb-canvas-frame.tablet .wb-public-component-preview .testimonial-cover {
    height: 230px;
}
.wb-canvas-frame.mobile .wb-public-component-preview .testimonial-cover {
    height: 220px;
}
.wb-canvas-frame.tablet .wb-public-component-preview .tab-panel.active {
    grid-template-columns: minmax(0, 1fr) minmax(260px, 0.8fr);
    gap: 28px;
}
.wb-canvas-frame.mobile .wb-public-component-preview .tab-buttons {
    justify-content: flex-start;
    margin: 0;
    padding: 4px 0 16px;
    overflow-x: auto;
    max-width: 100%;
}
.wb-canvas-frame.mobile .wb-public-component-preview .tab-buttons button {
    min-width: 140px;
    flex: 0 0 auto;
}
.wb-canvas-frame.mobile .wb-public-component-preview .tab-panel.active {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
    padding-top: 18px;
    text-align: center;
    min-width: 0;
}
.wb-canvas-frame.mobile .wb-public-component-preview .tab-copy,
.wb-canvas-frame.mobile .wb-public-component-preview .tab-copy h3,
.wb-canvas-frame.mobile .wb-public-component-preview .tab-copy p {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow-wrap: normal;
    word-break: normal;
    white-space: normal;
}
.wb-canvas-frame.mobile .wb-public-component-preview .tab-copy h3 {
    font-size: 30px !important;
    line-height: 1.15 !important;
}
.wb-canvas-frame.mobile .wb-public-component-preview .tab-media {
    min-height: 230px;
}
.wb-canvas-frame.mobile .wb-nested-element:has(.wb-public-component-preview),
.wb-canvas-frame.mobile .wb-public-component-preview {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden;
}
@media (max-width: 991px) {
    .testimonial-carousel .testimonial-card {
        flex-basis: calc((100% - 18px) / 2) !important;
    }
}
@media (max-width: 700px) {
    .testimonial-carousel .testimonial-card {
        flex-basis: 100% !important;
    }
}
.nested-accordion.faq-style-minimal,
.nested-accordion.faq-style-minimal details,
.nested-accordion.faq-style-minimal details[open],
.nested-accordion.faq-style-minimal summary,
.nested-accordion.faq-style-minimal details > div {
    box-shadow: none !important;
    background: transparent !important;
    border-radius: 0 !important;
}
.nested-accordion.faq-style-minimal details {
    border-top: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-bottom: 1px solid #dde3ea !important;
}
