/* Construct Match — Questions */
.cm.faq { padding: clamp(64px, 11vw, 160px) 0; background: var(--white); }
.cm .faq__grid { display: grid; grid-template-columns: minmax(0, .7fr) minmax(0, 1.3fr); gap: clamp(32px, 6vw, 100px); align-items: start; }
.cm .faq__list { border-top: 1.5px solid var(--ink); }
.cm.faq details { border-bottom: 1px solid var(--line); }
.cm.faq summary { position: relative; display: block; padding: 26px 56px 26px 0; font: 600 clamp(18px, 1.5vw, 21px)/1.35 var(--cm-display); font-stretch: 104%; color: var(--ink); cursor: pointer; list-style: none; }
.cm.faq summary::-webkit-details-marker { display: none; }
.cm.faq summary::after { content: ""; position: absolute; right: 4px; top: 50%; width: 34px; height: 34px; margin-top: -17px; border-radius: 50%; border: 1px solid var(--line); background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2310306F' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center / 14px no-repeat; transition: transform .3s var(--ease), background-color .3s; }
.cm.faq details[open] summary::after { transform: rotate(45deg); background-color: var(--navy-soft); }
.cm.faq details p { padding: 0 56px 28px 0; color: var(--muted); max-width: 64ch; }
.cm.faq details p + p { margin-top: -16px; }

@media (max-width: 860px) {
	.cm .faq__grid { grid-template-columns: minmax(0, 1fr); }
	.cm.faq details p { padding-right: 0; }
}
