/* FAQ page additions; master palette, header/footer and native disclosure rules retained. */
.hero.faq-hero { min-height:0; background:var(--navy); }
.faq-hero::after { display:none; }
.faq-hero .hero-content { padding:170px 0 76px; }
.faq-hero .hero-copy { max-width:900px; }
.faq-hero .hero-text { max-width:700px; }
.faq-hero .hero-contours { opacity:.09; }
.faq-body { padding-bottom:clamp(76px,8vw,120px); }
.faq-topics { display:flex; flex-wrap:wrap; gap:12px; padding:36px 0; border-bottom:1px solid var(--line); }
.faq-topics a { display:inline-flex; align-items:center; min-height:46px; padding:10px 18px; border:1px solid var(--navy); color:var(--navy); text-decoration:none; font-size:.9rem; font-weight:700; }
.faq-topics a:hover { background:var(--navy); color:var(--white); }
.faq-topics a:focus-visible { outline:3px solid var(--navy); outline-offset:3px; }
.faq-group { display:grid; grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr); gap:clamp(36px,7vw,100px); padding-top:72px; scroll-margin-top:112px; }
.faq-group > * { min-width:0; }
.faq-group-heading h2 { margin:0; color:var(--navy); font-size:clamp(1.75rem,2.8vw,2.6rem); line-height:1.1; letter-spacing:-.035em; }
.faq-group-heading > p:last-child { max-width:270px; color:var(--muted); }
.faq-group .faq-list { margin-top:0; border-top:1px solid var(--line); }
.faq-group summary { padding-block:24px; }
.faq-group summary:hover { color:var(--orange-text); }
.faq-group summary:focus-visible { outline:3px solid var(--navy); outline-offset:3px; }
.faq-group details p { margin-top:4px; line-height:1.75; }
.faq-group details a { color:var(--navy); text-decoration:underline; text-underline-offset:3px; }
.faq-group details a:hover { color:var(--orange-text); }
.faq-group details a:focus-visible { outline:3px solid var(--navy); outline-offset:3px; }
@media(max-width:860px) { .faq-hero .hero-content { padding:135px 0 60px; } .faq-group { grid-template-columns:1fr; gap:18px; padding-top:50px; scroll-margin-top:98px; } .faq-group-heading > p:last-child { max-width:none; margin-bottom:6px; } }
@media(max-width:620px) { .faq-hero .display { font-size:clamp(2.7rem,12vw,4.4rem); } .faq-topics { gap:10px; padding-block:24px; } .faq-topics a { flex:1 1 135px; justify-content:center; padding-inline:10px; } .faq-group summary { font-size:1.02rem; padding-right:40px; } }
