/* Scoped FAQ enhancement: no shared site, listing or form styles changed. */
.faq-hub [hidden] { display:none !important; }
.faq-hub, .faq-hub * { box-sizing:border-box; }
.faq-hub { max-width:1280px; margin:0 auto; padding:24px 48px 88px; }
.faq-hub a { text-underline-offset:4px; }
.faq-hub :is(a,button,input,select):focus-visible { outline:3px solid #8c7549; outline-offset:4px; }
.faq-hub-intro { border-top:1px solid #d9d1c4; padding:28px 0; scroll-margin-top:100px; }
.faq-hub-intro > p { max-width:74ch; font-size:14px; line-height:1.7; color:#6f6a61; margin:0; }
.faq-hub-tools { display:grid; grid-template-columns:minmax(0,1fr) 260px auto; gap:16px; align-items:end; margin-top:24px; }
.faq-hub-tools label { display:block; font-size:12px; font-weight:600; margin:0 0 8px; letter-spacing:.025em; }
.faq-hub-tools :is(input,select) { display:block; width:100%; height:50px; margin:0; border:1px solid #cec5b5; border-radius:3px; background:#fff; color:#111; font:inherit; font-size:15px; padding:10px 14px; min-width:0; }
.faq-hub-tools input::placeholder { color:#777269; opacity:1; }
.faq-hub-reset { height:50px; padding:10px 18px; border:1px solid #cec5b5; border-radius:3px; color:#51483a; background:transparent; cursor:pointer; font:inherit; font-size:13px; }
.faq-hub-status-row { display:flex; flex-wrap:wrap; justify-content:space-between; gap:12px; align-items:center; margin-top:18px; }
.faq-hub-status { color:#6f6a61; font-size:13px; margin:0; }
.faq-hub-expand { border:0; border-bottom:1px solid #b6a27c; padding:5px 0; color:#51483a; background:none; font:inherit; font-size:13px; cursor:pointer; }
.faq-hub-layout { display:grid; grid-template-columns:245px minmax(0,1fr); gap:64px; align-items:start; }
.faq-hub-nav { position:sticky; top:120px; border-left:1px solid #d9d1c4; }
.faq-hub-nav h2 { font:600 11px/1.6 Inter,sans-serif; letter-spacing:.12em; text-transform:uppercase; margin:0 0 16px 20px; color:#6f6a61; }
.faq-hub-nav a { display:flex; justify-content:space-between; gap:14px; padding:13px 18px; margin-left:-1px; border-left:2px solid transparent; text-decoration:none; color:#5f584e; font-size:13px; line-height:1.5; }
.faq-hub-nav a:hover,.faq-hub-nav a[aria-current] { color:#111; border-color:#9d885e; background:#f3eee5; }
.faq-hub-nav span { font-size:11px; color:#817460; padding-top:2px; }
.faq-hub-group { scroll-margin-top:120px; margin:0 0 44px; }
.faq-hub-group-head { margin-bottom:15px; }
.faq-hub-group h2 { font:400 clamp(25px,2.3vw,33px)/1.18 Georgia,'Times New Roman',serif; color:#111; max-width:none; margin:0 0 10px; letter-spacing:-.025em; text-wrap:balance; }
.faq-hub-group-head p { color:#6f6a61; font-size:13px; line-height:1.6; margin:0; }
.faq-hub-item { border-top:1px solid #d9d1c4; scroll-margin-top:122px; }
.faq-hub-item:last-child { border-bottom:1px solid #d9d1c4; }
.faq-hub-item h3 { margin:0; max-width:none; font:inherit; }
.faq-hub-question { display:flex; align-items:center; justify-content:space-between; gap:22px; width:100%; padding:22px 0; border:0; background:none; text-align:left; color:#171612; font:500 16px/1.65 Inter,sans-serif; cursor:pointer; }
.faq-hub-question > span:first-child { min-width:0; max-width:none; }
.faq-hub-icon { flex:0 0 22px; font:400 23px/1 Georgia,serif; text-align:center; color:#8e7850; }
.faq-hub-question:hover { color:#6f6049; }
.faq-hub-answer { max-width:76ch; padding:0 28px 24px 0; }
.faq-hub-answer p { color:#514c43; font-size:15px; line-height:1.85; margin:0 0 14px; max-width:none; }
.faq-hub-answer p:first-child { color:#26221d; }
.faq-hub-answer .faq-hub-reading { display:flex; flex-direction:column; gap:10px; padding-top:4px; margin:18px 0; }
.faq-hub-reading a { color:#6f6049; font-weight:500; font-size:13px; line-height:1.65; }
.faq-hub-answer .faq-hub-sources { font-size:11px; color:#6f6a61; line-height:1.8; margin:12px 0 0; }
.faq-hub-sources a { color:inherit; }
.faq-hub-answer .faq-hub-permalink { display:inline-block; margin-top:13px; font-size:11px; color:#6f6a61; }
.faq-hub-alias { display:block; height:0; scroll-margin-top:122px; }
.faq-hub-empty { padding:32px; background:#f3eee5; border:1px solid #d9d1c4; color:#514c43; line-height:1.8; }
.faq-hub-note { border-top:1px solid #d9d1c4; padding-top:24px; margin-top:8px; color:#6f6a61; font-size:12px; line-height:1.8; max-width:90ch; }
body.faq-hub-page { background:#fcfaf6; }
body.faq-hub-page .page-hero { grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:48px; min-height:0; padding:64px 48px 40px; background:#fcfaf6; }
body.faq-hub-page .page-hero::before,body.faq-hub-page .page-hero::after { display:none; }
body.faq-hub-page .page-hero .hero-media { width:100%; height:360px; min-height:0; margin:0; aspect-ratio:auto; }
body.faq-hub-page .page-hero .hero-media :is(picture,img) { display:block; width:100%; height:100%; }
body.faq-hub-page .page-hero .hero-media img { object-fit:cover; object-position:62% 50%; }
body.faq-hub-page .page-hero h1 { font-size:clamp(32px,3.6vw,52px); line-height:1.12; max-width:23ch; }
body.faq-hub-page .page-hero .lead { max-width:62ch; }
@media(max-width:1100px){
 body.faq-hub-page .page-hero { padding:48px 32px 32px; gap:28px; }
 body.faq-hub-page .page-hero .hero-media { height:320px; }
 .faq-hub { padding-left:32px; padding-right:32px; }
 .faq-hub-layout { grid-template-columns:210px minmax(0,1fr); gap:32px; }
 .faq-hub-tools { grid-template-columns:minmax(0,1fr) 230px; }
 .faq-hub-reset { grid-column:1/-1; width:max-content; height:38px; }
}
@media(max-width:760px){
 .faq-hub { padding:8px 20px 56px; }
 .faq-hub-intro { padding:24px 0; }
 .faq-hub-layout { grid-template-columns:minmax(0,1fr); gap:30px; }
 .faq-hub-nav { position:static; border:0; display:flex; flex-wrap:wrap; gap:8px; }
 .faq-hub-nav h2 { flex:0 0 100%; margin:0 0 4px; }
 .faq-hub-nav a { padding:9px 11px; margin:0; border:1px solid #d9d1c4; border-radius:3px; gap:9px; font-size:11px; }
 .faq-hub-nav a[aria-current] { border-color:#9d885e; }
 .faq-hub-tools { grid-template-columns:minmax(0,1fr); gap:14px; margin-top:20px; }
 .faq-hub-reset { grid-column:auto; }
 .faq-hub-status-row { align-items:start; }
 .faq-hub-group { margin-bottom:34px; }
 .faq-hub-question { padding:20px 0; font-size:15px; line-height:1.65; gap:14px; }
 .faq-hub-answer { padding-right:0; }
 .faq-hub-answer p { font-size:14px; line-height:1.85; }
 .faq-hub-group h2 { font-size:28px; }
 body.faq-hub-page .page-hero { grid-template-columns:minmax(0,1fr); padding:32px 20px 24px; gap:24px; }
 body.faq-hub-page .page-hero .hero-media { height:180px; }
 body.faq-hub-page .page-hero h1 { font-size:34px; }
}
@media(prefers-reduced-motion:reduce){.faq-hub * { scroll-behavior:auto !important; }}
