.wp-block-ai-faq-master-ai-faq-accordion.ai-faq-master,
.ai-faq-master {
	--ai-faq-accent: #e91e63;
	--ai-faq-ink: #1f1728;
	--ai-faq-muted: #6f6577;
	--ai-faq-border: rgba(31, 23, 40, 0.1);
	--ai-faq-surface: linear-gradient(180deg, #fffefe 0%, #fff7fa 100%);
	--ai-faq-icon-size: 38px;
	--ai-faq-icon-offset: 3px;
	--ai-faq-heading-size: clamp(2rem, 4vw, 3.1rem);
	--ai-faq-heading-family: Georgia, "Times New Roman", serif;
	--ai-faq-heading-weight: 800;
	--ai-faq-question-size: clamp(1.25rem, 2vw, 1.65rem);
	--ai-faq-question-family: Georgia, "Times New Roman", serif;
	--ai-faq-question-weight: 700;
	--ai-faq-answer-size: 1.02rem;
	--ai-faq-answer-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--ai-faq-answer-weight: 400;
	--ai-faq-answer-gap: 4px;
	--ai-faq-item-gap: 12px;
	color: var(--ai-faq-ink);
}

.ai-faq-master--boxed {
	background: var(--ai-faq-surface);
	border: 1px solid rgba(233, 30, 99, 0.08);
	border-radius: 32px;
	box-shadow: 0 24px 60px rgba(31, 23, 40, 0.08);
	padding: clamp(1.5rem, 3vw, 3rem);
}

.ai-faq-master--plain {
	padding: 0;
}

.ai-faq-master .ai-faq-master__heading,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__heading {
	color: var(--ai-faq-ink);
	font-family: var(--ai-faq-heading-family);
	font-size: var(--ai-faq-heading-size);
	font-weight: var(--ai-faq-heading-weight);
	letter-spacing: -0.04em;
	line-height: 1.05;
	margin: 0 0 1rem !important;
}

.ai-faq-master--dividers .ai-faq-master__items {
	border-bottom: 1px solid var(--ai-faq-border);
}

.ai-faq-master--dividers .ai-faq-master__item {
	border-top: 1px solid var(--ai-faq-border);
}

.ai-faq-master--no-dividers .ai-faq-master__items,
.ai-faq-master--no-dividers .ai-faq-master__item {
	border: 0;
}

.ai-faq-master .ai-faq-master__question-wrap,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__question-wrap {
	font-size: inherit;
	margin: 0;
}

.ai-faq-master .ai-faq-master__trigger,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__trigger {
	align-items: flex-start;
	background: transparent;
	border: 0;
	color: var(--ai-faq-ink) !important;
	cursor: pointer;
	display: grid;
	gap: 1.125rem;
	grid-template-columns: auto 1fr;
	padding: 0;
	text-align: left;
	width: 100%;
}

.ai-faq-master .ai-faq-master__trigger:focus-visible,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__trigger:focus-visible {
	outline: 3px solid rgba(233, 30, 99, 0.28);
	outline-offset: 6px;
}

.ai-faq-master .ai-faq-master__icon,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__icon {
	align-items: center;
	background: rgba(233, 30, 99, 0.08);
	border-radius: 999px;
	display: inline-flex;
	height: var(--ai-faq-icon-size);
	justify-content: center;
	margin-top: var(--ai-faq-icon-offset);
	position: relative;
	width: var(--ai-faq-icon-size);
}

.ai-faq-master .ai-faq-master__icon-line,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__icon-line {
	background: var(--ai-faq-accent);
	border-radius: 99px;
	position: absolute;
	transition: opacity 160ms ease, transform 160ms ease;
}

.ai-faq-master .ai-faq-master__icon-line--horizontal,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__icon-line--horizontal {
	height: 2px;
	width: calc(var(--ai-faq-icon-size) * 0.42);
}

.ai-faq-master .ai-faq-master__icon-line--vertical,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__icon-line--vertical {
	height: calc(var(--ai-faq-icon-size) * 0.42);
	width: 2px;
}

.ai-faq-master .ai-faq-master__trigger[aria-expanded="true"] .ai-faq-master__icon-line--vertical,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__trigger[aria-expanded="true"] .ai-faq-master__icon-line--vertical {
	opacity: 0;
	transform: scaleY(0.4);
}

.ai-faq-master .ai-faq-master__question,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__question {
	color: var(--ai-faq-ink);
	font-family: var(--ai-faq-question-family);
	font-size: var(--ai-faq-question-size);
	font-weight: var(--ai-faq-question-weight);
	letter-spacing: -0.02em;
	line-height: 1.25;
}

.ai-faq-master .ai-faq-master__panel,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__panel {
	padding: 0 0 0 3.55rem;
}

.ai-faq-master .ai-faq-master__item + .ai-faq-master__item,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__item + .ai-faq-master__item {
	margin-top: var(--ai-faq-item-gap);
}

.ai-faq-master .ai-faq-master__panel[hidden],
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__panel[hidden] {
	display: none;
}

.ai-faq-master .ai-faq-master__answer,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__answer {
	color: var(--ai-faq-muted);
	font-family: var(--ai-faq-answer-family);
	font-size: var(--ai-faq-answer-size);
	font-weight: var(--ai-faq-answer-weight);
	line-height: 1.75;
	margin-top: var(--ai-faq-answer-gap) !important;
	max-width: 72ch;
}

.ai-faq-master__answer > :first-child {
	margin-top: 0 !important;
}

.ai-faq-master .ai-faq-master__answer > *,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__answer > * {
	margin-bottom: 0 !important;
	margin-top: 0 !important;
}

.ai-faq-master .ai-faq-master__answer > * + *,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__answer > * + * {
	margin-top: 0.46em !important;
}

.ai-faq-master .ai-faq-master__answer p,
.ai-faq-master .ai-faq-master__answer ul,
.ai-faq-master .ai-faq-master__answer ol,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__answer p,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__answer ul,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__answer ol {
	margin: 0 !important;
}

.ai-faq-master .ai-faq-master__answer ul,
.ai-faq-master .ai-faq-master__answer ol,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__answer ul,
.wp-block-ai-faq-master-ai-faq-accordion .ai-faq-master__answer ol {
	padding-left: 1.2em;
}

.ai-faq-master__answer > :last-child {
	margin-bottom: 0;
}

.ai-faq-master__answer a {
	color: var(--ai-faq-accent);
	text-decoration-thickness: 1.5px;
	text-underline-offset: 0.14em;
}

@media (max-width: 782px) {
	.wp-block-ai-faq-master-ai-faq-accordion.ai-faq-master,
	.ai-faq-master--boxed {
		border-radius: 24px;
		padding: 1.25rem;
	}

	.ai-faq-master__trigger {
		gap: 0.9rem;
		padding: 0;
	}

	.ai-faq-master__icon {
		height: min(2.1rem, var(--ai-faq-icon-size));
		width: min(2.1rem, var(--ai-faq-icon-size));
	}

	.ai-faq-master__panel {
		padding-left: 3rem;
	}
}
