.tlb-faq {
	margin-block: 2.5rem;
	color: #1c0e35;
}
.tlb-faq .tlb-faq-label {
	display: flex;
	align-items: baseline;
	gap: .45em;
	color: #514d60;
	font: 400 .9375rem/1.5 "Source Sans Pro", sans-serif;
	margin: 0 0 .4rem;
}
.tlb-faq-label::before {
	content: "";
	display: inline-block;
	width: 1em;
	height: 1em;
	flex: none;
	align-self: center;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23514d60' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 11a8 8 0 0 1-8 8H8l-5 3 1.3-5A8 8 0 0 1 11 3h2a8 8 0 0 1 8 8Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.tlb-faq h2 { margin: 0 0 1.25rem; overflow-wrap: anywhere; }
.tlb-faq details { margin: 0; border-top: 1px solid #e3e4e8; }
.tlb-faq details:last-child { border-bottom: 1px solid #e3e4e8; }
.tlb-faq summary {
	display: grid;
	grid-template-columns: minmax(0,1fr) 1rem;
	gap: .8rem;
	align-items: start;
	padding: .9rem .2rem;
	cursor: pointer;
	list-style: none;
	font: 600 1.125rem/1.4 "Source Sans Pro", sans-serif;
	overflow-wrap: anywhere;
}
.tlb-faq summary::-webkit-details-marker { display: none; }
.tlb-faq summary::after {
	content: "";
	width: .42rem; height: .42rem;
	margin-top: .47rem;
	border: solid currentColor;
	border-width: 0 1px 1px 0;
	transform: rotate(45deg);
}
.tlb-faq details[open] > summary::after { transform: translateY(.18rem) rotate(225deg); }
.tlb-faq summary:focus-visible { outline: 2px solid currentColor; outline-offset: -2px; }
.tlb-faq details > p { margin: 0 0 1rem; color: #302e33; }
