.faq-body .container { width: min(800px, calc(100% - 48px)); }
.faq-body .site-header .container, .faq-body .site-footer .container { width: min(1088px, calc(100% - 48px)); }
.faq-page { padding: 68px 0 110px; }
.faq-hero { text-align: center; }
.faq-hero h1 { margin: 14px 0 16px; font-size: 39px; line-height: 1.08; letter-spacing: -.04em; font-weight: 650; }
.faq-hero p { margin: 0; color: var(--muted); font-size: 18px; }
.faq-content { margin-top: 46px; display: grid; gap: 48px; }
.faq-group h2 { margin: 0 0 14px; color: var(--cyan); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; }
.faq-accordion details { border-bottom: 1px solid #263137; }
.faq-accordion summary { min-height: 57px; padding: 17px 0; list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 20px; cursor: pointer; font-size: 16px; font-weight: 600; line-height: 1.4; }
.faq-accordion summary::-webkit-details-marker { display: none; }
.faq-accordion summary svg { width: 16px; height: 16px; flex: 0 0 auto; overflow: visible; fill: none; stroke: #82939d; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transform-origin: center; transition: transform .28s ease, stroke .2s; }
.faq-accordion details[open] summary svg { transform: rotate(180deg); stroke: var(--cyan); }
.faq-answer { max-height: 0; opacity: 0; overflow: hidden; transition: max-height .3s ease, opacity .2s ease; }
.faq-accordion details[open] .faq-answer { max-height: 180px; opacity: 1; }
.faq-answer p { max-width: 720px; margin: -2px 0 19px; color: var(--muted); font-size: 14px; line-height: 1.65; }
@media (max-width: 720px) {
  .faq-body .container, .faq-body .site-header .container, .faq-body .site-footer .container { width: min(100% - 32px, 1088px); }
  .faq-page { padding: 54px 0 76px; }.faq-hero h1 { font-size: 34px; }.faq-hero p { font-size: 16px; }.faq-content { margin-top: 40px; gap: 42px; }.faq-accordion summary { font-size: 15px; }
}
