/*! Blue Note Pros — Brand Merger widget styles (ported from html/Blue Note/assets/css/style.css .brand-merger) */
.bnp-brand-merger {
	position: relative;
	background: linear-gradient(180.48deg, rgba(165, 176, 187, 0.8) -18.21%, #FFFFFF 70.03%);
	padding: 122px 0 118px;
	font-family: var(--bnp-font-roboto);
}
.bnp-brand-merger::before {
	content: "";
	background-image: url(../../images/brand-merger-bg.svg);
	position: absolute;
	top: 0;
	left: 0;
	background-repeat: no-repeat;
	background-size: 100%;
	display: block;
	width: 100%;
	height: 100%;
	z-index: -1;
}
.bnp-brand-merger .bnp-container {
	box-sizing: content-box;
	max-width: var(--bnp-container-max, 1200px);
	margin: 0 auto;
	padding-inline: var(--bnp-container-pad);
}

.bnp-brand-merger.bnp-section--full {
	width: 100vw;
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
}
.bnp-brand-merger .bnp-heading-wrp {
	max-width: 787px;
	margin: 0 auto 49px auto;
}
.bnp-brand-merger .bnp-heading-wrp p.bnp-subheading {
	font-family: var(--bnp-font-config);
	font-weight: 400;
	font-size: 20px;
	line-height: 28px;
	letter-spacing: 3%;
	text-align: center;
	color: #052444;
	margin: 0 0 16px 0;
}
.bnp-brand-merger .bnp-heading-wrp h3 {
	font-family: var(--bnp-font-bungee);
	font-weight: 400;
	font-size: 40px;
	line-height: 48px;
	letter-spacing: 4%;
	text-align: center;
	text-transform: uppercase;
	color: #052444;
	text-shadow: 2px 0 0 #00A2BB;
	-webkit-text-stroke: 1px #00A2BB;
	margin: 0 0 24px 0;
}
.bnp-brand-merger .bnp-heading-wrp p.bnp-desc {
	font-family: var(--bnp-font-roboto);
	font-weight: 400;
	font-size: 16px;
	line-height: 24px;
	letter-spacing: 0%;
	text-align: center;
	color: var(--bnp-black);
	margin: 0 0 36px 0;
}
.bnp-brand-merger .bnp-heading-wrp .bnp-btn-wrp {
	text-align: center;
}
.bnp-brand-merger .bnp-heading-wrp .bnp-blue-btn {
	display: inline-flex;
	font-family: var(--bnp-font-roboto);
	align-items: center;
	gap: 8px;
	padding: 12px 17px;
	border: 1px solid #00A1BA;
	box-shadow: 2px 2px 0px 0px #00A2BB;
	border-radius: 8px;
	background: #052444;
	color: #F5F5F5;
	font-weight: 500;
	font-size: 16px;
	line-height: 16px;
	letter-spacing: 3%;
	text-transform: uppercase;
	text-decoration: none;
	transition: background 0.25s ease, color 0.25s ease;
}
.bnp-brand-merger .bnp-heading-wrp .bnp-blue-btn:hover {
	background: var(--bnp-cyan);
}
.bnp-brand-merger .bnp-heading-wrp .bnp-blue-btn img {
	filter: brightness(0) invert(1);
}

.bnp-brand-merger .bnp-board {
	position: relative;
	width: 100%;
	aspect-ratio: 601/493;
	border-radius: 3px;
}

.bnp-brand-merger .bnp-cable {
	position: absolute;
	left: 50%;
	top: -13%;
	bottom: 0;
	width: 18px;
	transform: translate(-50%, 12%);
	z-index: 1;
	pointer-events: none;
}
.bnp-brand-merger .bnp-cable span {
	position: absolute;
	top: 0;
	bottom: 0;
	width: 9px;
	border-radius: 2px;
}
.bnp-brand-merger .bnp-cable span:nth-child(1) { left: -9px; top: 32%; background: #046270; }
.bnp-brand-merger .bnp-cable span:nth-child(2) { left: 7.2px; background: #037D95; }
.bnp-brand-merger .bnp-cable span:nth-child(3) { left: 23.4px; top: 4%; background: #02A1BA; }

.bnp-brand-merger .bnp-dot {
	position: absolute;
	width: 19px;
	height: 19px;
	background: #046270;
	border-radius: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
}
.bnp-brand-merger .bnp-dot.bnp-d1 { left: 54.3%; top: 20.0%; }
.bnp-brand-merger .bnp-dot.bnp-d2 { left: 45.4%; top: 37.9%; }
.bnp-brand-merger .bnp-dot.bnp-d3 {
	left: 49.8%;
	top: 68.9%;
	z-index: 4;
}

.bnp-brand-merger .bnp-card {
	box-sizing: content-box;
	position: absolute;
	background: var(--bnp-white);
	border-radius: 9px;
	box-shadow: 8px 8px 15px 0px #00000040;
	padding: 16px 22px 15px;
	z-index: 3;
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.bnp-brand-merger .bnp-card h4 {
	font-family: var(--bnp-font-config);
	font-weight: 400;
	font-size: 36px;
	line-height: 48px;
	letter-spacing: 3%;
	color: #052444;
	margin: 0 0 16px 0;
}
.bnp-brand-merger .bnp-card p {
	margin: 0 0 6px;
	font-family: var(--bnp-font-roboto);
	font-weight: 400;
	font-size: 14px;
	line-height: 24px;
	letter-spacing: 0%;
	color: var(--bnp-black);
}
.bnp-brand-merger .bnp-card p:last-child { margin-bottom: 0; }

.bnp-brand-merger .bnp-card--plumber {
	left: 55.9%;
	top: 3.05%;
	padding: 53px 71px 25px;
}
.bnp-brand-merger .bnp-logo-plumber {
	display: flex;
	align-items: center;
	gap: 9px;
	flex: none;
	margin-bottom: 20px;
}
.bnp-brand-merger .bnp-logo-plumber img { display: block; flex: none; }

.bnp-brand-merger .bnp-card--redacted {
	left: 0.8%;
	top: 18.9%;
	width: 35.2%;
	height: 31.9%;
	padding: 45px;
}
.bnp-brand-merger .bnp-logo-redacted {
	position: relative;
	display: flex;
	align-items: flex-start;
	gap: 4px;
	flex: none;
	margin-bottom: 24px;
}
.bnp-brand-merger .bnp-logo-redacted img { display: block; flex: none; }

.bnp-brand-merger .bnp-card--bluenote {
	left: 11.8%;
	top: 66%;
	width: 72%;
	height: 34.8%;
	flex-direction: row;
	align-items: center;
	gap: 60px;
}
.bnp-brand-merger .bnp-logo-bluenote {
	position: relative;
	flex: none;
	width: 289px;
	height: 249px;
}
.bnp-brand-merger .bnp-logo-bluenote img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
.bnp-brand-merger .bnp-card--bluenote .bnp-text { flex: 1; min-width: 0; }
.bnp-brand-merger .bnp-card--bluenote .bnp-text h4 { margin-top: 0; }

/* ------------------------------------------------------------------
   Responsive — ported section-wise from html/Blue Note/assets/css/responsive.css
   (SVG-logo / .word / .ghost / .ribbon rules omitted — this widget uses
   image logos, not the reference's inline-SVG constructs.)
   ------------------------------------------------------------------ */
@media (max-width: 1199px) {
	.bnp-brand-merger {
		padding: 90px 0 80px;
	}
	.bnp-brand-merger .bnp-heading-wrp {
		max-width: 640px;
		margin-bottom: 80px;
	}
	.bnp-brand-merger .bnp-heading-wrp p.bnp-subheading {
		font-size: 18px;
		line-height: 26px;
		margin-bottom: 14px;
	}
	.bnp-brand-merger .bnp-card--plumber {
		top: 10.05%;
	}
	.bnp-brand-merger .bnp-card--redacted {
		top: 25%;
	}
	.bnp-brand-merger .bnp-heading-wrp h3 {
		font-size: 32px;
		line-height: 40px;
		margin-bottom: 18px;
	}
	.bnp-brand-merger .bnp-heading-wrp p.bnp-desc {
		font-size: 15px;
		line-height: 23px;
		margin-bottom: 28px;
	}
	.bnp-brand-merger .bnp-heading-wrp .bnp-blue-btn {
		font-size: 14px;
		padding: 10px 14px;
	}
	.bnp-brand-merger .bnp-card h4 {
		font-size: 28px;
		line-height: 36px;
		margin-bottom: 12px;
	}
	.bnp-brand-merger .bnp-card p {
		font-size: 13px;
		line-height: 21px;
	}
	.bnp-brand-merger .bnp-card--plumber {
		padding: 38px 46px 18px;
	}
	.bnp-brand-merger .bnp-card--redacted {
		padding: 30px;
	}
	.bnp-brand-merger .bnp-card--bluenote {
		gap: 32px;
	}
	.bnp-brand-merger .bnp-logo-bluenote {
		width: 210px;
		height: 181px;
	}
	.bnp-brand-merger .bnp-dot {
		width: 15px;
		height: 15px;
	}
	.bnp-brand-merger .bnp-cable {
		width: 14px;
	}
	.bnp-brand-merger .bnp-cable span {
		width: 7px;
	}
}

@media (max-width: 991px) {
	.bnp-brand-merger {
		padding: 70px 0 60px;
	}
	.bnp-brand-merger .bnp-heading-wrp {
		max-width: 520px;
		margin-bottom: 28px;
	}
	.bnp-brand-merger .bnp-heading-wrp p.bnp-subheading {
		font-size: 16px;
		line-height: 22px;
		margin-bottom: 12px;
	}
	.bnp-brand-merger .bnp-heading-wrp h3 {
		font-size: 26px;
		line-height: 34px;
		margin-bottom: 14px;
	}
	.bnp-brand-merger .bnp-heading-wrp p.bnp-desc {
		font-size: 14px;
		line-height: 22px;
		margin-bottom: 20px;
	}
	.bnp-brand-merger .bnp-heading-wrp .bnp-blue-btn {
		font-size: 13px;
		padding: 9px 13px;
	}
	.bnp-brand-merger .bnp-card h4 {
		font-size: 22px;
		line-height: 28px;
		margin-bottom: 10px;
	}
	.bnp-brand-merger .bnp-card p {
		font-size: 12px;
		line-height: 19px;
	}
	.bnp-brand-merger .bnp-card--plumber {
		padding: 26px 28px 14px;
	}
	.bnp-brand-merger .bnp-logo-plumber {
		gap: 7px;
		margin-bottom: 14px;
	}
	.bnp-brand-merger .bnp-card--redacted {
		padding: 20px;
	}
	.bnp-brand-merger .bnp-logo-redacted {
		margin-bottom: 16px;
	}
	.bnp-brand-merger .bnp-card--bluenote {
		gap: 20px;
	}
	.bnp-brand-merger .bnp-logo-bluenote {
		width: 160px;
		height: 138px;
	}
	.bnp-brand-merger .bnp-dot {
		width: 12px;
		height: 12px;
	}
	.bnp-brand-merger .bnp-cable {
		width: 11px;
	}
	.bnp-brand-merger .bnp-cable span {
		width: 5.5px;
	}

	/* Board collapses to a stacked column on tablet & down. */
	.bnp-brand-merger .bnp-board {
		aspect-ratio: auto;
		display: flex;
		flex-direction: column;
		gap: 24px;
	}
	.bnp-brand-merger .bnp-cable,
	.bnp-brand-merger .bnp-dot {
		display: none;
	}
	.bnp-brand-merger .bnp-card {
		position: relative;
		left: auto !important;
		top: auto !important;
		width: 100% !important;
		height: auto !important;
	}
	.bnp-brand-merger .bnp-card--bluenote {
		flex-direction: column;
		text-align: center;
	}
}

@media (max-width: 767px) {
	.bnp-brand-merger {
		padding: 48px 0;
		overflow: hidden;
	}
	.bnp-brand-merger .bnp-heading-wrp {
		width: 100%;
		max-width: 100%;
		margin: 0 0 24px;
	}
	.bnp-brand-merger .bnp-heading-wrp p.bnp-subheading {
		font-size: 14px;
		line-height: 20px;
		margin-bottom: 10px;
	}
	.bnp-brand-merger .bnp-heading-wrp h3 {
		font-size: 22px;
		line-height: 28px;
		letter-spacing: 0.5px;
		-webkit-text-stroke: 0.6px #00a2bb;
		margin-bottom: 14px;
	}
	.bnp-brand-merger .bnp-heading-wrp p.bnp-desc {
		font-size: 13.5px;
		line-height: 20px;
		margin-bottom: 20px;
	}
	.bnp-brand-merger .bnp-heading-wrp .bnp-blue-btn {
		font-size: 12.5px;
		padding: 9px 12px;
	}
	.bnp-brand-merger .bnp-board {
		position: relative;
		width: 100%;
		max-width: 100%;
		height: auto;
		min-height: 0;
		margin: 0;
		padding: 0;
		aspect-ratio: auto;
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 18px;
		transform: none;
		box-sizing: border-box;
	}
	.bnp-brand-merger .bnp-cable,
	.bnp-brand-merger .bnp-dot {
		display: none;
	}
	.bnp-brand-merger .bnp-card,
	.bnp-brand-merger .bnp-card--plumber,
	.bnp-brand-merger .bnp-card--redacted {
		position: relative;
		top: auto;
		right: auto;
		bottom: auto;
		left: auto;
		width: 100%;
		max-width: 100%;
		height: auto;
		min-height: 0;
		margin: 0;
		padding: 22px;
		box-sizing: border-box;
		transform: none;
	}
	.bnp-brand-merger .bnp-logo-plumber {
		justify-content: center;
	}
	.bnp-brand-merger .bnp-logo-redacted {
		justify-content: center;
		margin-bottom: 16px;
	}
	.bnp-brand-merger .bnp-card--bluenote {
		position: relative;
		top: auto;
		left: auto;
		right: auto;
		bottom: auto;
		width: 100%;
		max-width: 100%;
		height: auto;
		margin: 0;
		flex-direction: column;
		align-items: flex-start;
		gap: 16px;
	}
	.bnp-brand-merger .bnp-logo-bluenote {
		width: 150px;
		height: 130px;
		margin: 0 auto;
	}
	.bnp-brand-merger .bnp-card h4 {
		font-size: 20px;
		line-height: 26px;
		margin-bottom: 8px;
	}
	.bnp-brand-merger .bnp-card p {
		font-size: 13px;
		line-height: 19px;
	}
	.bnp-colors-lines .bnp-pink,
	.bnp-colors-lines .bnp-orange,
	.bnp-colors-lines .bnp-green {
		height: 12px;
	}
}

.bnp-colors-lines {
	width: 100vw;
	position: relative;
	left: 50%;
	right: 50%;
	margin-left: -50vw;
	margin-right: -50vw;
	display: flex;
	flex-direction: column;
	gap: 9px;
	background: var(--bnp-white);
	z-index: 10;
	overflow: hidden;
}
.bnp-colors-lines .bnp-pink {
	background: #ED2085;
	width: 100%;
	height: 18px;
}
.bnp-colors-lines .bnp-orange {
	background: #F7941D;
	width: 100%;
	height: 18px;
}
.bnp-colors-lines .bnp-green {
	background: #72BF44;
	width: 100%;
	height: 18px;
}
