.faq-intro {padding:56px 0 40px;max-width:850px;}
.faq-intro h1 {font-size:clamp(2rem,4.5vw,3.5rem);overflow-wrap:anywhere;}
.faq-lead {color:var(--show-muted);max-width:48rem;}
.faq-search {padding:24px;background:var(--show-panel);border:1px solid var(--show-line);border-radius:12px;margin-bottom:48px;}
.faq-search label {display:block;font-weight:700;font-size:1.1rem;margin-bottom:12px;}
.faq-search-controls {display:flex;gap:12px;}
.faq-search input {min-width:0;flex:1;background:var(--show-bg);border:1px solid #82735a;border-radius:6px;color:#f5f0e7;padding:12px 16px;min-height:48px;font-size:1rem;}
.faq-search input::placeholder {color:var(--show-muted);opacity:1;}
.faq-search button {background:transparent;border:1px solid var(--show-gold);color:var(--show-gold);border-radius:6px;padding:12px 16px;font:inherit;cursor:pointer;}
.faq-search input:focus-visible,.faq-search button:focus-visible,summary:focus-visible {outline:2px solid #fff;outline-offset:4px;}
.faq-search p {font-size:.9rem;color:var(--show-muted);margin:12px 0 0;}
.faq-search #faqSearchStatus {color:var(--show-gold);}
.faq-layout {display:grid;grid-template-columns:235px minmax(0,1fr);gap:56px;align-items:start;margin-bottom:64px;}
.faq-topics {position:sticky;top:24px;display:flex;flex-direction:column;gap:4px;}
.faq-topics a {padding:10px 0;text-decoration:none;font-size:.95rem;}
.faq-topics a:hover {text-decoration:underline;}
.faq-section {margin-bottom:48px;scroll-margin-top:24px;}
.faq-section:last-child {margin-bottom:0;}
.faq-section h2 {font-size:clamp(1.5rem,2.8vw,2rem);margin-bottom:24px;}
.faq-section .eyebrow {margin-bottom:8px;}
.faq-section details {border-top:1px solid var(--show-line);scroll-margin-top:24px;}
.faq-section details:last-child {border-bottom:1px solid var(--show-line);}
.faq-section summary {padding:20px 12px 20px 0;cursor:pointer;font-weight:700;line-height:1.5;}
.faq-section summary::marker {color:var(--show-gold);}
.faq-section summary:hover,.faq-section details[open]>summary {color:var(--show-gold);}
.faq-answer {color:var(--show-muted);padding:0 16px 22px 20px;overflow-wrap:anywhere;}
.faq-answer p {margin:0 0 12px;}
.faq-answer p:last-child {margin-bottom:0;}
.faq-empty {padding:24px;border:1px solid var(--show-line);border-radius:12px;margin:0;color:var(--show-muted);}
[hidden] {display:none!important;}
@media(max-width:900px){
  .faq-layout {grid-template-columns:1fr;gap:32px;}
  .faq-topics {position:static;display:grid;grid-template-columns:1fr 1fr;column-gap:20px;padding-bottom:24px;border-bottom:1px solid var(--show-line);}
  .faq-topics .eyebrow {grid-column:1/-1;}
}
@media(max-width:600px){
  .faq-intro {padding:32px 0;}
  .faq-search {padding:20px;margin-bottom:32px;}
  .faq-search-controls {flex-direction:column;}
  .faq-search input {width:100%;}
  .faq-section {margin-bottom:36px;}
  .faq-layout {margin-bottom:36px;}
}
