.e-con-inner:has(.bb-footer) {
	--padding-block-start: 0px;
	--padding-block-end: 0px;
	padding: 0;
}

html,
body {
	overflow-x: hidden;
}

.bb-footer {
	background: linear-gradient(180deg, var(--bb-color-bg-base) 0%, var(--bb-color-bg-footer-gradient-end) 100%);
	padding: var(--bb-space-5xl) var(--bb-space-xl) var(--bb-space-4xl);
	width: auto;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
}

.bb-footer__inner {
	max-width: 1240px;
	margin: 0 auto;
}

.bb-footer__top {
	display: grid;
	grid-template-columns: 304fr 382fr 361fr;
	column-gap: var(--bb-space-5xl);
	align-items: center;
	margin-bottom: var(--bb-space-4xl);
}

.bb-footer__logo {
	display: flex;
	align-items: center;
	gap: var(--bb-space-sm);
	text-decoration: none;
}

.bb-footer__logo-mark {
	height: 65px;
	width: auto;
}

.bb-footer__logo-word {
	height: 52.6px;
	width: auto;
}

.bb-footer__tagline {
	display: none;
	margin: 0;
	font-family: var(--bb-font-display);
	font-size: var(--bb-font-body-small-size);
	line-height: 1.5;
	color: var(--bb-color-text-muted);
}

.bb-footer__social {
	grid-column: 3;
	justify-self: start;
	display: flex;
	align-items: center;
	gap: var(--bb-space-sm);
	margin: 0;
	padding: 0;
	list-style: none;
}

.bb-footer__social-link {
	display: block;
	line-height: 0;
}

.bb-footer__social-link img {
	display: block;
	width: 31.5215px;
	height: 31.5215px;
}

.bb-footer__columns {
	display: grid;
	grid-template-columns: 304fr 382fr 361fr;
	column-gap: var(--bb-space-5xl);
}

.bb-footer__heading-wrap {
	margin: 0 0 var(--bb-space-xl);
}

.bb-footer__heading {
	margin: 0;
	padding: 0;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--bb-space-md);
	background: transparent;
	border: none;
	box-shadow: none;
	text-align: left;
	cursor: default;
	font-family: var(--bb-font-display);
	font-weight: var(--bb-font-heading-h2-weight);
	font-size: calc(var(--bb-font-heading-h2-size) * 0.8);
	line-height: var(--bb-font-heading-h2-line-height);
	color: var(--bb-color-text-secondary);
}

.bb-footer button.bb-footer__heading {
	background-color: transparent;
	font-family: var(--bb-font-display);
	font-weight: var(--bb-font-heading-h2-weight);
	color: var(--bb-color-text-secondary);
}

.bb-footer__col-icon {
	display: none;
}

.bb-footer__heading--contact {
	margin-top: var(--bb-space-3xl);
}

.bb-footer__copyright {
	margin: var(--bb-space-3xl) 0 0;
	padding-top: var(--bb-space-xl);
	border-top: 1px solid var(--bb-color-border-subtle);
	font-family: var(--bb-font-ui);
	font-size: var(--bb-font-caption-label-size);
	color: var(--bb-color-text-subtle);
}

.bb-footer__links {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: var(--bb-space-sm);
}

.bb-footer__links a,
.bb-footer__address {
	font-family: var(--bb-font-display);
	font-weight: var(--bb-font-body-large-weight);
	font-size: calc(var(--bb-font-body-large-size) * 0.8);
	line-height: var(--bb-font-body-large-line-height);
	color: var(--bb-color-text-placeholder);
}

.bb-footer__links a {
	text-decoration: none;
}

.bb-footer__links a:hover {
	color: var(--bb-color-accent-primary);
}

.bb-footer__address {
	margin: 0 0 var(--bb-space-lg);
}

.bb-footer__address:last-child {
	margin-bottom: 0;
}

.bb-footer__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 246px;
	height: 47px;
	max-width: 100%;
	box-sizing: border-box;
	border-radius: var(--bb-radius-pill);
	background: linear-gradient(90deg, var(--bb-color-accent-gradient-end) 0%, var(--bb-color-accent-primary) 100%);
	font-family: var(--bb-font-display);
	font-weight: 600;
	font-size: clamp(14.92px, calc(11.02px + 0.285vw), 16.5px);
	color: var(--bb-color-accent-on-accent);
	text-decoration: none;
}

@media (max-width: 1024px) {
	.bb-footer__top,
	.bb-footer__columns {
		column-gap: var(--bb-space-4xl);
	}
}

@media (max-width: 768px) {
	.bb-footer__top {
		grid-template-columns: 1fr;
		margin-bottom: 0;
	}

	.bb-footer__logo {
		margin-bottom: var(--bb-space-md);
	}

	.bb-footer__tagline {
		display: block;
		margin-bottom: 40px;
	}

	.bb-footer__social {
		grid-column: 1;
		justify-self: auto;
		margin-bottom: var(--bb-space-3xl);
	}

	.bb-footer__columns {
		grid-template-columns: 1fr;
		row-gap: 0;
	}

	.bb-footer__col-header {
		border-bottom: 1px solid var(--bb-color-border-subtle);
	}

	.bb-footer__heading-wrap {
		margin: 0;
	}

	.bb-footer__heading {
		padding: var(--bb-space-xl) 0;
		cursor: pointer;
	}

	.bb-footer__col-icon {
		display: block;
		flex: 0 0 auto;
		width: 24px;
		height: 24px;
		position: relative;
	}

	.bb-footer__col-icon::before,
	.bb-footer__col-icon::after {
		content: '';
		position: absolute;
		background: var(--bb-color-accent-primary);
	}

	.bb-footer__col-icon::before {
		top: 50%;
		left: 0;
		width: 100%;
		height: 2px;
		transform: translateY(-50%);
	}

	.bb-footer__col-icon::after {
		left: 50%;
		top: 0;
		width: 2px;
		height: 100%;
		transform: translateX(-50%);
	}

	.bb-footer__col.is-open .bb-footer__col-icon {
		transform: rotate(45deg);
	}

	.bb-footer__col-panel {
		max-height: 0;
		overflow: hidden;
		transition: max-height 0.3s ease;
	}

	.bb-footer__col.is-open .bb-footer__col-panel {
		max-height: 600px;
	}

	.bb-footer__links {
		padding-bottom: var(--bb-space-xl);
	}

	.bb-footer__addresses {
		padding-bottom: var(--bb-space-xl);
	}
}

@media (max-width: 767px) {
	.bb-footer {
		padding: var(--bb-space-3xl) var(--bb-space-xl) 40px;
	}

	.bb-footer__cta {
		width: 100%;
		background: var(--bb-color-accent-primary);
	}
}
