.elementor-widget-ws-faq {
	.ws-elementor-widget-ws-faq {
		.faq {
			background-color: var(--e-global-color-secondarylight);
			border-radius: 14px;
			padding: 40px;

			@media (max-width: 767px) {
				padding: 18px 16px 20px;
			}

			.faq__header {
				display: flex;
				align-items: center;
				justify-content: space-between;
				gap: 16px;
				margin-bottom: 28px;

				@media (max-width: 767px) {
					margin-bottom: 20px;
				}
			}

			.faq__title {
				margin: 0;
				color: var(--e-global-color-main);
				font-family: "Wecasa", sans-serif;
				font-size: 32px;
				font-weight: 700;
				line-height: 1.1;

				@media (max-width: 767px) {
					font-size: 24px;
				}
			}

			.faq__count {
				flex-shrink: 0;
				padding: 4px 14px;
				border-radius: 13px;
				background-color: var(--e-global-color-pastel_purple);
				color: var(--e-global-color-main);
				font-family: "Work Sans", sans-serif;
				font-size: 13px;
				font-weight: 500;
				line-height: 18px;

				@media (max-width: 767px) {
					display: none;
				}
			}

			.faq__items {
				display: flex;
				flex-direction: column;
				gap: 11px;
			}

			.faq__item {
				background-color: var(--e-global-color-white);
				border: 1px solid var(--e-global-color-light_purple);
				border-radius: 12px;
				transition: border-color 0.2s ease;

				&[open] {
					border-color: var(--e-global-color-main);

					.faq__icon {
						background-color: var(--e-global-color-primary);

						&::before {
							background-color: var(--e-global-color-white);
						}

						&::after {
							transform: translate(-50%, -50%) scaleY(0);
						}
					}
				}
			}

			.faq__question {
				display: flex;
				align-items: center;
				justify-content: space-between;
				gap: 16px;
				padding: 18px 19px;
				cursor: pointer;
				list-style: none;

				@media (max-width: 767px) {
					padding: 15px 15px;
				}

				&::-webkit-details-marker {
					display: none;
				}

				&::marker {
					content: "";
				}
			}

			.faq__question-text {
				color: var(--e-global-color-main);
				font-family: "Work Sans", sans-serif;
				font-size: 16px;
				font-weight: 700;
				line-height: 1.35;

				@media (max-width: 767px) {
					font-size: 15px;
				}
			}

			.faq__icon {
				position: relative;
				flex-shrink: 0;
				width: 32px;
				height: 32px;
				border-radius: 50%;
				background-color: var(--e-global-color-pastel_yellow);
				transition: background-color 0.2s ease;

				&::before,
				&::after {
					content: "";
					position: absolute;
					top: 50%;
					left: 50%;
					border-radius: 1px;
					background-color: var(--e-global-color-main);
					transform: translate(-50%, -50%);
					transition: transform 0.2s ease, background-color 0.2s ease;
				}

				&::before {
					width: 12px;
					height: 2px;
				}

				&::after {
					width: 2px;
					height: 12px;
				}
			}

			.faq__answer {
				padding: 0 19px 24px;
				color: var(--e-global-color-text);
				font-family: "Work Sans", sans-serif;
				font-size: 15px;
				font-weight: 400;
				line-height: 1.65;

				@media (max-width: 767px) {
					padding: 0 15px 22px;
					font-size: 14px;
				}

				p {
					margin: 0 0 12px;

					&:last-child {
						margin-bottom: 0;
					}
				}

				a {
					color: var(--e-global-color-primary);
					text-decoration: underline;
				}
			}
		}
	}
}
