
.cy-faq {
	background: var(--cy-surface-band);
	overflow: hidden;
	padding: 120px 0;
	position: relative;
}

.cy-faq .faq-glyphs {
	height: 100%;
	inset: 0;
	pointer-events: none;
	position: absolute;
	width: 100%;
}

.cy-faq .faq-split {
	align-items: flex-start;
	display: flex;
	gap: 24px;
	position: relative;
}

.cy-faq .faq-head {
	display: flex;
	flex: none;
	flex-direction: column;
	gap: 12px;
	width: 384px;
}

.cy-faq .faq-head h2 {
	color: var(--cy-text-primary);
	font: var(--cy-display-sm);
	font-size: var(--cy-type-display-sm-size);
	line-height: var(--cy-type-display-sm-line);
	margin: 0;
}

.cy-faq .faq-list {
	flex: 1 1 0;
	min-width: 0;
}

.cy-faq .faq-row {
	border-bottom: 1px solid var(--cy-border-subtle);
}

.cy-faq .faq-row summary {
	align-items: center;
	cursor: pointer;
	display: flex;
	gap: 24px;
	list-style: none;
	padding: 24px 0;
}

.cy-faq .faq-row summary::-webkit-details-marker {
	display: none;
}

.cy-faq .faq-row summary h3 {
	color: var(--cy-text-primary);
	flex: 1 1 0;
	font: var(--cy-body-lg);
	margin: 0;
	min-width: 0;
}

.cy-faq .faq-row summary .cy-chevron {
	color: var(--cy-text-secondary);
	flex: none;
	transition: transform .32s cubic-bezier(.4, 0, .2, 1);
}

.cy-faq .faq-row[open] summary .cy-chevron {
	transform: rotate(180deg);
}

.cy-faq .faq-row.is-closing summary .cy-chevron {
	transform: none;
}

.cy-faq .faq-answer {
	color: var(--cy-text-secondary);
	font-size: var(--cy-type-body-md-size);
	line-height: var(--cy-type-body-md-line);
	overflow: hidden;
	padding: 0 34px 0 0;
	transition: height .42s cubic-bezier(.4, 0, .2, 1), opacity .36s;
}

.cy-faq .faq-answer:after {
	content: "";
	display: block;
	height: 24px;
}

.cy-faq .faq-answer p {
	margin: 0 0 12px;
}

.cy-faq .faq-answer p:last-child {
	margin-bottom: 0;
}

@media (prefers-reduced-motion: reduce) {
	.cy-faq .faq-answer, .cy-faq .faq-row summary .cy-chevron {
		transition: none;
	}
}

.cy-faq .faq-more {
	display: none;
}

@media (max-width: 1080px) {
	.cy-faq {
		padding: 80px 0;
	}
	
	.cy-faq .faq-split {
		flex-direction: column;
	}
	
	.cy-faq .faq-head, .cy-faq .faq-list {
		flex: none;
		width: 100%;
	}
}

@media (max-width: 720px) {
	.cy-faq {
		padding: 64px 0;
	}
	
	.cy-faq .faq-row summary {
		padding: 20px 0;
	}
	
	.cy-faq .faq-answer {
		padding-right: 0;
	}
	
	.cy-faq .faq-row--folded {
		display: none;
	}
	
	.cy-faq .faq-row--folded[open], .cy-faq.is-expanded .faq-row--folded {
		display: block;
	}
	
	.cy-faq .faq-more {
		align-items: center;
		border: 1px solid var(--cy-border-subtle);
		border-radius: var(--cy-radius-pill);
		box-shadow: var(--cy-shadow-secondary-rest);
		cursor: pointer;
		display: flex;
		font-size: 14px;
		font-weight: 500;
		height: 40px;
		justify-content: center;
		line-height: 17px;
		margin-top: 24px;
		padding: 0 16px;
		transform: scale(1);
		transition: background-color .18s, box-shadow .2s, transform .18s;
		width: 100%;
	}
	
	.cy-faq .faq-more, .cy-faq .faq-more:active, .cy-faq .faq-more:focus, .cy-faq .faq-more:hover {
		background: var(--cy-surface-raised);
		color: var(--cy-action-primary);
	}
	
	.cy-faq .faq-more:hover {
		box-shadow: var(--cy-shadow-secondary-hover);
	}
	
	.cy-faq .faq-more:active {
		box-shadow: var(--cy-shadow-secondary-press);
		transform: scale(.96);
		transition-duration: 90ms;
	}
}

@media (max-width: 720px) and (prefers-reduced-motion: reduce) {
	.cy-faq .faq-more {
		transition: none;
	}
	
	.cy-faq .faq-more:active {
		transform: none;
	}
}
