.pp-faq { color: var(--ink); }
.pp-faq-preview { border-top: 1px solid var(--line); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.55fr); gap: clamp(32px, 6vw, 96px); }
.pp-faq-page { max-width: 900px; }
.pp-faq-page h1 { font-size: clamp(32px, 5vw, 54px); }
.pp-faq-topic { margin: 2.2em 0 .6em; font-size: clamp(21px, 3vw, 28px); }
.pp-faq-item { border-bottom: 1px solid var(--line); }
.pp-faq-item summary { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; padding: 15px 2px; font-weight: 700; cursor: pointer; list-style: none; }
.pp-faq-item summary::-webkit-details-marker { display: none; }
.pp-faq-item summary::after { content: '+'; color: var(--blue); font-size: 1.2em; line-height: 1; }
.pp-faq-item[open] summary::after { content: '−'; }
.pp-faq-item p { margin: 0 0 16px; max-width: 72ch; }
.pp-faq-item strong { color: var(--ink); }
.pp-faq-link { display: inline-block; margin-top: 24px; }
@media (max-width: 720px) {
  .pp-faq-preview { grid-template-columns: minmax(0, 1fr); gap: 18px; }
}
@media (max-width: 720px) {
  .footer-top .footer-faq { flex-basis: 100%; }
}
