.faq { background: #fff; max-width: none; padding-left: max(28px, calc((100vw - 1124px) / 2)); padding-right: max(28px, calc((100vw - 1124px) / 2)); }
.faq h2 { margin-bottom: 34px; }
.faq-list { max-width: 800px; border-top: 1px solid var(--line); }
.faq details { border-bottom: 1px solid var(--line); padding: 18px 0; }
.faq summary { cursor: pointer; font-family: 'Playfair Display', serif; font-size: 22px; font-weight: 600; list-style: none; display: flex; justify-content: space-between; gap: 20px; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: '+'; color: var(--clay); font-family: 'DM Sans', sans-serif; font-size: 25px; font-weight: 400; }
.faq details[open] summary::after { content: '–'; }
.faq details p { max-width: 690px; margin: 15px 35px 3px 0; }
@media (max-width: 720px) { .faq { padding-left: 23px; padding-right: 23px; } .faq summary { font-size: 20px; } }
