/*--------------------------------------------------------------
# Elementor widget: FAQ Section
# Figma: Wireframes > Section node 583:3479 (desktop), 583:3980 (mobile)
# Markup follows the WAI-ARIA APG accordion pattern; see js/widgets/faq-section.js.
--------------------------------------------------------------*/
/* Elementor flex containers size widgets to their content; the accordion
   must always span the full width so the icon sits at the right edge. */
.elementor-widget-mwc-faq-section {
	flex-grow: 1;
	width: 100%;
}
.elementor-widget-mwc-faq-section > .elementor-widget-container {
	width: 100%;
}
.mwc-faq {
	box-sizing: border-box;
	width: 100%;
	padding: 80px 20px;
	font-family: var(--font-sans, "Open Sans", sans-serif);
}
.mwc-faq__inner {
	display: flex;
	flex-direction: column;
	gap: 24px;
	width: 100%;
	max-width: 820px;
	margin: 0 auto;
}
.mwc-faq__list {
	width: 100%;
}

/* Scoped to beat the global h2/h3/p/li rules in customize.css and Elementor kit styles. */
.mwc-faq .mwc-faq__title {
	margin: 0;
	padding: 0;
	color: #12271D; /* Secondary/Dark Green */
	font-family: var(--font-sans, "Open Sans", sans-serif);
	font-stretch: 75%;
	font-size: 28px; /* Desktop/H4 */
	font-weight: 700;
	font-style: normal;
	line-height: 1.2 !important;
	letter-spacing: 0;
	text-align: center;
	text-transform: none;
}

/* Accordion item */
.mwc-faq .mwc-faq__item {
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 16px 0 17px;
	border-bottom: 1px solid var(--cream, #F7F4EA);
}
/* The question heading only provides document structure; the button inside
   carries all of the visual styling. */
.mwc-faq .mwc-faq__heading {
	margin: 0;
	padding: 0;
	font-size: inherit;
	line-height: inherit;
	letter-spacing: 0;
	text-transform: none;
}

/* Question button: reset theme/Elementor kit button styles, then style per Figma. */
.mwc-faq .mwc-faq__item .mwc-faq__question {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	box-sizing: border-box;
	width: 100%;
	min-height: 24px;
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
	box-shadow: none;
	color: #8F5F17; /* Accent/Amber on Lg Bg */
	font-family: var(--font-sans, "Open Sans", sans-serif);
	font-size: 16px;
	font-weight: 600;
	line-height: 1.36;
	letter-spacing: 0;
	text-align: left;
	text-transform: none;
	white-space: normal;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
}
.mwc-faq .mwc-faq__item .mwc-faq__question:hover,
.mwc-faq .mwc-faq__item .mwc-faq__question:focus,
.mwc-faq .mwc-faq__item .mwc-faq__question:active {
	border: 0;
	background: none;
	box-shadow: none;
	color: #8F5F17;
}
.mwc-faq .mwc-faq__item .mwc-faq__question:hover .mwc-faq__question-text {
	text-decoration: underline;
	text-underline-offset: 3px;
}
.mwc-faq .mwc-faq__item .mwc-faq__question:focus {
	outline: none;
}
.mwc-faq .mwc-faq__item .mwc-faq__question:focus-visible {
	outline: 2px solid #1B3A2B; /* Primary/Forest Green */
	outline-offset: 4px;
	border-radius: 2px;
}
.mwc-faq .mwc-faq__question-text {
	flex: 1 1 0;
	min-width: 0;
	text-align: left;
}
.mwc-faq .mwc-faq__icon {
	display: block;
	flex: 0 0 24px;
	margin-left: auto;
	width: 24px;
	height: 24px;
	color: #1B3A2B; /* Primary/Forest Green */
}
/* Open: the plus becomes a minus. */
.mwc-faq__question[aria-expanded="true"] .mwc-faq__icon-v {
	display: none;
}

/* Figma's 16px gap is measured on trimmed text boxes; 10px matches visually. */
.mwc-faq__answer {
	margin-top: 10px;
	padding-right: 60px;
	color: #5B6157; /* Secondary/Text Green */
	font-family: var(--font-sans, "Open Sans", sans-serif);
	font-size: 14px;
	font-weight: 400;
	line-height: 1.5;
}
.mwc-faq .mwc-faq__answer[hidden] {
	display: none;
}
.mwc-faq .mwc-faq__answer p,
.mwc-faq .mwc-faq__answer li {
	margin: 0;
	color: inherit;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}
.mwc-faq .mwc-faq__answer p + p,
.mwc-faq .mwc-faq__answer ul,
.mwc-faq .mwc-faq__answer ol {
	margin-top: 0.75em;
}
.mwc-faq .mwc-faq__answer ul,
.mwc-faq .mwc-faq__answer ol {
	margin-bottom: 0;
	padding-left: 1.25em;
}
.mwc-faq .mwc-faq__answer a {
	color: #1B3A2B;
	box-shadow: none;
	text-decoration: underline;
}
.mwc-faq .mwc-faq__answer a:focus-visible {
	outline: 2px solid #1B3A2B;
	outline-offset: 2px;
}

/* Windows High Contrast / forced colours: keep the focus ring and icon visible. */
@media (forced-colors: active) {
	.mwc-faq .mwc-faq__item .mwc-faq__question:focus-visible {
		outline-color: Highlight;
	}
	.mwc-faq .mwc-faq__icon {
		color: ButtonText;
	}
}

/* Printed pages show every answer. */
@media print {
	.mwc-faq .mwc-faq__answer[hidden] {
		display: block;
	}
	.mwc-faq .mwc-faq__icon {
		display: none;
	}
}

/* Mobile (Figma node 583:3980) */
@media screen and (max-width: 600px) {
	.mwc-faq {
		padding: 80px 24px;
	}
	.mwc-faq .mwc-faq__title {
		font-size: 26px; /* Mobile/H4 */
	}
	.mwc-faq .mwc-faq__item {
		padding: 19px 0 20px; /* Figma 24/25px, measured on trimmed text boxes */
	}
	.mwc-faq__answer {
		padding-right: 24px;
	}
}
