  .faq-trigger { background: none; border: none; outline: none; font-family: inherit; }
  .faq-trigger:focus-visible { outline: 2px solid var(--brand-primary); outline-offset: -2px; border-radius: 12px; }

  .faq-body {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.4s ease, opacity 0.3s ease;
  }
  .faq-item.is-open .faq-body {
    max-height: 300px;
    opacity: 1;
  }

  .faq-item {
    transition: border-color 0.3s ease, box-shadow 0.3s ease;
  }
  .faq-item.is-open {
    border-color: var(--brand-primary);
    box-shadow: 0 2px 12px rgba(13, 148, 136, 0.08);
  }

  .faq-chevron {
    transition: transform 0.35s ease, color 0.3s ease;
  }
  .faq-item.is-open .faq-chevron {
    transform: rotate(180deg);
    color: white;
  }

  .faq-icon {
    transition: background-color 0.3s ease;
  }
  .faq-item.is-open .faq-icon {
    background-color: var(--brand-primary);
  }
