/* QV FAQ Accordion — self-contained (works with no mu-plugin / no Bootstrap).
   Buzzblitz look: white rows, the open row turns #CFE2FF with a blue chevron.
   Toggled by view.js via a class (no IDs), so two accordions on a page are safe. */
.qv-faq {
	margin: 0 0 24px;
}

.qv-faq__item {
	overflow: hidden;
	border: 1px solid #DEE2E6;
}

.qv-faq__item:not(:first-child) { border-top: 0; }
.qv-faq__item:first-child { border-radius: 6px 6px 0 0; }
.qv-faq__item:last-child { border-radius: 0 0 6px 6px; }

.qv-faq__q {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	width: 100%;
	margin: 0;
	padding: 16px 20px;
	background: #FFFFFF;
	border: 0;
	cursor: pointer;
	font-family: inherit;
	font-size: 16px;
	line-height: 20px;
	font-weight: 400;
	color: #212529;
	text-align: left;
	transition: background-color 300ms ease;
}

.qv-faq__item.is-open .qv-faq__q {
	background: #CFE2FF;
	box-shadow: inset 0 -1px 0 #DEE2E6;
}

.qv-faq__q:focus-visible {
	outline: 2px solid #15803D;
	outline-offset: -2px;
}

/* Chevron (dark, points down; turns blue and flips up when open). */
.qv-faq__q::after {
	content: "";
	flex-shrink: 0;
	width: 20px;
	height: 20px;
	background: no-repeat center / 20px 20px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23212529' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
	transition: transform 200ms ease;
}

.qv-faq__item.is-open .qv-faq__q::after {
	transform: rotate(180deg);
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23052c65' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
}

/* Smooth open/close: the panel is a one-row grid that expands 0fr -> 1fr. */
.qv-faq__a {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows 300ms ease;
}

.qv-faq__item.is-open .qv-faq__a {
	grid-template-rows: 1fr;
}

/* The clamped grid item carries no padding so the row can collapse fully to 0. */
.qv-faq__a-inner {
	overflow: hidden;
	min-height: 0;
}

/* Padding + text styling live on the nested body. */
.qv-faq__a-body {
	padding: 16px 20px;
	font-size: 16px;
	line-height: 24px;
	color: #212529;
}
