.article-faq { margin: 42px 0 0; }
.article-faq > h2 { margin: 0 0 16px; color: #54203f; font-size: clamp(1.55rem, 3vw, 2rem); text-align: center; }
.article-faq__item { margin: 10px 0; border: 1px solid #eadde6; border-radius: 10px; background: #fff; }
.article-faq__item summary { position: relative; padding: 15px 48px 15px 18px; cursor: pointer; color: #3f2636; font-weight: 700; list-style: none; }
.article-faq__item summary::-webkit-details-marker { display: none; }
.article-faq__item summary::after { position: absolute; top: 50%; right: 18px; color: #8b2365; content: '+'; font-size: 1.45rem; font-weight: 400; line-height: 1; transform: translateY(-50%); }
.article-faq__item[open] summary::after { content: '−'; }
.article-faq__item p { margin: 0; padding: 0 18px 18px; color: #5d4b56; line-height: 1.7; }
