/**
 * Strona Szkolenia dla firm (B2B) — layout jak Lovable.
 */

.eureka-sdf-hero__media {
	border-radius: 1.75rem;
	box-shadow: 0 20px 50px hsl(230 25% 20% / 0.12);
}

.eureka-sdf-section-label {
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--eureka-primary);
}

.eureka-sdf-section-title {
	font-size: clamp(1.75rem, 2.5vw, 2.25rem);
	line-height: 1.15;
}

.eureka-sdf-features {
	background: hsl(230 25% 97% / 0.45);
}

.eureka-sdf-feature-card {
	padding: 1.5rem;
	background: #fff;
	border: 1px solid hsl(230 20% 92%);
	border-radius: 1rem;
	box-shadow: 0 8px 28px hsl(230 25% 20% / 0.06);
	transition: box-shadow 0.2s, transform 0.2s;
}

.eureka-sdf-feature-card:hover {
	box-shadow: 0 12px 36px hsl(230 25% 20% / 0.1);
	transform: translateY(-2px);
}

.eureka-sdf-feature-card__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	margin-bottom: 1rem;
	border-radius: 0.75rem;
	background: color-mix(in srgb, var(--eureka-primary) 12%, transparent);
	color: var(--eureka-primary);
	font-size: 1.25rem;
}

.eureka-sdf-branches {
	background: #fff;
}

.eureka-sdf-branches__header {
	max-width: 40rem;
}

.eureka-sdf-branches__header .text-secondary {
	max-width: 32rem;
}

.eureka-sdf-branch-pill {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 3.25rem;
	padding: 0.75rem 1rem;
	font-size: 0.875rem;
	font-weight: 600;
	line-height: 1.35;
	color: var(--eureka-foreground);
	background: #fff;
	border: 1px solid hsl(230 20% 88%);
	border-radius: 0.75rem;
	box-shadow: 0 2px 12px hsl(230 25% 20% / 0.04);
	transition: border-color 0.2s, box-shadow 0.2s;
}

.eureka-sdf-branch-pill:hover {
	border-color: color-mix(in srgb, var(--eureka-primary) 35%, hsl(230 20% 88%));
	box-shadow: 0 6px 20px hsl(230 25% 20% / 0.08);
}

.eureka-sdf-courses {
	background: hsl(230 25% 97% / 0.35);
}

.eureka-sdf-banner-wrap {
	padding-top: 0;
}

.eureka-sdf-banner {
	padding: 2rem 1.75rem;
	border-radius: 1.25rem;
	background: linear-gradient(135deg, var(--eureka-primary), hsl(330 85% 48%));
	box-shadow: 0 16px 48px color-mix(in srgb, var(--eureka-primary) 35%, transparent);
}

@media (min-width: 768px) {
	.eureka-sdf-banner {
		padding: 2.5rem 2.5rem;
	}
}

.eureka-sdf-banner__text {
	max-width: 28rem;
	font-size: 0.9375rem;
	line-height: 1.55;
	color: hsl(0 0% 100% / 0.88);
}

@media (max-width: 767.98px) {
	.eureka-sdf-banner {
		text-align: center;
	}

	.eureka-sdf-banner .btn {
		width: 100%;
		max-width: 20rem;
	}

	.eureka-sdf-branches .row-cols-2 .col {
		font-size: 0.875rem;
	}
}
