.pudp-faq { --faq-ink:#172842; --faq-muted:#50617a; --faq-blue:#215de9; max-width:1180px; margin:auto; padding:44px 24px 24px; color:var(--faq-ink); font-family:Inter,system-ui,sans-serif; line-height:1.65; }
.pudp-faq [hidden] { display:none !important; }
.pudp-faq a { color:#174cc3; text-underline-offset:3px; }
.pudp-faq a:hover { color:#103381; }
.pudp-faq :is(a,button,input,summary):focus-visible { outline:3px solid #215de9; outline-offset:4px; }
.pudp-faq .faq-eyebrow { margin:0 0 12px; color:#2153bd; font-size:.76rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.pudp-faq .faq-hero { border-bottom:1px solid #dce4ef; padding-bottom:36px; }
.pudp-faq h1 { max-width:850px; margin:0 0 20px; font-size:clamp(2rem,4.3vw,3.4rem); line-height:1.15; letter-spacing:-.045em; font-weight:700; }
.pudp-faq h1 span { color:#51637e; }
.pudp-faq .faq-intro { max-width:680px; font-size:1.08rem; color:var(--faq-muted); margin-bottom:14px; }
.pudp-faq .faq-meta { font-size:.83rem; color:var(--faq-muted); }
.pudp-faq .faq-search { margin:26px 0; max-width:790px; }
.pudp-faq .faq-search label { display:block; margin-bottom:8px; font-weight:650; }
.pudp-faq .faq-search-row { display:flex; gap:10px; }
.pudp-faq input { min-width:0; flex:1; border:1px solid #acbbcf; border-radius:9px; padding:13px 15px; font:inherit; background:#fff; color:var(--faq-ink); }
.pudp-faq button { border:1px solid #a8b9d0; background:#f4f7fc; border-radius:8px; padding:10px 17px; font:inherit; color:var(--faq-ink); cursor:pointer; }
.pudp-faq button:hover { background:#e9f0fd; }
.pudp-faq #faq-search-help,.pudp-faq #faq-search-status { margin:7px 0; color:var(--faq-muted); font-size:.82rem; }
.pudp-faq #faq-search-status { min-height:1.4em; }
.pudp-faq .faq-common h2 { font-size:.85rem; margin:0 0 12px; font-weight:650; }
.pudp-faq .faq-common ul { display:flex; flex-wrap:wrap; gap:8px; padding:0; margin:0; list-style:none; }
.pudp-faq .faq-common a { display:block; border:1px solid #c6d5ee; border-radius:8px; padding:7px 11px; text-decoration:none; font-size:.8rem; }
.pudp-faq .faq-layout { display:grid; grid-template-columns:230px minmax(0,1fr); gap:44px; padding-top:34px; }
.pudp-faq .faq-toc nav { position:sticky; top:74px; }
.pudp-faq .faq-toc h2 { font-size:.78rem; text-transform:uppercase; letter-spacing:.07em; color:var(--faq-muted); margin:0 0 14px; }
.pudp-faq .faq-toc ul { list-style:none; padding:0; margin:0 0 20px; }
.pudp-faq .faq-toc li { margin-bottom:5px; }
.pudp-faq .faq-toc li a { display:block; padding:7px 0; font-size:.89rem; text-decoration:none; color:var(--faq-ink); }
.pudp-faq .faq-toc li a:hover { color:#174cc3; text-decoration:underline; }
.pudp-faq .faq-guide-link { font-size:.84rem; }
.pudp-faq .faq-category { margin:0 0 35px; scroll-margin-top:74px; }
.pudp-faq .faq-category>h2 { font-size:1.27rem; line-height:1.4; font-weight:650; margin:0 0 15px; }
.pudp-faq .faq-item { border:1px solid #d6dfec; border-radius:10px; margin:0 0 9px; background:#fff; scroll-margin-top:74px; overflow-wrap:anywhere; }
.pudp-faq .faq-item summary { cursor:pointer; padding:17px 20px; font-size:.94rem; font-weight:600; line-height:1.6; }
.pudp-faq .faq-item summary::marker { color:#2153bd; }
.pudp-faq .faq-item[open] { border-color:#90addc; box-shadow:0 3px 14px #17284208; }
.pudp-faq .faq-item[open] summary { background:#f5f8fe; border-radius:9px 9px 0 0; }
.pudp-faq .faq-answer { padding:4px 22px 21px; font-size:.92rem; color:#354862; }
.pudp-faq .faq-answer p { margin:15px 0 0; }
.pudp-faq .faq-answer ol { padding-left:23px; margin:15px 0 0; }
.pudp-faq .faq-answer li { margin:7px 0; }
.pudp-faq .faq-escalation { border-left:3px solid #b4c9eb; padding-left:13px; }
.pudp-faq .faq-answer-links { display:flex; flex-wrap:wrap; gap:10px 20px; margin-top:19px; font-size:.81rem; }
.pudp-faq .faq-empty { padding:25px; background:#f4f7fc; border-radius:12px; }
.pudp-faq .faq-empty h2 { font-size:1.2rem; }
.pudp-faq .faq-empty a { display:inline-block; margin:10px; }
.pudp-faq .faq-support { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:30px; margin:25px 0; padding:30px; background:#eff4fc; border:1px solid #d5e1f3; border-radius:14px; }
.pudp-faq .faq-support h2 { font-size:1.65rem; font-weight:650; letter-spacing:-.03em; margin:0 0 15px; }
.pudp-faq .faq-support p:not(.faq-eyebrow) { max-width:700px; color:var(--faq-muted); font-size:.9rem; }
.pudp-faq .faq-support-actions { display:flex; flex-direction:column; justify-content:center; gap:13px; font-size:.9rem; overflow-wrap:anywhere; }
.pudp-faq .faq-back { text-align:right; font-size:.84rem; }
@media(max-width:850px) { .pudp-faq .faq-layout { grid-template-columns:1fr; gap:25px; } .pudp-faq .faq-toc nav { position:static; } .pudp-faq .faq-toc ul { display:flex; flex-wrap:wrap; gap:4px 18px; } .pudp-faq .faq-toc li { margin:0; } .pudp-faq .faq-support { grid-template-columns:1fr; gap:10px; } }
@media(max-width:480px) { .pudp-faq { padding:28px 16px 16px; } .pudp-faq .faq-item summary { padding:14px; } .pudp-faq .faq-answer { padding:2px 15px 18px; } .pudp-faq .faq-support { padding:22px; } .pudp-faq .faq-search-row { flex-wrap:wrap; } .pudp-faq input { flex-basis:100%; } }
@media print { .pudp-faq .faq-toc,.pudp-faq .faq-search,.pudp-faq .faq-common,.pudp-faq .faq-back { display:none; } .pudp-faq .faq-layout { display:block; } .pudp-faq .faq-item { break-inside:avoid; } }
/* The base template styles every nav as the black site header. */
.pudp-faq nav { background:transparent; color:inherit; position:static; z-index:auto; border:0; padding:0; box-shadow:none; }
