/* CMS module: blocks of the website pages and footer payment logos. */
.cms-narrow { max-width: 860px; }
.cms-title { font-size: clamp(26px, 3.2vw, 38px); margin-bottom: 18px; }
.cms-split-right .about-img { order: 2; }
.cms-faq { display: grid; gap: 12px; }
.cms-faq-item { background: var(--surface); border: 1px solid var(--line); border-radius: 14px; padding: 0 22px; }
.cms-faq-item summary { cursor: pointer; font-weight: 700; padding: 18px 0; list-style: none; display: flex; justify-content: space-between; gap: 16px; }
.cms-faq-item summary::-webkit-details-marker { display: none; }
.cms-faq-item summary::after { content: "+"; font-size: 22px; line-height: 1; color: var(--brand); }
.cms-faq-item[open] summary::after { content: "–"; }
.cms-faq-item .prose { padding-bottom: 18px; }
.cms-contact-intro + .section { padding-top: 30px; }
.footer-payments { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin-top: 36px; }
.footer-payments-title { font-size: 14px; color: #94a3b8; }
@media (max-width: 900px) { .cms-split-right .about-img { order: 0; } }
