.faq {
      display: grid;
      gap: 12px;
      max-width: 920px;
    }

    details {
      background: #fff;
      border: 1px solid rgba(37,37,33,.08);
      border-radius: 18px;
      padding: 20px 22px;
    }

    summary {
      cursor: pointer;
      font-weight: 650;
      list-style: none;
      display: flex;
      justify-content: space-between;
      gap: 18px;
    }

    summary::-webkit-details-marker { display: none; }

    summary::after {
      content: "+";
      color: var(--sage-dark);
      font-size: 22px;
      line-height: 1;
    }

    details[open] summary::after { content: "−"; }

    details p {
      color: var(--muted);
      margin-top: 14px;
      max-width: 780px;
    }
