body[data-page="plans"] .back-home:is(:hover, :focus-visible) { color: #fff; }
body[data-page="plans"] .back-home:hover i { transform: translateX(-3px); }
body[data-page="plans"] .billing-note:empty { display: none; }

.faq-band { padding: 64px 0 72px; border-block: 1px solid var(--border); background: var(--background-secondary); }
.faq-layout { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.4fr); align-items: start; gap: 64px; }
.faq-heading h2 { margin: 12px 0 22px; font-size: 28px; font-weight: 600; line-height: 1.35; overflow-wrap: anywhere; }
.faq-band .text-link:is(:hover, :focus-visible) { color: #fff; }
.faq-list { min-width: 0; border-top: 1px solid var(--border); }
.faq-item { border-bottom: 1px solid var(--border); }
.faq-item summary { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 76px; padding: 20px 12px; color: var(--text-primary); font-size: 14px; font-weight: 600; line-height: 1.65; list-style: none; cursor: pointer; touch-action: manipulation; transition: color 180ms ease, background 180ms ease; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary::marker { content: ""; }
.faq-item summary > span { min-width: 0; overflow-wrap: anywhere; }
.faq-item summary:hover { color: #fff; background: #ffffff03; }
.faq-item summary:focus-visible { outline: 2px solid var(--accent-hover); outline-offset: -2px; border-radius: 4px; }
.faq-icon { display: grid; place-items: center; flex: 0 0 28px; width: 28px; height: 28px; border: 1px solid var(--border); border-radius: 6px; color: var(--text-secondary); font-size: 11px; transition: color 180ms ease, border-color 180ms ease; }
.faq-icon::before { transition: transform 220ms ease; }
.faq-item summary:hover .faq-icon { color: #fff; border-color: var(--border-hover); }
.faq-item[open]:not([data-expanded="false"]) .faq-icon { color: #fff; }
.faq-item[open]:not([data-expanded="false"]) .faq-icon::before { transform: rotate(45deg); }
.faq-answer.is-animating { overflow: hidden; }
.faq-answer-inner { padding: 0 52px 24px 12px; }
.faq-answer p { margin: 0; color: var(--text-secondary); font-size: 13px; line-height: 1.85; overflow-wrap: anywhere; }
.faq-answer .text-link { margin-top: 14px; font-size: 12px; }
@media (max-width: 900px) { .faq-layout { gap: 36px; grid-template-columns: minmax(0, .8fr) minmax(0, 1.4fr); } }
@media (max-width: 640px) { .faq-band { padding: 40px 0 48px; } .faq-layout { grid-template-columns: minmax(0, 1fr); gap: 28px; } .faq-heading h2 { font-size: 25px; margin-bottom: 16px; } .faq-item summary { gap: 16px; min-height: 72px; padding: 18px 4px; font-size: 13px; } .faq-answer-inner { padding: 0 40px 22px 4px; } }
@media (prefers-reduced-motion: reduce) { .faq-item summary, .faq-icon, .faq-icon::before, body[data-page="plans"] .back-home i { transition: none; } }
