.dj-contact-info-banner {
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	padding: 80px 24px 0;
	background: var(--color-white);
	box-sizing: border-box;
	overflow: hidden;
}

.dj-contact-info-banner-inner {
	width: min(1600px, 100%);
	max-width: 1600px !important;
	margin: 0 auto;
	background: var(--color-neutral-50);
	border: 1px solid var(--color-neutral-100);
	padding: 40px 160px 40px;
	box-sizing: border-box;
}

.dj-contact-info-banner-title {
	color: var(--color-black);
	font-size: 33px;
	font-weight: 800 !important;
	line-height: 40px;
	letter-spacing: -0.66px;
	text-transform: capitalize;
	margin: 0 0 24px;
}

.dj-contact-info-banner-divider {
	margin: 0 0 48px !important;
	border: 0 !important;
	height: 1px !important;
	background: var(--color-neutral-200) !important;
	max-width: none !important;
}

.dj-contact-info-banner-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 80px;
	margin: 0;
}

.dj-contact-info-banner-item {
	margin: 0;
}

.dj-contact-info-banner-label {
	color: var(--color-black);
	font-size: 20px;
	font-weight: 800 !important;
	line-height: 28px;
	letter-spacing: -0.4px;
	margin: 0 0 16px;
}

.dj-contact-info-banner-value {
	color: var(--color-black);
	font-size: 18px;
	font-weight: 400;
	line-height: 20px;
	margin: 0;
}

.dj-contact-info-banner-value a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.dj-contact-info-banner-value a:hover {
	color: var(--color-primary-500);
}

@media (max-width: 1135px) {
	.dj-contact-info-banner {
		padding: 80px 40px 0;
	}

	.dj-contact-info-banner-divider {
		margin-bottom: 24px !important;
	}

	.dj-contact-info-banner-inner {
		padding: 40px;
	}

	.dj-contact-info-banner-grid {
		grid-template-columns: 1fr;
		gap: 40px;
	}
}

@media (max-width: 767px) {
	.dj-contact-info-banner {
		padding: 48px 16px 0;
	}

	.dj-contact-info-banner-inner {
		padding: 24px;
	}

	.dj-contact-info-banner-title {
		font-size: 21px;
		line-height: 28px;
		letter-spacing: -0.42px;
		margin-bottom: 16px;
	}

	.dj-contact-info-banner-divider {
		margin-bottom: 16px !important;
	}

	.dj-contact-info-banner-grid {
		gap: 24px;
	}

	.dj-contact-info-banner-label {
		font-size: 18px;
		line-height: 24px;
		letter-spacing: -0.36px;
		margin-bottom: 8px;
	}
}

/* =============================
   Contact Info Banner - Editor Styles
============================= */

.editor-styles-wrapper .dj-contact-info-banner {
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 80px 24px 0 !important;
	background: var(--color-white);
	box-sizing: border-box;
	overflow: hidden;
}

.editor-styles-wrapper .dj-contact-info-banner-inner {
	width: 100% !important;
	max-width: 1600px !important;
	margin: 0 auto !important;
	background: var(--color-neutral-50);
	border: 1px solid var(--color-neutral-100);
	padding: 40px 160px 40px;
	box-sizing: border-box;
}

.editor-styles-wrapper .dj-contact-info-banner-title {
	color: var(--color-black);
	font-size: 33px;
	font-weight: 800 !important;
	line-height: 40px;
	letter-spacing: -0.66px;
	text-transform: capitalize;
	margin: 0 0 24px;
}

.editor-styles-wrapper .dj-contact-info-banner-divider {
	margin: 0 0 48px !important;
	border: 0 !important;
	height: 1px !important;
	background: var(--color-neutral-200) !important;
	max-width: none !important;
}

.editor-styles-wrapper .dj-contact-info-banner-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 80px;
	margin: 0;
}

.editor-styles-wrapper .dj-contact-info-banner-item {
	margin: 0;
}

.editor-styles-wrapper .dj-contact-info-banner-label {
	color: var(--color-black);
	font-size: 20px;
	font-weight: 800 !important;
	line-height: 28px;
	letter-spacing: -0.4px;
	margin: 0 0 16px;
}

.editor-styles-wrapper .dj-contact-info-banner-value {
	color: var(--color-black);
	font-size: 18px;
	font-weight: 400;
	line-height: 20px;
	margin: 0;
}

.editor-styles-wrapper .dj-contact-info-banner-value a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.editor-styles-wrapper .dj-contact-info-banner-value a:hover {
	color: var(--color-primary-500);
}

@media (max-width: 1135px) {
	.editor-styles-wrapper .dj-contact-info-banner {
		padding: 80px 40px 0 !important;
	}

	.editor-styles-wrapper .dj-contact-info-banner-divider {
		margin-bottom: 24px !important;
	}

	.editor-styles-wrapper .dj-contact-info-banner-inner {
		padding: 40px;
	}

	.editor-styles-wrapper .dj-contact-info-banner-grid {
		grid-template-columns: 1fr;
		gap: 40px;
	}
}

@media (max-width: 767px) {
	.editor-styles-wrapper .dj-contact-info-banner {
		padding: 48px 16px 0 !important;
	}

	.editor-styles-wrapper .dj-contact-info-banner-inner {
		padding: 24px;
	}

	.editor-styles-wrapper .dj-contact-info-banner-title {
		font-size: 21px;
		line-height: 28px;
		letter-spacing: -0.42px;
		margin-bottom: 16px;
	}

	.editor-styles-wrapper .dj-contact-info-banner-divider {
		margin-bottom: 16px !important;
	}

	.editor-styles-wrapper .dj-contact-info-banner-grid {
		gap: 24px;
	}

	.editor-styles-wrapper .dj-contact-info-banner-label {
		font-size: 18px;
		line-height: 24px;
		letter-spacing: -0.36px;
		margin-bottom: 8px;
	}
}