/* Bondsmore Toolkit — FAQ. */
.bm.bm-faq { padding: 110px 0; background: var(--bm-sage); }
.bm-faq .bm-faq__grid { display: grid; grid-template-columns: minmax(260px, 400px) minmax(0, 1fr); gap: clamp(40px, 6vw, 96px); align-items: start; }
.bm-faq .bm-faq__side { position: sticky; top: 120px; }
.bm.bm-faq .bm-faq__lead { margin: 18px 0 28px; color: var(--bm-muted); font-size: 16px; }
.bm-faq .bm-faq__list { border-top: 1px solid var(--bm-ink); }
.bm-faq .bm-faq__item { border-bottom: 1px solid var(--bm-line); }
.bm.bm-faq summary { display: flex; justify-content: space-between; align-items: center; gap: 24px; padding: 24px 0; color: var(--bm-ink); font-family: var(--bm-serif); font-size: 20px; font-weight: 600; line-height: 1.3; letter-spacing: -.015em; list-style: none; cursor: pointer; }
.bm-faq summary::-webkit-details-marker { display: none; }
.bm-faq summary:hover span { color: var(--bm-green); }
.bm-faq summary i { position: relative; flex: none; width: 40px; height: 40px; border: 1px solid var(--bm-line); border-radius: 50%; background: #fff; transition: background-color .2s, border-color .2s; }
.bm-faq summary i::before, .bm-faq summary i::after { content: ""; position: absolute; left: 50%; top: 50%; width: 14px; height: 2px; margin: -1px 0 0 -7px; background: var(--bm-ink); transition: transform .25s; }
.bm-faq summary i::after { transform: rotate(90deg); }
.bm-faq .bm-faq__item[open] summary i { background: var(--bm-amber); border-color: var(--bm-amber); }
.bm-faq .bm-faq__item[open] summary i::after { transform: rotate(0); }
.bm.bm-faq .bm-faq__a { max-width: 68ch; padding: 0 64px 26px 0; color: var(--bm-muted); font-size: 16px; line-height: 1.7; }
.bm.bm-faq .bm-faq__a p { margin: 0 0 12px; color: inherit; }
.bm.bm-faq .bm-faq__a :where(ul, ol) { margin: 0 0 12px 20px; list-style: disc; }
@media (max-width: 1024px) {
	.bm-faq .bm-faq__grid { grid-template-columns: 1fr; gap: 32px; }
	.bm-faq .bm-faq__side { position: static; }
}
@media (max-width: 680px) {
	.bm.bm-faq { padding: 64px 0; }
	.bm.bm-faq summary { font-size: 17px; padding: 20px 0; }
	.bm.bm-faq .bm-faq__a { padding-right: 0; }
}
