/* BackBoard site enhancements: quick-start form, How It Works switch. */

/* ---------- How It Works switch: the selected option ---------- */
.elementor .bb-flow-tab.e--selected {
	background-color: #1A2229;
	color: #FFFFFF;
	box-shadow: 0 2px 6px rgba(26, 34, 41, 0.06), 0 1px 2px rgba(26, 34, 41, 0.04);
}
.elementor .bb-flow-tab.e--selected:hover {
	color: #FFFFFF;
}
.elementor .bb-flow-tab:focus-visible {
	outline: 3px solid #F94C72;
	outline-offset: 3px;
}

/* ---------- Quick-start consultation form ---------- */
.bb-qf {
	display: grid;
	gap: 0.95rem;
	width: 100%;
	font-family: Montserrat, "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.bb-qf__field {
	display: grid;
	gap: 0.4rem;
	min-width: 0;
}
.bb-qf__label {
	font-weight: 600;
	font-size: 0.82rem;
	line-height: 1.4;
	color: #4D4D4D;
	letter-spacing: 0.01em;
}
.bb-qf__input,
.bb-qf__select {
	font-family: inherit;
	font-size: 1rem;
	line-height: 1.4;
	width: 100%;
	min-width: 0;
	color: #1A2229;
	background-color: #FFFFFF;
	border: 1.5px solid #DCD4C7;
	border-radius: 9px;
	padding: 0.85rem 1rem;
	box-sizing: border-box;
	transition: border-color 0.2s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.bb-qf__input::placeholder {
	color: #A8A199;
}
.bb-qf__input:hover,
.bb-qf__select:hover {
	border-color: #D6CBBB;
}
.bb-qf__input:focus,
.bb-qf__select:focus {
	outline: none;
	border-color: #F94C72;
	box-shadow: 0 0 0 4px rgba(249, 76, 114, 0.16);
}
.bb-qf__select {
	appearance: none;
	-webkit-appearance: none;
	cursor: pointer;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%234D4D4D' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: right 1rem center;
	padding-right: 2.4rem;
}
.bb-qf__field.is-error .bb-qf__input {
	border-color: #C0392B;
	box-shadow: 0 0 0 4px rgba(192, 57, 43, 0.1);
}
.bb-qf__err {
	font-size: 0.8rem;
	line-height: 1.4;
	color: #C0392B;
	font-weight: 600;
	margin: 0;
}
.bb-qf__err[hidden] {
	display: none;
}
.bb-qf__submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	font-family: inherit;
	font-weight: 600;
	font-size: 1.06rem;
	line-height: 1.3;
	letter-spacing: 0.005em;
	padding: 1.15rem 2.3rem;
	border-radius: 999px;
	border: 2px solid #F94C72;
	background-color: #F94C72;
	color: #FFFFFF;
	cursor: pointer;
	box-shadow: 0 2px 6px rgba(26, 34, 41, 0.06), 0 1px 2px rgba(26, 34, 41, 0.04);
	transition: background-color 0.25s cubic-bezier(0.16, 1, 0.3, 1), transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}
.bb-qf__submit:hover {
	background-color: #F2305A;
	border-color: #F2305A;
	transform: translateY(-2px);
	box-shadow: 0 8px 24px rgba(26, 34, 41, 0.09), 0 2px 6px rgba(26, 34, 41, 0.05);
}
.bb-qf__submit:focus-visible {
	outline: 3px solid #F94C72;
	outline-offset: 3px;
}
.bb-qf__submit[disabled] {
	opacity: 0.75;
	cursor: progress;
	transform: none;
}
.bb-qf__note {
	font-size: 0.85rem;
	line-height: 1.5;
	font-weight: 500;
	color: #4D4D4D;
	margin: 0;
}
@media (prefers-reduced-motion: reduce) {
	.bb-qf__submit,
	.bb-qf__submit:hover {
		transition: none;
		transform: none;
	}
}
