/* ==========================================================================
   PlayGuitar v3 — FAQ (/faq/)
   Ported from design/od-faq/screens/desktop.html. Marketing chrome (header,
   footer, container) from marketing.css (.pg-market); this is the FAQ body only,
   scoped under body.pg-faq, tokens-only. Public/indexable.
   ========================================================================== */

.pg-faq .prose { max-width: var(--width-content); margin: 0 auto; }

.pg-faq .hero { background: var(--paper); padding: var(--space-24) 0 var(--space-16); border-bottom: 1px solid var(--hairline); }
.pg-faq .hero-inner { max-width: var(--width-content); margin: 0 auto; }
.pg-faq .hero-eyebrow { font-family: var(--font-body); font-size: var(--text-xs); font-weight: var(--weight-semibold); text-transform: uppercase; letter-spacing: var(--track-eyebrow); color: var(--brand-strong); margin: 0 0 var(--space-5) 0; display: inline-flex; align-items: center; gap: var(--space-2); }
.pg-faq .hero-eyebrow::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--brand); }
.pg-faq .hero h1 { color: var(--ink-heading); font-size: var(--h1); font-weight: var(--weight-semibold); margin: 0 0 var(--space-8) 0; letter-spacing: var(--track-tight); max-width: 18ch; }
.pg-faq .hero-intro { font-size: var(--text-lg); line-height: var(--leading-loose); color: var(--ink-body); max-width: 60ch; }

.pg-faq .section { padding: var(--space-20) 0; }
.pg-faq .section-tint { background: var(--paper-tint); }
.pg-faq .section-h { font-family: var(--font-heading); font-size: var(--h2); font-weight: var(--weight-semibold); color: var(--ink-heading); margin: 0 0 var(--space-10) 0; max-width: 22ch; letter-spacing: var(--track-tight); }
.pg-faq .section-eyebrow { font-family: var(--font-body); font-size: var(--text-xs); font-weight: var(--weight-semibold); text-transform: uppercase; letter-spacing: var(--track-eyebrow); color: var(--ink-muted); margin: 0 0 var(--space-3) 0; display: inline-flex; align-items: center; gap: var(--space-2); }
.pg-faq .section-eyebrow::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--brand); }

.pg-faq .faq { margin: 0; }
.pg-faq .faq-pair { padding: var(--space-8) 0; border-top: 1px solid var(--hairline); }
.pg-faq .faq-pair:last-child { border-bottom: 1px solid var(--hairline); }
.pg-faq .faq-q { font-family: var(--font-heading); font-size: var(--text-xl); font-weight: var(--weight-semibold); color: var(--ink-heading); line-height: var(--leading-snug); letter-spacing: -0.01em; margin: 0 0 var(--space-4) 0; text-wrap: pretty; }
.pg-faq .faq-a { font-family: var(--font-body); font-size: var(--text-md); line-height: var(--leading-loose); color: var(--ink-body); margin: 0; }
.pg-faq .faq-link { color: var(--ink-body); border-bottom: 1px solid var(--brand); padding-bottom: 1px; font-weight: var(--weight-medium); }
.pg-faq .faq-link:hover { color: var(--brand-strong); border-bottom-color: var(--brand-strong); }

.pg-faq .contact-fallback { background: var(--accent-deep); color: var(--on-dark); padding: var(--space-20) 0; text-align: center; }
.pg-faq .contact-fallback-inner { max-width: var(--width-narrow); margin: 0 auto; }
.pg-faq .contact-fallback h2 { color: var(--on-dark); font-family: var(--font-heading); font-size: var(--h2); font-weight: var(--weight-semibold); margin: 0 0 var(--space-5) 0; letter-spacing: var(--track-tight); }
.pg-faq .contact-fallback p { font-size: var(--text-lg); line-height: var(--leading-loose); color: var(--on-dark-muted); margin: 0 0 var(--space-10) 0; }
.pg-faq .btn-primary { display: inline-flex; align-items: center; justify-content: center; font-family: var(--font-body); font-size: var(--text-md); font-weight: var(--weight-semibold); background: var(--brand); color: var(--on-dark); padding: var(--space-4) var(--space-8); border-radius: var(--radius-md); border: 0; cursor: pointer; transition: background var(--transition-fast); letter-spacing: 0; min-height: 52px; text-decoration: none; }
.pg-faq .btn-primary:hover { background: var(--brand-hover); color: var(--on-dark); }
.pg-faq .btn-primary:focus-visible { outline: none; box-shadow: 0 0 0 3px rgba(255,255,255,0.55); }

@media (max-width: 768px) {
  .pg-faq .hero { padding: var(--space-16) 0 var(--space-12); }
  .pg-faq .hero h1 { max-width: 100%; }
  .pg-faq .section { padding: var(--space-16) 0; }
  .pg-faq .contact-fallback { padding: var(--space-16) 0; }
  .pg-faq .section-h { margin-bottom: var(--space-8); }
  .pg-faq .faq-pair { padding: var(--space-6) 0; }
  .pg-faq .faq-q { font-size: var(--text-lg); }
}
@media (max-width: 480px) {
  .pg-faq .hero h1 { font-size: clamp(2rem, 9vw, 2.5rem); }
}
