/* KB Questions & Footer for Elementor — v1.2.0 */

.kbqf-questions,
.kbqf-questions *,
.kbqf-footer,
.kbqf-footer * {
	box-sizing: border-box;
}

.kbqf-questions {
	position: relative;
	width: 100%;
	overflow: hidden;
	background: #f5f5f3;
	font-family: inherit;
}

.kbqf-questions__shell {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	width: 100%;
	margin: 0 auto;
}

.kbqf-questions__content {
	width: 100%;
	min-width: 0;
}

.kbqf-questions__eyebrow {
	display: inline-flex;
	align-items: center;
	width: max-content;
	min-height: 34px;
	margin-bottom: 20px;
	padding: 7px 13px;
	border: 1px solid rgba(41, 41, 41, .12);
	border-radius: 9px;
	background: #fff;
	color: #292929;
	font-size: 13px;
	font-weight: 750;
	line-height: 1;
}

.kbqf-questions__eyebrow::before {
	content: "";
	width: 8px;
	height: 8px;
	margin-right: 9px;
	border-radius: 50%;
	background: #F5593D;
}

.kbqf-questions__title {
	margin: 0;
	color: #292929;
	font-size: clamp(40px, 4vw, 58px);
	font-weight: 800;
	line-height: 1.02;
	letter-spacing: -.045em;
}

.kbqf-questions__title span {
	color: #F5593D;
}

.kbqf-questions__description {
	max-width: 720px;
	color: #737373;
	font-size: 17px;
	line-height: 1.6;
}

.kbqf-questions__description > :first-child {
	margin-top: 0;
}

.kbqf-questions__description > :last-child {
	margin-bottom: 0;
}

.kbqf-benefits {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin-top: 30px;
}

.kbqf-benefit {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
}

.kbqf-benefit__icon {
	display: grid;
	place-items: center;
	width: 32px;
	height: 32px;
	flex: 0 0 32px;
	border-radius: 10px;
	background: #F5593D;
	color: #292929;
	font-size: 13px;
}

.kbqf-benefit__text {
	color: #292929;
	font-size: 14px;
	font-weight: 650;
	line-height: 1.35;
}

.kbqf-contacts {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 30px;
}

.kbqf-contact {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
	padding: 15px;
	border: 1px solid rgba(41, 41, 41, .07);
	border-radius: 16px;
	background: #fff;
	color: inherit;
	text-decoration: none;
	transition: transform .2s ease, box-shadow .2s ease;
}

.kbqf-contact:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 30px rgba(25, 25, 25, .07);
}

.kbqf-contact__icon {
	display: grid;
	place-items: center;
	width: 38px;
	height: 38px;
	flex: 0 0 38px;
	border-radius: 11px;
	background: #F5593D;
	color: #292929;
}

.kbqf-contact__body,
.kbqf-footer-contact > span:last-child {
	min-width: 0;
}

.kbqf-contact__label,
.kbqf-contact__value {
	display: block;
}

.kbqf-contact__label {
	margin-bottom: 3px;
	color: #8b8b8b;
	font-size: 10px;
}

.kbqf-contact__value {
	overflow: hidden;
	color: #292929;
	font-size: 13px;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.kbqf-questions__decor {
	position: absolute;
	left: -170px;
	bottom: -180px;
	width: 340px;
	height: 340px;
	border: 64px solid #F5593D;
	border-radius: 50%;
	opacity: .18;
	pointer-events: none;
}

/* Footer */

.kbqf-footer {
	width: 100%;
	background: #242424;
	color: #fff;
	font-family: inherit;
}

.kbqf-footer__container {
	width: 100%;
	margin: 0 auto;
}

.kbqf-footer__grid {
	display: grid;
	grid-template-columns: minmax(220px, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(250px, 1fr);
	align-items: start;
}

.kbqf-footer__column--geography {
	grid-column: span 2;
}

.kbqf-footer__logo-text {
	color: #F5593D;
	font-size: 28px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: -.03em;
}

.kbqf-footer__logo-image img {
	display: block;
	max-width: 100%;
	height: auto;
}

.kbqf-footer__description {
	max-width: 320px;
	margin: 22px 0 0;
	color: rgba(255,255,255,.62);
	font-size: 14px;
	line-height: 1.55;
}

.kbqf-footer__details {
	margin-top: 24px;
	color: rgba(255,255,255,.42);
	font-size: 10px;
	line-height: 1.55;
}

.kbqf-footer__column-title {
	margin: 0 0 20px;
	color: #fff;
	font-size: 15px;
	font-weight: 750;
	line-height: 1.2;
}


.kbqf-footer__geography {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px 18px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.kbqf-footer__geography span {
	display: block;
	color: rgba(255,255,255,.62);
	font-size: 13px;
	line-height: 1.4;
}

.kbqf-footer__links {
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.kbqf-footer__links a {
	color: rgba(255,255,255,.62);
	font-size: 13px;
	line-height: 1.4;
	text-decoration: none;
	transition: color .2s ease, transform .2s ease;
}

.kbqf-footer__links a:hover {
	display: inline-block;
	color: #F5593D;
	transform: translateX(4px);
}

.kbqf-footer__contacts {
	display: grid;
	gap: 15px;
}

.kbqf-footer-contact {
	display: flex;
	align-items: flex-start;
	gap: 11px;
	color: inherit;
	text-decoration: none;
}

.kbqf-footer-contact__icon {
	display: grid;
	place-items: center;
	width: 32px;
	height: 32px;
	flex: 0 0 32px;
	border-radius: 9px;
	background: rgba(245,89,61,.12);
	color: #F5593D;
	font-size: 12px;
}

.kbqf-footer-contact__label,
.kbqf-footer-contact__value {
	display: block;
}

.kbqf-footer-contact__label {
	margin-bottom: 3px;
	color: rgba(255,255,255,.36);
	font-size: 9px;
}

.kbqf-footer-contact__value {
	color: rgba(255,255,255,.72);
	font-size: 12px;
	line-height: 1.4;
	transition: color .2s ease;
}

.kbqf-footer__bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-top: 54px;
	border-top: 1px solid rgba(255,255,255,.10);
	color: rgba(255,255,255,.42);
	font-size: 10px;
	line-height: 1.4;
}

.kbqf-footer__legal {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	gap: 18px;
}

.kbqf-footer__bottom a {
	color: rgba(255,255,255,.42);
	text-decoration: none;
	transition: color .2s ease;
}

.kbqf-footer__bottom a:hover {
	color: #F5593D;
}


@media (max-width: 1024px) {
	.kbqf-footer__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.kbqf-footer__column--geography {
		grid-column: span 1;
	}
}

@media (max-width: 767px) {
	.kbqf-footer__grid {
		grid-template-columns: 1fr;
	}

	.kbqf-footer__column--geography {
		grid-column: auto;
	}
}

@media (max-width: 1024px) {
	.kbqf-benefits {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 767px) {
	.kbqf-questions__title {
		font-size: 38px;
	}

	.kbqf-questions__description {
		font-size: 15px;
	}

	.kbqf-benefits,
	.kbqf-contacts {
		grid-template-columns: 1fr;
	}

	.kbqf-footer__bottom {
		align-items: flex-start;
		flex-direction: column;
	}

	.kbqf-footer__legal {
		justify-content: flex-start;
		gap: 11px 16px;
	}
}

@media (max-width: 767px) {
	.kbqf-footer__geography {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 9px 14px;
	}
}
