/* O vidro original acompanha uma leitura mais espaçada, sem alterar o acordeão. */
.evolution .faq > .container { max-width: calc(70rem + var(--container-pad) * 2); }
.evolution .faq .section-head { margin-bottom: 3.5rem; }
.evolution .faq .faq-topics { display: grid; gap: 4.5rem; }
.evolution .faq .faq-topic { display: grid; grid-template-columns: minmax(0, .45fr) minmax(0, 1fr); align-items: start; gap: clamp(2rem, 5vw, 5rem); }
.evolution .faq .faq-topic-heading { min-width: 0; padding-top: .5rem; }
.evolution .faq .faq-topic-symbol { display: flex; align-items: center; gap: .8rem; margin-bottom: 1rem; color: var(--c-primary-strong); }
.evolution .faq .faq-topic-symbol > span { font-size: .68rem; font-weight: 400; letter-spacing: .06em; }
.evolution .faq .faq-topic-heading h3 { max-width: 14ch; margin: 0; color: var(--c-text); font: 400 clamp(1.55rem, 2.5vw, 2rem) / 1.2 var(--font-sans); letter-spacing: -.045em; }
.evolution .faq .faq-list { min-width: 0; gap: .8rem; }
.evolution .faq .faq-item { border: 1px solid #06303b20; border-radius: .65rem; background: #ffffff70; box-shadow: inset 0 1px 0 #ffffffc4; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); transition: border-color 180ms ease-out, background-color 180ms ease-out; }
.evolution .faq .faq-item[data-open="true"] { border-color: #167d915c; background: #ffffffad; }
.evolution .faq .faq-question { min-height: 4.75rem; gap: 1.5rem; padding: 1.4rem 1.5rem; border: 0; border-radius: .65rem; background: transparent; color: var(--c-text); font: 500 1rem / 1.6 var(--font-sans); letter-spacing: -.015em; transition: color 180ms ease-out; }
.evolution .faq .faq-question:hover { background: transparent; color: var(--c-text); }
.evolution .faq .faq-question:focus-visible { outline: 2px solid var(--c-primary-strong); outline-offset: -4px; }
.evolution .faq .faq-chevron { width: 1.1rem; height: 1.1rem; color: var(--c-primary-strong); transition: transform 220ms ease-out; }
.evolution .faq .faq-answer { display: none; visibility: hidden; grid-template-rows: none; transition: none; }
.evolution .faq .faq-item[data-open="true"] .faq-answer { display: block; visibility: visible; grid-template-rows: none; transition: none; }
.evolution .faq .faq-answer-inner { padding: .9rem 1.5rem 1.75rem; }
.evolution .faq .faq-answer-inner > p { max-width: 66ch; margin: 0; padding: 0; color: var(--c-muted); font-size: .9375rem; line-height: 1.8; overflow-wrap: break-word; }
.evolution .faq .faq-answer-inner > p + p { margin-top: 1.15rem; }
.evolution .faq .faq-answer a { color: var(--c-primary-strong); text-decoration: underline; text-underline-offset: .2em; }
.evolution .faq .faq-item[data-open="true"] .faq-answer-inner { animation: faq-answer-in 220ms ease-out both; }
.evolution .faq .section-cta { display: flex; justify-content: flex-start; margin-top: 3rem; color: var(--c-muted); font-size: .85rem; }
@keyframes faq-answer-in { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }
@media (hover: hover) and (pointer: fine) {
  .evolution .faq .faq-item:hover { border-color: #167d914a; }
  .evolution .faq .faq-question:hover { color: var(--c-primary-strong); }
}
@media (max-width: 63.99rem) {
  .evolution .faq .faq-topic { grid-template-columns: minmax(0, .4fr) minmax(0, 1fr); gap: 2rem; }
}
@media (max-width: 47.99rem) {
  .evolution .faq .section-head { margin-bottom: 2.5rem; }
  .evolution .faq .faq-topics { gap: 3.5rem; }
  .evolution .faq .faq-topic { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
  .evolution .faq .faq-topic-heading { padding-top: 0; }
  .evolution .faq .faq-topic-symbol { margin-bottom: .75rem; }
  .evolution .faq .faq-topic-heading h3 { max-width: none; font-size: 1.5rem; }
  .evolution .faq .faq-question { min-height: 4.25rem; gap: 1rem; padding: 1.2rem 1.1rem; font-size: .9375rem; }
  .evolution .faq .faq-answer-inner { padding: .8rem 1.1rem 1.5rem; }
  .evolution .faq .faq-answer-inner > p { font-size: .9375rem; line-height: 1.75; }
  .evolution .faq .section-cta { flex-direction: column; align-items: flex-start; gap: 1rem; }
  .evolution .faq .section-cta .btn { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .evolution .faq .faq-item, .evolution .faq .faq-question, .evolution .faq .faq-chevron { transition: none; }
  .evolution .faq .faq-item[data-open="true"] .faq-answer-inner { animation: none; }
}
