.wf-faq-page { --faq-navy:#0b213a; --faq-blue:#18529c; --faq-red:#ef4444; --faq-line:#dce6f2; --faq-muted:#5f7085; --faq-sticky-offset:20px; background:#f6f9fc; color:var(--faq-navy); }
.wf-faq-page * { box-sizing:border-box; }
.wf-faq-hero { background:linear-gradient(135deg,#071f3c 0%,#0e427d 100%); color:#fff; overflow:hidden; padding:34px 0 54px; position:relative; }
.wf-faq-hero::after { background:radial-gradient(circle,rgba(255,255,255,.13) 0 2px,transparent 3px); background-size:24px 24px; content:""; inset:0 0 0 58%; opacity:.42; position:absolute; }
.wf-faq-hero .container { position:relative; z-index:1; }
.wf-faq-breadcrumb { align-items:center; color:#c6d7eb; display:flex; font-size:13px; gap:9px; margin-bottom:28px; }
.wf-faq-breadcrumb a { color:#fff; text-decoration:none; }
.wf-faq-hero-copy { max-width:760px; text-align:center; margin:0 auto; }
.wf-faq-eyebrow { align-items:center; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.2); border-radius:999px; display:inline-flex; font-size:12px; font-weight:700; gap:7px; margin-bottom:14px; padding:7px 12px; text-transform:uppercase; }
.wf-faq-eyebrow i { color:#75e6af; }
.wf-faq-hero h1 { color:#fff; font-size:clamp(34px,5vw,52px); font-weight:800; letter-spacing:-1.3px; line-height:1.1; margin:0 0 12px; }
.wf-faq-hero-copy p { color:#d8e6f5; font-size:17px; margin:0 auto 28px; }
.wf-faq-search-wrap { margin:0 auto; max-width:720px; }
.wf-faq-search-wrap>label { display:block; font-size:13px; font-weight:700; margin-bottom:7px; }
.wf-faq-search { align-items:center; background:#fff; border:1px solid rgba(255,255,255,.75); border-radius:12px; box-shadow:0 16px 36px rgba(0,0,0,.18); display:flex; min-height:58px; padding:0 16px; }
.wf-faq-search>i { color:#60758d; font-size:17px; }
.wf-faq-search input { background:transparent; border:0; color:var(--faq-navy); flex:1; font-size:15px; min-width:0; outline:0; padding:15px 13px; }
.wf-faq-search button { align-items:center; background:#edf3f9; border:0; border-radius:50%; color:#496079; cursor:pointer; display:flex; height:32px; justify-content:center; width:32px; }
.wf-faq-content-section { padding:54px 0 36px; }
.wf-faq-layout { align-items:start; display:grid; gap:34px; grid-template-columns:250px minmax(0,1fr); }
.wf-faq-aside { max-height:calc(100vh - var(--faq-sticky-offset) - 16px); overflow-y:auto; overscroll-behavior:contain; position:sticky; scrollbar-gutter:stable; top:var(--faq-sticky-offset); transition:top .15s ease; }
.wf-faq-aside h2 { font-size:14px; font-weight:800; margin:0 0 12px; text-transform:uppercase; }
.wf-faq-filters { display:flex; flex-direction:column; gap:6px; }
.wf-faq-filters button { align-items:center; background:transparent; border:1px solid transparent; border-radius:9px; color:#40546b; cursor:pointer; display:flex; font-size:13.5px; font-weight:650; justify-content:space-between; padding:10px 12px; text-align:left; transition:.2s ease; }
.wf-faq-filters button:hover { background:#fff; border-color:var(--faq-line); }
.wf-faq-filters button.active { background:#eaf2fb; border-color:#c8dcef; color:var(--faq-blue); }
.wf-faq-filters button span { background:#fff; border:1px solid #d8e4f0; border-radius:999px; font-size:11px; min-width:25px; padding:2px 6px; text-align:center; }
.wf-faq-trust-card { background:#fff; border:1px solid var(--faq-line); border-radius:11px; margin-top:20px; padding:16px; }
.wf-faq-trust-card>i { color:#149966; font-size:21px; margin-bottom:9px; }
.wf-faq-trust-card strong { display:block; font-size:14px; margin-bottom:4px; }
.wf-faq-trust-card p { color:var(--faq-muted); font-size:12.5px; line-height:1.5; margin:0; }
.wf-faq-section-head { align-items:end; display:flex; justify-content:space-between; margin-bottom:17px; }
.wf-faq-section-head span { color:var(--faq-blue); display:block; font-size:12px; font-weight:800; margin-bottom:5px; text-transform:uppercase; }
.wf-faq-section-head h2 { font-size:27px; font-weight:800; letter-spacing:-.4px; margin:0; }
.wf-faq-section-head>p { color:var(--faq-muted); font-size:12.5px; margin:0; }
.wf-faq-accordion { display:flex; flex-direction:column; gap:10px; max-width:none!important; margin:0!important; }
.wf-faq-card { background:#fff; border:1px solid var(--faq-line); border-radius:11px; box-shadow:0 5px 15px rgba(15,42,70,.035); overflow:hidden; scroll-margin-top:20px; }
.wf-faq-card[hidden] { display:none!important; }
.wf-faq-card h3 { font-size:inherit; margin:0; }
.wf-faq-card h3>button { align-items:center; background:#fff; border:0; color:var(--faq-navy); cursor:pointer; display:flex; font-size:15px; font-weight:750; gap:14px; justify-content:space-between; line-height:1.4; min-height:64px; padding:15px 17px 15px 20px; text-align:left; width:100%; }
.wf-faq-card h3>button:hover { background:#fbfdff; }
.wf-faq-card h3>button:focus-visible,.wf-faq-search input:focus-visible { outline:3px solid rgba(24,82,156,.28); outline-offset:-3px; }
.wf-faq-icon { align-items:center; background:#edf4fc; border-radius:50%; color:var(--faq-blue); display:flex; flex:0 0 32px; height:32px; justify-content:center; transition:transform .2s ease; width:32px; }
.wf-faq-card.open { border-color:#b9d1ea; box-shadow:0 8px 22px rgba(24,82,156,.08); }
.wf-faq-card.open .wf-faq-icon { background:var(--faq-blue); color:#fff; transform:rotate(45deg); }
.wf-faq-panel[hidden] { display:none!important; }
.wf-faq-answer { background:#f8fbff; border-top:1px solid #e4edf6; padding:17px 20px 19px; }
.wf-faq-answer p { color:#43576d; font-size:14px; line-height:1.7; margin:0; }
.wf-faq-answer-links { display:flex; flex-wrap:wrap; gap:8px 18px; margin-top:12px; }
.wf-faq-answer-links a { color:var(--faq-blue); font-size:13px; font-weight:750; text-decoration:none; }
.wf-faq-answer-links a:hover { text-decoration:underline; }
.wf-faq-empty { background:#fff; border:1px dashed #bfd0e2; border-radius:12px; padding:38px 20px; text-align:center; }
.wf-faq-empty i { color:#8da1b6; font-size:30px; }.wf-faq-empty h3 { font-size:18px; margin:12px 0 5px; }.wf-faq-empty p { color:var(--faq-muted); margin:0; }
.wf-faq-disclosure { align-items:center; background:#eef6ff; border:1px solid #cfe1f5; border-radius:11px; display:grid; gap:15px; grid-template-columns:auto 1fr auto; margin-top:20px; padding:16px 18px; }
.wf-faq-disclosure>i { color:var(--faq-blue); font-size:23px; }.wf-faq-disclosure strong { display:block; font-size:13.5px; margin-bottom:3px; }.wf-faq-disclosure p { color:#556a80; font-size:12.5px; line-height:1.5; margin:0; }.wf-faq-disclosure>a { color:var(--faq-blue); font-size:12.5px; font-weight:750; text-decoration:none; white-space:nowrap; }
.wf-faq-contact { align-items:center; background:linear-gradient(120deg,#fff 0%,#edf5fd 100%); border:1px solid var(--faq-line); border-radius:14px; display:flex; justify-content:space-between; margin-top:46px; padding:28px 32px; }
.wf-faq-contact span { color:var(--faq-red); font-size:12px; font-weight:800; text-transform:uppercase; }.wf-faq-contact h2 { font-size:24px; margin:4px 0 5px; }.wf-faq-contact p { color:var(--faq-muted); font-size:13.5px; margin:0; }
.wf-faq-contact-actions { display:flex; gap:10px; }.wf-faq-btn { align-items:center; border-radius:8px; display:inline-flex; font-size:13px; font-weight:750; gap:8px; justify-content:center; min-height:44px; padding:10px 16px; text-decoration:none; }.wf-faq-btn.primary { background:var(--faq-blue); color:#fff; }.wf-faq-btn.secondary { background:#fff; border:1px solid #cbd9e8; color:var(--faq-navy); }
.wf-faq-reviewed { color:#718196; font-size:11.5px; margin:16px auto 0; text-align:center; }
@media (max-width:991px) { .wf-faq-layout { grid-template-columns:1fr; }.wf-faq-aside { position:static; }.wf-faq-aside h2,.wf-faq-trust-card { display:none; }.wf-faq-filters { flex-direction:row; margin:0 -2px; overflow-x:auto; padding:2px 2px 8px; scrollbar-width:thin; }.wf-faq-filters button { flex:0 0 auto; }.wf-faq-contact { align-items:flex-start; flex-direction:column; gap:18px; } }
@media (max-width:640px) { .wf-faq-hero { padding:24px 0 38px; }.wf-faq-breadcrumb { margin-bottom:22px; }.wf-faq-hero-copy p { font-size:14px; }.wf-faq-search { min-height:52px; }.wf-faq-content-section { padding:34px 0 28px; }.wf-faq-layout { gap:22px; }.wf-faq-section-head { align-items:flex-start; }.wf-faq-section-head h2 { font-size:22px; }.wf-faq-section-head>p { padding-top:5px; }.wf-faq-card h3>button { font-size:14px; min-height:58px; padding:13px 13px 13px 15px; }.wf-faq-icon { flex-basis:28px; height:28px; width:28px; }.wf-faq-answer { padding:14px 15px 16px; }.wf-faq-disclosure { align-items:start; grid-template-columns:auto 1fr; }.wf-faq-disclosure>a { grid-column:2; }.wf-faq-contact { margin-top:32px; padding:22px 18px; }.wf-faq-contact-actions { flex-direction:column; width:100%; }.wf-faq-btn { width:100%; } }
@media (prefers-reduced-motion:reduce) { .wf-faq-page * { scroll-behavior:auto!important; transition:none!important; } }
