/*
 * Style bloku "Sekcja z liczbami i zdjęciem".
 * Zakres wyłącznie: .wp-block-gg-konsulting-theme-efekty-w-liczbach
 *
 * Kolor akcentu (--gg-accent) pochodzi automatycznie ze sfery strony
 * (inc/sphere.php) - blok go tylko czyta.
 */

.wp-block-gg-konsulting-theme-efekty-w-liczbach {
	/*
	 * Pełna szerokość okna - identyczna zasada jak w pozostałych sekcjach.
	 * !important przebija "margin: auto !important" z układu constrained.
	 */
	width: 100vw;
	max-width: 100vw;
	margin-left: calc( 50% - 50vw ) !important;
	margin-right: calc( 50% - 50vw ) !important;
	display: grid;
	grid-template-columns: 1fr;
	align-items: stretch;
	overflow: hidden;
	margin-top: 0!important;
}

@media ( min-width: 900px ) {
	/*
	 * Bez min-height - wysokość sekcji dyktuje treść panelu, a zdjęcie
	 * dopasowuje się do niej (object-fit: cover). Sztywne 70vh robiło
	 * sekcję nienaturalnie wysoką i zostawiało pustkę pod przyciskiem.
	 */
	.wp-block-gg-konsulting-theme-efekty-w-liczbach {
		grid-template-columns: 1fr 1fr;
	}

	/* Zdjęcie po prawej - zamieniamy kolejność kolumn. */
	.wp-block-gg-konsulting-theme-efekty-w-liczbach.is-image-right .efekty__media {
		order: 2;
	}

	.wp-block-gg-konsulting-theme-efekty-w-liczbach.is-image-right .efekty__panel {
		order: 1;
	}
}

/* --- Zdjęcie --- */

/*
 * KLUCZOWE: zdjęcie jest pozycjonowane absolutnie względem swojej
 * kolumny. Bez tego <img> narzucał sekcji swoją NATURALNĄ wysokość
 * (height: 100% nie ma się do czego odnieść, gdy rodzic ma wysokość
 * auto), przez co sekcja robiła się znacznie wyższa niż jej treść.
 * Teraz o wysokości decyduje wyłącznie panel z treścią.
 */
/*
 * max-width pilnuje, żeby kolumna ze zdjęciem nie wyszła poza swoją
 * szerokość. Gdy panel z treścią jest wyższy niż proporcja 5/4, to on
 * dyktuje wysokość wiersza, a aspect-ratio przeliczało z niej szerokość
 * i zdjęcie rozpychało się na sąsiednią kolumnę.
 */
.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__media {
	position: relative;
	min-height: 280px;
	max-width: 100%;
	overflow: hidden;
	/*
	 * Proporcje, dopasowanie i punkt kadrowania ustawia redaktor w panelu
	 * bocznym bloku. render.php przekazuje je jako zmienne CSS; wartości
	 * poniżej to zapas, gdy blok zapisano jeszcze bez tych ustawień.
	 */
	aspect-ratio: var( --gg-efekty-ratio, 5/4 );
	background-color: var( --wp--preset--color--primary );
}

/*
 * Tryb "dopasuj do wysokości treści": zdjęcie nie narzuca proporcji,
 * tylko wypełnia wiersz siatki, którego wysokość dyktuje panel z treścią.
 */
.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__media.is-ratio-auto {
	aspect-ratio: auto;
	height: 100%;
}

/*
 * Na desktopie proporcje kolumny ze zdjęciem wyznaczają wysokość całej
 * sekcji. Dzięki temu fotografia nie jest agresywnie przycinana (widać
 * całe sylwetki), a panel z treścią centruje się w tej wysokości.
 * Zmiana proporcji = zmiana wysokości sekcji.
 */
@media ( min-width: 900px ) {
	.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__media {
		aspect-ratio: var( --gg-efekty-ratio, 5/4 );
	}

	.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__media.is-ratio-auto {
		aspect-ratio: auto;
	}
}

.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__media img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: var( --gg-efekty-fit, cover );
	object-position: var( --gg-efekty-focal-x, 50% ) var( --gg-efekty-focal-y, 26% );
}

/* Przyciemnienie zdjęcia - wartości zgodne z projektem. */
.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__media::after {
	content: "";
	position: absolute;
	inset: 0;
	background-color: #2a2e37;
	opacity: 0.3;
	pointer-events: none;
}

/* --- Ciemny panel --- */

.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__panel {
	display: flex;
	align-items: center;
	background-color: var( --wp--preset--color--primary );
	color: var( --wp--preset--color--base );
	padding-block: clamp( 2rem, 3vw, 3rem );
	padding-inline: clamp( 1.5rem, 4vw, 4.5rem );
}

.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__content {
	width: 100%;
	max-width: 640px;
}

/* --- Nagłówek --- */

.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__kicker {
	display: flex;
	align-items: baseline;
	gap: 0.4rem;
	font-family: var( --wp--preset--font-family--raleway );
	font-size: clamp( 14px, 1.4vw, 18px );
	font-weight: 700;
	color: var( --wp--preset--color--base );
	margin: 0 0 0.5rem;
}

.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__kicker-sep {
	color: #a67c52;
}

.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__heading {
	font-size: clamp( 1.9rem, 2.8vw, 2.75rem );
	font-weight: 800;
	line-height: 1.2;
	color: var( --wp--preset--color--base );
	margin: 0 0 1.25rem;
}

.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__accent {
	color: var( --gg-accent );
}

.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__lead {
	font-size: 18px;
	font-weight: 400;
	line-height: 1.65;
	color: var( --wp--preset--color--base );
	margin: 0 0 clamp( 1.5rem, 2.5vw, 2.25rem );
}

/* --- Liczby --- */

.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__stats {
	display: grid;
	grid-template-columns: repeat( auto-fit, minmax( 140px, 1fr ) );
	gap: clamp( 1.5rem, 3vw, 2.5rem );
	margin: 0 0 clamp( 1.5rem, 2.5vw, 2.25rem );
	text-align: center;
}

.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__stat {
	display: flex;
	flex-direction: column;
	gap: 0.35rem;
}

.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__stat-value {
	font-size: clamp( 2rem, 3.5vw, 3rem );
	font-weight: 800;
	/* Wartość opisowa ("setki mln USD") łamie się na dwa wiersze - stąd
	   zapas w interlinii i wyrównanie długości wierszy. */
	line-height: 1.1;
	text-wrap: balance;
	color: var( --wp--preset--color--base );
	margin: 0;
}

.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__stat-label {
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.4;
	color: var( --wp--preset--color--base );
	margin: 0;
}

/* --- Przycisk --- */

.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__cta {
	display: block;
	width: fit-content;
	margin-inline: auto;
	padding: 15px 30px;
	border-radius: 10px;
	background-color: var( --gg-accent );
	color: var( --wp--preset--color--base );
	font-weight: 600;
	font-size: 16px;
	line-height: 1.4;
	text-decoration: none;
	transition: background-color 0.3s, transform 0.3s;
}

.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__cta:hover,
.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__cta:focus-visible {
	background-color: #B17DD3;
}

/*
 * Wprowadzenie bywa kilkuakapitowe - odstęp między akapitami zamiast
 * domyślnych marginesów znacznika <p>.
 */
.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__lead p {
	margin: 0;
}

.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__lead p + p {
	margin-top: 1.25rem;
}

.wp-block-gg-konsulting-theme-efekty-w-liczbach .efekty__lead strong {
	font-weight: 700;
}
