/* Final production Home hero media closure. Keep the outer FRAME geometry unchanged. */
.bdn-home-hero{
	isolation:isolate;
	overflow:hidden;
	contain:paint;
	background-image:none;
	background-color:var(--bdn-navy);
}

/*
 * The image and its contrast veil live on one compositor-friendly layer.
 * A slightly oversized canvas prevents exposed edges while the Ken Burns loop
 * pans/zooms. No JS, timers, layout reads or additional network requests.
 */
.bdn-home-hero::before{
	content:"";
	position:absolute;
	inset:-4%;
	z-index:0;
	pointer-events:none;
	background-color:#0b2948;
	background-image:
		linear-gradient(90deg,rgba(4,18,35,.95) 0%,rgba(4,18,35,.78) 43%,rgba(4,18,35,.31) 72%,rgba(4,18,35,.52) 100%),
		var(--bdn-home-hero-image,linear-gradient(135deg,#0b2948 0 34%,#123b61 34% 52%,#071f3f 52% 100%));
	background-repeat:no-repeat;
	background-position:58% 30%;
	background-size:cover;
	transform-origin:62% 42%;
	transform:translate3d(0,0,0) scale(1.02);
	animation:bdnHomeKenBurns 18s cubic-bezier(.45,0,.55,1) infinite alternate;
	will-change:transform;
}

.bdn-home-hero--fallback::before{
	inset:0;
	opacity:1;
	background-image:
		linear-gradient(90deg,rgba(4,18,35,.95),rgba(4,18,35,.58)),
		linear-gradient(135deg,#0b2948 0 34%,#123b61 34% 52%,#071f3f 52% 100%);
	background-position:center;
	background-size:cover;
	transform:none;
	animation:none;
	will-change:auto;
}

.bdn-home-hero__inner{
	position:relative;
	z-index:2;
}

/*
 * Responsive brand accent: flush to the frame edges, geometrically stable,
 * and animated only through transform/background-position. The first gradient
 * is a moving light-line contained by the orange wedge itself.
 */
.bdn-home-hero::after{
	content:"";
	position:absolute;
	right:-1px;
	bottom:-1px;
	width:clamp(300px,29vw,520px);
	height:clamp(230px,28vw,470px);
	z-index:1;
	pointer-events:none;
	opacity:.98;
	clip-path:polygon(24% 100%,100% 31%,100% 100%);
	background:
		linear-gradient(106deg,transparent 0 43%,rgba(255,255,255,0) 45%,rgba(255,255,255,.78) 48%,rgba(255,255,255,.18) 50%,transparent 53%) 135% 0/230% 100% no-repeat,
		linear-gradient(140deg,#ff611f 0%,#ff3b0a 45%,#ef2700 100%);
	transform-origin:100% 100%;
	animation:bdnHomeAccentSweep 8.5s cubic-bezier(.45,0,.55,1) infinite;
	will-change:transform,background-position;
}

@keyframes bdnHomeKenBurns{
	0%{
		transform:translate3d(0,0,0) scale(1.02);
	}
	100%{
		transform:translate3d(-1.35%,.75%,0) scale(1.095);
	}
}

@keyframes bdnHomeAccentSweep{
	0%,16%{
		background-position:135% 0,0 0;
		transform:translate3d(0,0,0) scale(1);
	}
	52%{
		background-position:-72% 0,0 0;
		transform:translate3d(0,-1.5px,0) scale(1.008);
	}
	68%,100%{
		background-position:-72% 0,0 0;
		transform:translate3d(0,0,0) scale(1);
	}
}

@media (max-width:1024px){
	.bdn-home-hero::before{
		background-position:62% 28%;
		transform-origin:66% 42%;
	}
	.bdn-home-hero::after{
		width:clamp(270px,34vw,420px);
		height:clamp(210px,31vw,350px);
		clip-path:polygon(29% 100%,100% 34%,100% 100%);
	}
}

@media (max-width:768px){
	.bdn-home-hero::before{
		inset:-3%;
		background-position:66% 25%;
		transform-origin:70% 44%;
	}
	.bdn-home-hero::after{
		width:min(51vw,350px);
		height:min(39vw,285px);
		clip-path:polygon(34% 100%,100% 37%,100% 100%);
		opacity:.95;
	}
}

@media (max-width:480px){
	.bdn-home-hero::before{
		inset:-2.5%;
		background-position:70% 22%;
	}
	.bdn-home-hero::after{
		width:58vw;
		height:43vw;
		clip-path:polygon(39% 100%,100% 41%,100% 100%);
		opacity:.92;
	}
}

@media (prefers-reduced-motion:reduce){
	.bdn-home-hero::before,
	.bdn-home-hero::after{
		animation:none;
		will-change:auto;
	}
	.bdn-home-hero::before{
		transform:none;
	}
	.bdn-home-hero::after{
		transform:none;
		background-position:8% 0,0 0;
	}
}
