.m-faq__groups { display: grid; gap: var(--section-y); }
.m-faq__group { min-width: 0; }
.m-faq__group .h2 { margin-block-start: var(--sp-3); }
.m-faq__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 var(--sp-8); margin-block-start: var(--sp-6); }

.m-faq__item {
  border-bottom: var(--hairline) solid var(--line);
}
.m-faq__item:nth-child(-n + 2) { border-top: var(--hairline) solid var(--line); }

.m-faq__item summary {
  padding-block: var(--sp-4);
  font-weight: 600;
  color: var(--ink);
  cursor: pointer;
  list-style: none;
  display: flex;
  align-items: baseline;
  gap: var(--sp-3);
}
.m-faq__item summary::-webkit-details-marker { display: none; }
.m-faq__item summary::before {
  content: "+";
  color: var(--ink-ui);
  flex: 0 0 auto;
  font-weight: 400;
  width: 1em;
}
.m-faq__item[open] summary::before { content: "–"; }
.m-faq__item summary:hover { color: var(--accent); }

.m-faq__item p {
  color: var(--ink-2);
  padding-inline-start: calc(1em + var(--sp-3));
  padding-block-end: var(--sp-4);
  padding-inline-end: var(--sp-4);
}

@media (max-width: 720px) {
  .m-faq__grid { grid-template-columns: minmax(0, 1fr); }
  .m-faq__item:nth-child(2) { border-top: 0; }
}
