/**
 * Strona Dlaczego my — layout jak Lovable.
 */

.eureka-dmy-hero {
	position: relative;
	overflow: hidden;
	background-color: #fff;
	/* poprzednio: #fff1f2, #fff5f7 */
	background-image:
		radial-gradient(ellipse 95% 80% at 0% 0%, var(--eureka-surface-muted) 0%, rgb(245 241 236 / 0.65) 38%, transparent 72%),
		linear-gradient(135deg, var(--eureka-surface-beige) 0%, #ffffff 48%, #ffffff 100%);
}

.eureka-dmy-hero::before {
	content: '';
	position: absolute;
	top: -25%;
	left: -12%;
	width: min(520px, 65vw);
	height: min(520px, 65vw);
	border-radius: 50%;
	background: radial-gradient(
		circle,
		color-mix(in srgb, var(--eureka-primary) 16%, transparent) 0%,
		transparent 68%
	);
	pointer-events: none;
}

.eureka-dmy-hero .container-eureka {
	position: relative;
	z-index: 1;
}

.eureka-dmy-stat-card {
	padding: 1.35rem 1rem;
	background: #fff;
	border: 1px solid hsl(230 20% 92%);
	border-radius: 1rem;
	box-shadow: 0 8px 28px hsl(230 25% 20% / 0.06);
}

.eureka-dmy-stat-card__value {
	font-size: clamp(1.5rem, 3vw, 2rem);
	font-weight: 800;
	line-height: 1.1;
}

.eureka-dmy-stat-card__label {
	font-size: 0.8125rem;
	line-height: 1.4;
	color: var(--eureka-muted);
}

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

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

.eureka-dmy-features {
	padding-top: 4rem;
	padding-bottom: 4rem;
	background: hsl(230 25% 97% / 0.45);
}

@media (min-width: 768px) {
	.eureka-dmy-features {
		padding-top: 5rem;
		padding-bottom: 5rem;
	}
}

.eureka-dmy-features__header {
	max-width: 42rem;
}

.eureka-dmy-feature-card {
	padding: 1.5rem;
	background: linear-gradient(145deg, #fff 0%, hsl(330 60% 98% / 0.5) 100%);
	border: 1px solid hsl(230 20% 92%);
	border-radius: 1rem;
	box-shadow: 0 4px 20px hsl(230 25% 20% / 0.04);
	transition: box-shadow 0.2s, transform 0.2s;
}

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

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

.eureka-dmy-feature-card__category {
	font-size: 0.6875rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--eureka-primary);
}

@media (max-width: 767.98px) {
	.eureka-dmy-testimonials .col-lg-5,
	.eureka-dmy-testimonials .col-lg-7 {
		margin-bottom: 0;
	}

	.eureka-dmy-banner {
		text-align: center;
	}

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

.eureka-dmy-testimonials {
	padding-top: 4rem;
	padding-bottom: 4rem;
	background: hsl(230 25% 97% / 0.45);
}

.eureka-dmy-testimonials__rating {
	font-weight: 700;
	font-size: 0.9375rem;
}

.eureka-dmy-quote-card {
	padding: 1.5rem;
	background: #fff;
	border: 1px solid hsl(230 20% 92%);
	border-radius: 1rem;
	box-shadow: 0 6px 24px hsl(230 25% 20% / 0.05);
}

.eureka-dmy-quote-card__icon {
	display: block;
	font-size: 2rem;
	line-height: 1;
	color: var(--eureka-primary);
}

.eureka-dmy-quote-card__text {
	font-size: 0.9375rem;
	line-height: 1.6;
	color: var(--eureka-foreground);
}

.eureka-dmy-quote-card__avatar {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 50%;
	background: var(--eureka-primary);
	color: #fff;
	font-size: 0.875rem;
	font-weight: 700;
	flex-shrink: 0;
}

.eureka-dmy-banner-wrap {
	padding-bottom: 4rem;
}

@media (min-width: 768px) {
	.eureka-dmy-banner-wrap {
		padding-bottom: 5rem;
	}
}

.eureka-dmy-banner {
	padding: 2.5rem 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-dmy-banner {
		padding: 3rem 2.5rem;
	}
}

.eureka-dmy-banner__text {
	max-width: 36rem;
	margin-left: auto;
	margin-right: auto;
	font-size: 0.9375rem;
	line-height: 1.55;
	color: hsl(0 0% 100% / 0.88);
}
