.light-banner {
	position: relative;
	overflow: hidden;
	display: flex;
	align-items: center;
	min-height: var(--light-banner-min-height, 180px);
	padding: var(--light-banner-pad-top, 40px) var(--light-banner-pad-right, 32px) var(--light-banner-pad-bottom, 40px) var(--light-banner-pad-left, 32px);
	border-radius: var(--light-banner-radius, 16px);
	background: linear-gradient(
		var(--light-banner-angle, 120deg),
		var(--light-banner-from, #1f2937),
		var(--light-banner-to, #0f766e)
	);
	color: #fff;
}

.light-banner.is-solid {
	background: var(--light-banner-solid, #1f2937);
}

.light-banner__bg {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 0;
}

.light-banner.has-image::after {
	content: "";
	position: absolute;
	inset: 0;
	background: #000;
	opacity: var(--light-banner-overlay, 0.35);
	z-index: 1;
	pointer-events: none;
}

.light-banner__inner {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: var(--light-banner-direction, row);
	align-items: center;
	justify-content: space-between;
	gap: var(--light-banner-gap, 24px);
	width: 100%;
}

.light-banner__content {
	display: flex;
	align-items: center;
	gap: 16px;
	min-width: 0;
}

.light-banner__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 56px;
	height: 56px;
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.16);
	color: #fff;
}

.light-banner__text {
	min-width: 0;
}

.light-banner__title {
	margin: 0;
	color: #fff;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.3;
}

.light-banner__subtitle {
	margin: 6px 0 0;
	color: rgba(255, 255, 255, 0.88);
	font-size: 0.95rem;
	line-height: 1.5;
}

.light-banner a.light-banner__btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	flex: 0 0 auto;
	margin: 0;
	padding: 12px 22px;
	border: 0;
	border-radius: var(--light-banner-btn-radius, 999px);
	background: var(--light-banner-btn-bg, #fff);
	color: var(--light-banner-btn-color, #111);
	font-weight: 700;
	line-height: 1.2;
	text-decoration: none;
	box-shadow: none;
	cursor: pointer;
}

.light-banner a.light-banner__btn:hover,
.light-banner a.light-banner__btn:focus {
	background: var(--light-banner-btn-bg-hover, #f4f4f4);
	color: var(--light-banner-btn-color, #111);
	text-decoration: none;
}

@media (max-width: 767px) {
	.light-banner__inner {
		flex-direction: var(--light-banner-direction, column);
		align-items: flex-start;
	}

	.light-banner a.light-banner__btn {
		width: 100%;
	}
}
