/* LBBC Campus Pro 17.0 — photographic university mega menus. */

/* Built-in header: spacious three-column directory plus photographic feature. */
.site-header .mega-menu-panel {
	top: 100%;
	left: 50%;
	width: 100vw;
	max-width: 100vw;
	padding: 0;
	border-right: 0;
	border-bottom: 1px solid #d8dce5;
	border-left: 0;
	border-radius: 0;
	background: #fff;
	box-shadow: 0 24px 46px rgba(2,11,72,.13);
	transform: translateX(-50%);
}
.site-header .mega-menu-grid {
	display: grid;
	width: min(100% - 80px,1680px);
	min-height: 430px;
	grid-template-columns: repeat(3,minmax(0,.82fr)) minmax(360px,1.32fr);
	gap: 0;
	align-items: stretch;
	margin-inline: auto;
	padding: 48px 0;
}
.site-header .mega-menu-column {
	min-width: 0;
	padding: 3px clamp(30px,3vw,52px);
	border-right: 1px solid #d8dce5;
}
.site-header .mega-menu-column:first-child { padding-left: 0; }
.site-header .mega-menu-column h3 {
	margin: 0 0 25px;
	padding: 0 0 17px;
	border-bottom: 1px solid #d8dce5;
	color: #020b48;
	font-family: Arial,Helvetica,sans-serif;
	font-size: .69rem;
	font-weight: 850;
	letter-spacing: .14em;
	line-height: 1.35;
	text-transform: uppercase;
}
.site-header .mega-menu-column h3::after {
	bottom: -1px;
	width: 44px;
	height: 3px;
	background: #8c0101;
}
.site-header .mega-menu-column > a {
	display: flex;
	min-height: 48px;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	padding: 9px 0;
	color: #343a4d;
	font-size: .78rem;
	font-weight: 650;
	line-height: 1.45;
}
.site-header .mega-menu-column > a:hover { color: #8c0101; }
.site-header .mega-menu-column > a span { color: #7b8190; }
.site-header .mega-menu-benefits p { padding: 9px 0 9px 18px; color: #62697a; font-size: .79rem; line-height: 1.7; }
.site-header .mega-menu-benefits p::before { top: 18px; width: 5px; height: 5px; background: #8c0101; }

/* A real img element guarantees that the feature photograph always renders. */
.site-header .mega-feature-card,
.lbbc-eheader__mega-feature {
	position: relative;
	display: block;
	min-width: 0;
	min-height: 334px;
	margin: 0 0 0 clamp(32px,3.4vw,58px);
	overflow: hidden;
	border: 0;
	border-radius: 0;
	background: #020b48;
	color: #fff;
}
.site-header .mega-feature-card::after,
.lbbc-eheader__mega-feature::after {
	position: absolute;
	inset: 48% 0 0;
	background: rgba(2,11,72,.9);
	content: "";
}
.site-header .mega-feature-card__image,
.lbbc-eheader__mega-feature img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform .5s ease;
}
.site-header .mega-feature-card:hover .mega-feature-card__image,
.lbbc-eheader__mega-feature:hover img { transform: scale(1.025); }
.site-header .mega-feature-card__content,
.lbbc-eheader__mega-feature > span {
	position: absolute;
	z-index: 2;
	right: 28px;
	bottom: 27px;
	left: 28px;
	display: block;
	padding: 0;
}
.site-header .mega-feature-card__content strong,
.lbbc-eheader__mega-feature strong {
	display: block;
	color: #fff;
	font-family: Georgia,"Times New Roman",serif;
	font-size: clamp(1.35rem,1.8vw,1.85rem);
	font-weight: 700;
	line-height: 1.12;
}
.site-header .mega-feature-card__content small,
.lbbc-eheader__mega-feature small {
	display: block;
	max-width: 440px;
	margin-top: 9px;
	color: rgba(255,255,255,.82);
	font-size: .69rem;
	line-height: 1.55;
}
.site-header .mega-feature-card__content b,
.lbbc-eheader__mega-feature b {
	display: inline-block;
	margin-top: 15px;
	padding: 0 0 5px;
	border: 0;
	border-bottom: 1px solid rgba(255,255,255,.75);
	border-radius: 0;
	background: transparent;
	color: #fff;
	font-size: .6rem;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
}

/* Elementor header receives the identical photographic proportions. */
.lbbc-eheader .lbbc-eheader__mega-panel { padding: 0 !important; }
.lbbc-eheader .lbbc-eheader__mega-grid {
	min-height: 430px;
	grid-template-columns: repeat(3,minmax(0,.82fr)) minmax(360px,1.32fr);
	align-items: stretch;
	padding: 48px 0;
}
.lbbc-eheader__mega-column { padding: 3px clamp(30px,3vw,52px); }
.lbbc-eheader__mega-column:first-child { padding-left: 0; }
.lbbc-eheader__mega-column h2 { padding-bottom: 17px; border-bottom: 1px solid #d8dce5; font-family: Arial,Helvetica,sans-serif; font-size: .69rem; font-weight: 850; letter-spacing: .14em; text-transform: uppercase; }
.lbbc-eheader__mega-column a { min-height: 44px; padding: 8px 0; font-size: .76rem; }
.lbbc-eheader__mega-feature { min-height: 334px; }

@media (max-width: 1300px) {
	.site-header .mega-menu-grid,
	.lbbc-eheader .lbbc-eheader__mega-grid { grid-template-columns: repeat(3,minmax(0,1fr)) minmax(290px,1.05fr); }
	.site-header .mega-menu-column,
	.lbbc-eheader__mega-column { padding-inline: 24px; }
	.site-header .mega-feature-card,
	.lbbc-eheader__mega-feature { margin-left: 26px; }
}

@media (max-width: 1100px) {
	.site-header .mega-menu-panel,
	.lbbc-eheader .lbbc-eheader__mega-panel {
		position: static;
		width: 100%;
		max-height: 70vh;
		overflow-y: auto;
		border-top: 0;
		box-shadow: none;
		transform: none;
	}
	.site-header .mega-menu-grid,
	.lbbc-eheader .lbbc-eheader__mega-grid {
		width: 100% !important;
		min-height: 0;
		grid-template-columns: repeat(2,minmax(0,1fr));
		gap: 24px;
		padding: 24px 0;
	}
	.site-header .mega-menu-column,
	.lbbc-eheader__mega-column { padding: 0 18px 18px 0; border-right: 0; border-bottom: 1px solid #d8dce5; }
	.site-header .mega-feature-card,
	.lbbc-eheader__mega-feature { min-height: 260px; margin: 0; }
}

@media (max-width: 760px) {
	.site-header .mega-menu-grid,
	.lbbc-eheader .lbbc-eheader__mega-grid { grid-template-columns: 1fr; }
	.site-header .mega-feature-card,
	.lbbc-eheader__mega-feature { min-height: 240px; }
	.site-header .mega-feature-card__content,
	.lbbc-eheader__mega-feature > span { right: 20px; bottom: 20px; left: 20px; }
}

@media (prefers-reduced-motion: reduce) {
	.site-header .mega-feature-card__image,
	.lbbc-eheader__mega-feature img { transition: none !important; transform: none !important; }
}
