/* PFH Quick Quotes — extracted 1:1 from the live PFH theme stylesheet, with
 * Bootstrap 4 nav-pills/tab-pane primitives reduced to the rules this widget
 * actually uses, so it works without Bootstrap on the new Elementor site.
 */

.section--quick-quotes,
.section--quick-quotes * {
	box-sizing: border-box;
}
.section--quick-quotes {
	padding: 64px 0;
}
.section--quick-quotes .container-fluid {
	width: 100%;
	margin: 0 auto;
	padding: 0 20px;
}
@media (min-width: 1200px) {
	.section--quick-quotes .container-fluid {
		max-width: 1300px;
	}
}
.section--quick-quotes .row {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -20px;
}
.section--quick-quotes [class*="col-"] {
	padding: 0 20px;
	flex: 0 0 100%;
	max-width: 100%;
}
@media (min-width: 992px) {
	.section--quick-quotes .col-lg-9  { flex: 0 0 75%;  max-width: 75%; }
	.section--quick-quotes .offset-lg-1 { margin-left: 8.333%; }
}

/* ===== Quick Quotes box ===== */
.quick-quotes {
	display: flex;
}
.quick-quotes h3 {
	margin-bottom: 24px;
	font-size: 28px;
	font-weight: 700;
	color: #0E1F70;
	line-height: 1.2;
}
.quick-quotes p {
	margin: 0 0 16px;
	color: #333;
	line-height: 1.6;
}
.quick-quotes > img {
	align-self: flex-start;
	max-width: 240px;
	height: auto;
}
.quick-quotes form {
	max-width: 500px;
}
.quick-quotes .form-group {
	display: flex;
	flex-direction: column;
}

@media (max-width: 767px) {
	.quick-quotes {
		flex-direction: column;
	}
	.quick-quotes > img {
		max-width: 160px;
		margin-bottom: 24px;
	}
}

.quick-quotes__content {
	margin-left: 8.333%;
	width: 100%;
}
@media (max-width: 767px) {
	.quick-quotes__content {
		margin-left: 0;
	}
}

.quick-quotes__heading p {
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #4285F4;
	margin-bottom: 8px;
}

.quick-quotes__description {
	margin-bottom: 24px;
}

/* ===== Pills (Bootstrap 4 subset) ===== */
.quick-quotes .nav-pills {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	margin: 0 0 40px;
	padding: 0;
	list-style: none;
	gap: 16px;
}
.quick-quotes .nav-item {
	width: calc(25% - 16px);
	margin-top: 8px;
	margin-bottom: 8px;
	transition: 300ms all;
	border-radius: 10px;
	box-shadow: 0 3px 10px 0 rgba(0, 0, 0, 0.1);
	background: #fff;
}
.quick-quotes .nav-item:hover {
	box-shadow: 0 4px 12px 0 rgba(0, 0, 0, 0.2);
}
.quick-quotes .nav-item a {
	font-size: 18px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	padding: 40px 16px;
	color: #0E1F70;
	text-decoration: none;
	text-align: center;
}
.quick-quotes .nav-item a span {
	display: block;
}
.quick-quotes .nav-item a img,
.quick-quotes .nav-item a svg {
	margin-bottom: 8px;
	max-width: 64px;
	height: auto;
}
.quick-quotes .nav-link {
	border-radius: 10px;
	transition: background-color 200ms, color 200ms;
}
.quick-quotes .nav-link:hover {
	color: #4285F4;
}
.quick-quotes .nav-link.active {
	background-color: #0E1F70;
	color: #fff;
}
.quick-quotes .nav-link.active span {
	color: #fff;
}
.quick-quotes .nav-link.active img {
	filter: brightness(0) invert(1);
}
.quick-quotes .nav-item:has(.nav-link.active) {
	box-shadow: 0 6px 18px 0 rgba(14, 31, 112, 0.25);
}

@media (max-width: 991px) {
	.quick-quotes .nav-item { width: calc(50% - 16px); }
}
@media (max-width: 575px) {
	.quick-quotes .nav-item { width: 100%; }
}

/* ===== Tab content (Bootstrap 4 subset) ===== */
.quick-quotes .tab-content > .tab-pane {
	display: none;
}
.quick-quotes .tab-content > .tab-pane.active {
	display: block;
}
.quick-quotes .fade {
	transition: opacity 0.15s linear;
}
.quick-quotes .fade:not(.show) {
	opacity: 0;
}

/* ===== Step indicator ===== */
.quick-quotes__status {
	display: flex;
	align-items: center;
	margin-top: 24px;
	margin-bottom: 24px;
}
.quick-quotes__step {
	width: 100px;
	height: 8px;
	border-radius: 50px;
	background-color: #F2F2F2;
	transition: background-color 200ms;
}
.quick-quotes__step.is-active {
	background-color: #0E1F70;
}
.quick-quotes__step + .quick-quotes__step {
	margin-left: 8px;
}

.quick-quotes-back {
	cursor: pointer;
}
