/**
 * Tenbit Addon - FAQ Accordion Widget Styles
 * Author: Team Tenbit Solutions
 */

.tenbit-faq-accordion-wrapper {
	position: relative;
	width: 100%;
	box-sizing: border-box;
}

/* Individual FAQ Item */
.tenbit-faq-item {
	position: relative;
	border-bottom: 1px solid #E5ECF4;
	padding: 22px 0;
	box-sizing: border-box;
	transition: border-color 0.3s ease, background-color 0.3s ease;
}

.tenbit-faq-item:first-child {
	border-top: none;
}

/* FAQ Header / Click Trigger */
.tenbit-faq-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	cursor: pointer;
	user-select: none;
	width: 100%;
	box-sizing: border-box;
	outline: none;
}

/* Question Title */
.tenbit-faq-question-title {
	margin: 0;
	padding: 0 20px 0 0;
	color: #0B2B5C;
	font-family: inherit;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: -0.01em;
	transition: color 0.25s ease;
	flex-grow: 1;
}

.tenbit-faq-header:hover .tenbit-faq-question-title {
	color: #FF5A00;
}

.tenbit-faq-item.is-active .tenbit-faq-question-title {
	color: #FF5A00;
}

/* Circular Plus / Minus Icon */
.tenbit-faq-icon {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	min-width: 32px;
	border-radius: 50%;
	border: 1.5px solid #0B2B5C;
	color: #0B2B5C;
	flex-shrink: 0;
	box-sizing: border-box;
	transition: transform 0.3s ease, border-color 0.3s ease, color 0.3s ease, background-color 0.3s ease;
}

.tenbit-faq-header:hover .tenbit-faq-icon {
	border-color: #FF5A00;
	color: #FF5A00;
	transform: scale(1.06);
}

.tenbit-faq-item.is-active .tenbit-faq-icon {
	border-color: #FF5A00;
	color: #FF5A00;
}

/* Plus/Minus Vector Bars */
.tenbit-icon-bar {
	position: absolute;
	background-color: currentColor;
	border-radius: 1px;
	transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.2s ease;
}

.tenbit-icon-bar.horizontal {
	width: 14px;
	height: 1.8px;
}

.tenbit-icon-bar.vertical {
	width: 1.8px;
	height: 14px;
}

/* When active, vertical line rotates and hides, turning + into - */
.tenbit-faq-item.is-active .tenbit-icon-bar.vertical {
	transform: rotate(90deg);
	opacity: 0;
}

/* Answer Body Container */
.tenbit-faq-body {
	overflow: hidden;
	box-sizing: border-box;
}

/* Answer Text */
.tenbit-faq-answer {
	color: #5A6578;
	font-family: inherit;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.65;
	padding: 14px 40px 6px 0;
	box-sizing: border-box;
}

.tenbit-faq-answer p {
	margin: 0 0 1em 0;
	color: inherit;
	font-size: inherit;
	line-height: inherit;
}

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

/* Responsive */
@media (max-width: 767px) {
	.tenbit-faq-item {
		padding: 18px 0;
	}

	.tenbit-faq-question-title {
		font-size: 15.5px;
	}

	.tenbit-faq-icon {
		width: 28px;
		height: 28px;
		min-width: 28px;
	}

	.tenbit-icon-bar.horizontal {
		width: 12px;
	}

	.tenbit-icon-bar.vertical {
		height: 12px;
	}

	.tenbit-faq-answer {
		font-size: 14.5px;
		padding: 12px 10px 4px 0;
	}
}
