.gp-b2b-footer {
	--gp-b2b-footer-bg: #07111d;
	--gp-b2b-footer-panel: #0f1c2d;
	--gp-b2b-footer-panel-soft: #13253a;
	--gp-b2b-footer-line: rgba(125, 156, 191, 0.2);
	--gp-b2b-footer-line-strong: rgba(125, 156, 191, 0.35);
	--gp-b2b-footer-text: #d6e2f0;
	--gp-b2b-footer-muted: #90a7c1;
	--gp-b2b-footer-heading: #f4f8fc;
	--gp-b2b-footer-accent: #7cb1ff;
	background:
		linear-gradient(rgba(124, 177, 255, 0.06) 1px, transparent 1px),
		linear-gradient(90deg, rgba(124, 177, 255, 0.06) 1px, transparent 1px),
		linear-gradient(180deg, #102033 0%, var(--gp-b2b-footer-bg) 100%);
	background-position: center center;
	background-size: 32px 32px, 32px 32px, auto;
	color: var(--gp-b2b-footer-text);
	margin-top: 72px;
	overflow: hidden;
	position: relative;
}

.gp-b2b-footer::before {
	background:
		radial-gradient(circle at 10% 10%, rgba(124, 177, 255, 0.18), transparent 32%),
		radial-gradient(circle at 90% 12%, rgba(255, 255, 255, 0.08), transparent 22%);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.gp-b2b-footer__compliance-strip,
.gp-b2b-footer__base,
.gp-b2b-footer__grid {
	position: relative;
	z-index: 1;
}

.gp-b2b-footer__compliance-strip {
	background: linear-gradient(180deg, rgba(20, 41, 64, 0.96), rgba(12, 24, 39, 0.96));
	border-bottom: 1px solid var(--gp-b2b-footer-line-strong);
	border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.gp-b2b-footer__compliance-inner {
	display: grid;
	gap: 12px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	padding-bottom: 14px;
	padding-top: 14px;
}

.gp-b2b-footer__compliance-text {
	border-left: 3px solid var(--gp-b2b-footer-accent);
	color: #d9e8f8;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.14em;
	margin: 0;
	padding-left: 12px;
	text-transform: uppercase;
}

.gp-b2b-footer__grid {
	display: grid;
	gap: 0;
	grid-template-columns: 1.25fr 0.8fr 0.8fr 0.9fr 1fr;
	padding-bottom: 0;
	padding-top: 0;
}

.gp-b2b-footer__brand,
.gp-b2b-footer__matrix-column,
.gp-b2b-footer__contact {
	border-right: 1px solid var(--gp-b2b-footer-line);
	min-height: 100%;
	padding: 44px 28px 46px;
}

.gp-b2b-footer__contact {
	border-right: 0;
}

.gp-b2b-footer__brand {
	background: linear-gradient(180deg, rgba(18, 35, 55, 0.96), rgba(10, 18, 29, 0.96));
}

.gp-b2b-footer__matrix-column,
.gp-b2b-footer__contact {
	background: linear-gradient(180deg, rgba(12, 23, 37, 0.94), rgba(7, 17, 29, 0.94));
}

.gp-b2b-footer__brand-mark {
	align-items: center;
	background:
		linear-gradient(135deg, rgba(124, 177, 255, 0.22), rgba(124, 177, 255, 0.06)),
		#0e1a2a;
	border: 1px solid rgba(124, 177, 255, 0.42);
	color: #ffffff;
	display: inline-flex;
	font-family: "Arial Narrow", Arial, sans-serif;
	font-size: 18px;
	font-weight: 700;
	height: 52px;
	justify-content: center;
	letter-spacing: 0.18em;
	margin-bottom: 18px;
	text-indent: 0.18em;
	width: 52px;
}

.gp-b2b-footer__eyebrow {
	color: var(--gp-b2b-footer-accent);
	font-family: "Arial Narrow", Arial, sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.16em;
	margin: 0 0 12px;
	text-transform: uppercase;
}

.gp-b2b-footer__title {
	color: var(--gp-b2b-footer-heading);
	font-family: Georgia, "Times New Roman", serif;
	font-size: 34px;
	font-weight: 700;
	letter-spacing: 0.01em;
	line-height: 1;
	margin: 0 0 18px;
	max-width: 10ch;
}

.gp-b2b-footer__copy,
.gp-b2b-footer__value,
.gp-b2b-footer__empty {
	color: var(--gp-b2b-footer-muted);
	font-size: 14px;
	line-height: 1.75;
}

.gp-b2b-footer__cta {
	margin-top: 22px;
}

.gp-b2b-footer__heading {
	color: var(--gp-b2b-footer-heading);
	font-family: "Arial Narrow", Arial, sans-serif;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.16em;
	margin: 0 0 18px;
	text-transform: uppercase;
}

.gp-b2b-footer__heading::after {
	background: linear-gradient(90deg, var(--gp-b2b-footer-accent), transparent);
	content: "";
	display: block;
	height: 1px;
	margin-top: 10px;
	width: 42px;
}

.gp-b2b-footer__item + .gp-b2b-footer__item {
	margin-top: 18px;
}

.gp-b2b-footer__label {
	color: #7d9cbf;
	display: block;
	font-family: "Arial Narrow", Arial, sans-serif;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.14em;
	margin-bottom: 6px;
	text-transform: uppercase;
}

.gp-b2b-footer__value,
.gp-b2b-footer__value a,
.gp-b2b-footer__list a,
.gp-b2b-footer__social-list a {
	color: var(--gp-b2b-footer-text);
	text-decoration: none;
}

.gp-b2b-footer__list,
.gp-b2b-footer__social-list {
	display: grid;
	gap: 10px;
	list-style: none;
	margin: 0;
	padding: 0;
}

.gp-b2b-footer__social-list--brand {
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-top: 20px;
}

.gp-b2b-footer__list a,
.gp-b2b-footer__social-list a {
	align-items: center;
	border-bottom: 1px solid rgba(255, 255, 255, 0.08);
	display: inline-flex;
	font-size: 13px;
	justify-content: space-between;
	letter-spacing: 0.02em;
	padding-bottom: 10px;
	transition: color 0.2s ease, border-color 0.2s ease, padding-left 0.2s ease;
}

.gp-b2b-footer__list a::after,
.gp-b2b-footer__social-list a::after {
	color: var(--gp-b2b-footer-accent);
	content: "+";
	font-size: 14px;
	font-weight: 700;
}

.gp-b2b-footer__list a:hover,
.gp-b2b-footer__list a:focus,
.gp-b2b-footer__social-list a:hover,
.gp-b2b-footer__social-list a:focus,
.gp-b2b-footer__value a:hover,
.gp-b2b-footer__value a:focus {
	border-color: rgba(124, 177, 255, 0.45);
	color: var(--gp-b2b-footer-accent);
	padding-left: 4px;
}

.gp-b2b-footer__base {
	background: rgba(4, 10, 17, 0.92);
	border-top: 1px solid var(--gp-b2b-footer-line-strong);
}

.gp-b2b-footer__base-inner {
	align-items: center;
	display: flex;
	gap: 18px;
	justify-content: space-between;
	min-height: 66px;
}

.gp-b2b-footer__base p {
	color: #88a2bf;
	font-family: "Arial Narrow", Arial, sans-serif;
	font-size: 12px;
	letter-spacing: 0.12em;
	margin: 0;
	text-transform: uppercase;
}

.gp-b2b-footer__technical-tag {
	color: #d9e8f8;
}

@media (max-width: 1320px) {
	.gp-b2b-footer__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.gp-b2b-footer__contact {
		border-right: 1px solid var(--gp-b2b-footer-line);
	}

	.gp-b2b-footer__grid > :nth-child(3n) {
		border-right: 0;
	}
}

@media (max-width: 900px) {
	.gp-b2b-footer__compliance-inner {
		grid-template-columns: 1fr;
	}

	.gp-b2b-footer__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.gp-b2b-footer__grid > * {
		border-right: 1px solid var(--gp-b2b-footer-line);
	}

	.gp-b2b-footer__grid > :nth-child(2n) {
		border-right: 0;
	}
}

@media (max-width: 640px) {
	.gp-b2b-footer {
		margin-top: 48px;
	}

	.gp-b2b-footer__grid {
		grid-template-columns: 1fr;
	}

	.gp-b2b-footer__brand,
	.gp-b2b-footer__matrix-column,
	.gp-b2b-footer__contact {
		border-right: 0;
		border-top: 1px solid var(--gp-b2b-footer-line);
		padding: 30px 20px 32px;
	}

	.gp-b2b-footer__brand {
		border-top: 0;
	}

	.gp-b2b-footer__title {
		font-size: 28px;
		max-width: none;
	}

	.gp-b2b-footer__social-list--brand {
		grid-template-columns: 1fr;
	}

	.gp-b2b-footer__base-inner {
		align-items: flex-start;
		flex-direction: column;
		justify-content: flex-start;
		padding-bottom: 18px;
		padding-top: 18px;
	}
}
