/* FAQ accordion: used on faq.html and the Services page. Scoped to .wf-faq. */
.wf-faq{--faq-ink:#13243b;--faq-muted:#5e7087;--faq-line:#e5ebf3;--faq-blue:#2563eb;max-width:820px;border-top:1px solid var(--faq-line)}
.wf-faq-item{border-bottom:1px solid var(--faq-line)}
.wf-faq-q{margin:0}
.wf-faq-btn{all:unset;box-sizing:border-box;display:flex;width:100%;align-items:center;justify-content:space-between;gap:18px;padding:20px 4px;cursor:pointer;color:var(--faq-ink);font-weight:650;font-size:17px;line-height:1.4}
.wf-faq-btn:hover{color:var(--faq-blue)}
.wf-faq-btn:focus-visible{outline:3px solid #55bafa;outline-offset:2px;border-radius:6px}
.wf-faq-icon{flex:none;width:12px;height:12px;border-right:2px solid var(--faq-blue);border-bottom:2px solid var(--faq-blue);transform:rotate(45deg) translate(-2px,-2px);transition:transform .25s ease}
.wf-faq-btn[aria-expanded="true"] .wf-faq-icon{transform:rotate(225deg) translate(-2px,-2px)}
.wf-faq-panel{display:grid;grid-template-rows:1fr}
.wf-faq-panel>div{overflow:hidden}
.wf-faq-panel p{margin:0 0 20px;padding:0 4px;max-width:70ch;color:var(--faq-muted);line-height:1.7;font-size:15px}
/* Collapsed state only applies once faq.js has run, so the answers stay readable without JavaScript. */
.wf-faq.is-enhanced .wf-faq-panel{grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .3s ease,visibility 0s linear .3s}
.wf-faq.is-enhanced .wf-faq-panel.is-open{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .3s ease,visibility 0s}
.wf-faq-more{margin:22px 0 0}
.wf-faq-more a{font-weight:700;color:var(--faq-blue);text-decoration:none}
.wf-faq-more a:hover{text-decoration:underline}
.wf-faq-section{padding:64px 0 8px}
.wf-faq-section h2{font-size:clamp(24px,2.8vw,32px);letter-spacing:-1px;margin:0 0 6px;color:#13243b}
.wf-faq-section .wf-faq-lead{margin:0 0 22px;color:#5e7087}
.wf-faq-cta{margin-top:40px;padding:22px 0;border-top:1px solid #e5ebf3;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;max-width:820px}
.wf-faq-cta p{margin:0;color:#5e7087}
.wf-faq-cta strong{color:#13243b}
@media(max-width:680px){.wf-faq-btn{font-size:16px;padding:18px 2px}.wf-faq-section{padding-top:48px}}
@media(prefers-reduced-motion:reduce){.wf-faq-icon,.wf-faq.is-enhanced .wf-faq-panel,.wf-faq.is-enhanced .wf-faq-panel.is-open{transition:none}}
