.faq { background: var(--color-surface); }
.faq__grid { display: grid; grid-template-columns: minmax(18rem, 0.65fr) minmax(0, 1.35fr); align-items: start; gap: clamp(3rem, 9vw, 9rem); }
.faq__intro { position: sticky; top: 2rem; }
.faq__intro h2 { max-width: 12ch; }
.faq__intro > p:last-child { max-width: 31rem; margin-top: var(--space-5); color: var(--color-text-muted); }
.accordion { border-top: 1px solid var(--color-border); }
.accordion details { border-bottom: 1px solid var(--color-border); }
.accordion summary { display: flex; min-height: 4.5rem; align-items: center; justify-content: space-between; gap: var(--space-5); padding-block: var(--space-4); font-weight: 700; cursor: pointer; list-style: none; }
.accordion summary::-webkit-details-marker { display: none; }
.accordion summary .icon { transition: transform var(--transition-base); }
.accordion details[open] summary .icon { transform: rotate(45deg); }
.accordion details p { max-width: 48rem; padding: 0 var(--space-7) var(--space-5) 0; color: var(--color-text-muted); font-size: var(--font-size-200); }
@media (max-width: 767px) {
  .faq__grid { grid-template-columns: 1fr; }
  .faq__intro { position: static; }
}

