.faq-layout { max-width: var(--max-w); margin: 0 auto; padding: 72px var(--pad-x); display: grid; grid-template-columns: 260px 1fr; gap: 72px; align-items: start; }
.faq-nav { position: sticky; top: 100px; }
.faq-nav-label { font-size: 11px; letter-spacing: .17em; text-transform: uppercase; color: var(--stone); margin-bottom: 20px; display: block; }
.faq-nav-list { list-style: none; }
.faq-nav-list a { display: block; font-size: 13.5px; color: var(--ink2); text-decoration: none; padding: 9px 0; border-bottom: 1px solid var(--border); font-weight: 300; transition: color .2s; }
.faq-nav-list a:first-child { border-top: 1px solid var(--border); }
.faq-nav-list a:hover { color: var(--coal); }
.faq-nav-list a.active { color: var(--coal); font-weight: 500; }

.faq-content {}
.faq-group { margin-bottom: 64px; scroll-margin-top: 100px; }
.faq-group-title { font-family: var(--serif); font-size: 28px; font-weight: 300; color: var(--coal); margin-bottom: 28px; padding-bottom: 18px; border-bottom: 2px solid var(--border); }

/* CONTACT STRIP */
.faq-contact-strip { background: var(--bg2); padding: 56px var(--pad-x); border-top: 1px solid var(--border); }
.fcs-inner { max-width: var(--max-w); margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
.fcs-h { font-family: var(--serif); font-size: 26px; font-weight: 300; color: var(--coal); margin-bottom: 8px; }
.fcs-p { font-size: 13.5px; color: var(--ink2); font-weight: 300; }
.fcs-btns { display: flex; gap: 14px; flex-wrap: wrap; }

@media (max-width: 860px) {
  .faq-layout { grid-template-columns: 1fr; gap: 48px; }
  .faq-nav { position: static; }
  .faq-nav-list { display: flex; flex-wrap: wrap; gap: 8px; }
  .faq-nav-list a { border: 1px solid var(--border); padding: 8px 14px; font-size: 12px; }
  .faq-nav-list a:first-child { border-top: 1px solid var(--border); }
}
