/* FoC AEO - FAQ block.
   Scoped under .foc-faq so nothing here can reach Enfold's own styles.
   Inherits the theme's typography deliberately; only layout is set here. */

.foc-faq {
	margin: 2em 0;
}

.foc-faq__heading {
	margin-bottom: 0.75em;
}

.foc-faq__item {
	border-bottom: 1px solid rgba(128, 128, 128, 0.25);
	padding: 0;
}

.foc-faq__item:first-of-type {
	border-top: 1px solid rgba(128, 128, 128, 0.25);
}

.foc-faq__summary {
	cursor: pointer;
	padding: 0.85em 2em 0.85em 0;
	position: relative;
	list-style: none;
}

/* Hide the native disclosure triangle in both engines. */
.foc-faq__summary::-webkit-details-marker {
	display: none;
}

.foc-faq__summary::marker {
	content: "";
}

.foc-faq__summary:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}

/* Our own +/- indicator, rotated on open. */
.foc-faq__summary::after {
	content: "";
	position: absolute;
	right: 0.35em;
	top: 50%;
	width: 0.55em;
	height: 0.55em;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: translateY(-70%) rotate(45deg);
	transition: transform 0.18s ease;
	opacity: 0.6;
}

.foc-faq__item[open] > .foc-faq__summary::after {
	transform: translateY(-30%) rotate(225deg);
}

.foc-faq__q {
	display: inline;
	margin: 0;
	font-size: 1.05em;
	line-height: 1.4;
}

.foc-faq__a {
	padding: 0 2em 1.1em 0;
}

.foc-faq__a p {
	margin: 0;
}

@media (prefers-reduced-motion: reduce) {
	.foc-faq__summary::after {
		transition: none;
	}
}

/* FoC_Cookie_Consent - footer opt-out control. Inherits theme
   typography/links; only layout is set here, same rule as the FAQ block above. */
.foc-cookie-consent {
	font-size: 0.85em;
}

.foc-cookie-consent__button {
	background: none;
	border: none;
	padding: 0;
	color: inherit;
	text-decoration: underline;
	cursor: pointer;
	font-size: inherit;
	font-family: inherit;
}

.foc-cookie-consent__button:disabled {
	cursor: default;
	opacity: 0.6;
}

.foc-cookie-consent__button:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 2px;
}
