html { scroll-behavior: smooth; }
.faq-page { max-width: 1240px; }
.faq-heading h1 { margin-bottom: 10px; }
.faq-meta { font-size: .92rem; color: #bccbdb; }
.faq-layout { display: grid; grid-template-columns: minmax(0, 1fr) 280px; grid-template-areas: "body directory"; align-items: start; gap: 36px; margin-top: 28px; }
.faq-body { grid-area: body; min-width: 0; overflow-wrap: anywhere; }
.faq-directory { grid-area: directory; position: sticky; top: 24px; padding: 18px; border: 1px solid #426382; border-radius: 12px; background: #142235; }
.faq-directory summary { color: #bce0ff; font-weight: 700; cursor: pointer; }
.faq-directory nav { margin: 12px 0 0; }
.faq-directory ul { list-style: none; margin: 0; padding: 0; }
.faq-directory li { margin: 0 0 8px; }
.faq-directory a { display: block; border-left: 3px solid transparent; padding: 6px 0 6px 10px; font-size: .91rem; text-decoration: none; line-height: 1.65; }
.faq-directory .toc-step a { padding-left: 18px; }
.faq-directory a[aria-current="location"] { border-left-color: #83caff; background: #1b3450; color: #fff; }
.faq-body section[id] { scroll-margin-top: 24px; }
.faq-body h2 { margin-top: 32px; }
.faq-body #why h2 { margin-top: 0; }
.faq-step { margin: 26px 0 32px; padding-top: 1px; border-top: 1px solid #34485f; }
.faq-step h3 { line-height: 1.6; }
.faq-answer, .faq-note { padding: 18px 20px; border-left: 3px solid #83caff; border-radius: 8px; background: #142a40; margin: 22px 0; }
.faq-answer strong, .faq-note strong { color: #bce0ff; }
.faq-answer p, .faq-note p { margin: 8px 0 0; }
.faq-brand-context { margin: 26px 0; padding: 16px 20px; border: 1px solid #426382; border-radius: 10px; background: #142235; }
.faq-brand-context p { margin: 0; }
.faq-brand-context a { text-decoration: underline; text-underline-offset: 3px; }
.faq-brand-context .faq-brand-hub { margin-top: 12px; font-size: .92rem; }
.faq-reading li { margin-bottom: 18px; }
.faq-reading li > a { font-weight: 700; }
.faq-reading li p { margin: 6px 0 0; color: #bccbdb; font-size: .94rem; }
.faq-pagination { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; border-top: 1px solid #44546a; padding-top: 24px; margin: 32px 0 0 !important; }
.faq-pagination a { padding: 16px; border-radius: 10px; background: #142235; text-decoration: none; }
.faq-pagination small, .faq-pagination span { display: block; }
.faq-pagination small { color: #bccbdb; margin-bottom: 8px; }
.faq-pagination a:last-child { text-align: right; }
@media (max-width: 980px) { .faq-layout { grid-template-columns: 1fr; grid-template-areas: "directory" "body"; gap: 26px; } .faq-directory { position: static; } }
@media (max-width: 600px) { .faq-pagination { grid-template-columns: 1fr; gap: 12px; } .faq-pagination a:last-child { text-align: left; } .faq-answer, .faq-note { padding: 14px 16px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
