/*
 * Style bloku "Stopka".
 * Zakres wyłącznie: .wp-block-gg-konsulting-theme-stopka
 *
 * Kolor akcentu (--gg-accent) pochodzi automatycznie ze sfery strony
 * (inc/sphere.php) - blok go tylko czyta.
 */

.wp-block-gg-konsulting-theme-stopka {
	/*
	 * Pełna szerokość okna - identyczna zasada jak w sekcjach treści.
	 * !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;
	margin-top: 0 !important;
	background-color: var( --wp--preset--color--primary );
	color: var( --wp--preset--color--base );
	padding-block: clamp( 3rem, 5vw, 5rem );
	padding-inline: clamp( 1rem, 2.5vw, 2.5rem );
}

.wp-block-gg-konsulting-theme-stopka .stopka__inner {
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp( 2rem, 4vw, 3.5rem );
	max-width: 1400px;
	margin-inline: auto;
}

@media ( min-width: 1000px ) {
	.wp-block-gg-konsulting-theme-stopka .stopka__inner {
		grid-template-columns: 1fr 2fr;
	}
}

/* --- Kolumna z logo --- */

.wp-block-gg-konsulting-theme-stopka .stopka__logo {
	display: block;
	max-width: 280px;
	height: auto;
	margin-bottom: 1.5rem;
}

.wp-block-gg-konsulting-theme-stopka .stopka__description {
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.65;
	color: inherit;
	margin: 0;
	max-width: 42ch;
}

.wp-block-gg-konsulting-theme-stopka .stopka__social {
	margin-top: clamp( 1.75rem, 3vw, 2.5rem );
	padding-top: clamp( 1.5rem, 2.5vw, 2rem );
	border-top: 1px solid rgba( 255, 255, 255, 0.18 );
}

.wp-block-gg-konsulting-theme-stopka .stopka__social-label {
	font-size: 1.15rem;
	font-weight: 700;
	color: inherit;
	margin: 0 0 1rem;
}

.wp-block-gg-konsulting-theme-stopka .stopka__social-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.wp-block-gg-konsulting-theme-stopka .stopka__social-link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 8px;
	background-color: var( --gg-accent );
	color: var( --wp--preset--color--primary );
	transition: background-color 0.3s, transform 0.3s;
}

.wp-block-gg-konsulting-theme-stopka .stopka__social-link:hover,
.wp-block-gg-konsulting-theme-stopka .stopka__social-link:focus-visible {
	background-color: #a67c56;
	color: #ffffff;
	transform: translateY( -2px );
}

.wp-block-gg-konsulting-theme-stopka .stopka__social-link svg {
	display: block;
	width: 20px;
	height: 20px;
}

/* --- Kolumny odnośników --- */

.wp-block-gg-konsulting-theme-stopka .stopka__cols {
	display: grid;
	grid-template-columns: 1fr;
	gap: clamp( 2rem, 3vw, 2.5rem );
}

@media ( min-width: 700px ) {
	.wp-block-gg-konsulting-theme-stopka .stopka__cols {
		grid-template-columns: repeat( 3, 1fr );
	}

	/* Newsletter zajmuje cały rząd pod kolumnami. */
	.wp-block-gg-konsulting-theme-stopka .stopka__newsletter {
		grid-column: 1 / -1;
	}
}

.wp-block-gg-konsulting-theme-stopka .stopka__col-title {
	font-size: 1.15rem;
	font-weight: 700;
	line-height: 1.3;
	color: inherit;
	margin: 0 0 1.25rem;
}

.wp-block-gg-konsulting-theme-stopka .stopka__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0.85rem;
}

.wp-block-gg-konsulting-theme-stopka .stopka__list-item {
	display: flex;
	align-items: flex-start;
	gap: 0.6rem;
	font-size: 1rem;
	line-height: 1.5;
}

.wp-block-gg-konsulting-theme-stopka .stopka__list-arrow,
.wp-block-gg-konsulting-theme-stopka .stopka__list-icon {
	flex: 0 0 auto;
	display: flex;
	color: #a67c56;
	margin-top: 0.15rem;
}

.wp-block-gg-konsulting-theme-stopka .stopka__list-arrow svg,
.wp-block-gg-konsulting-theme-stopka .stopka__list-icon svg {
	display: block;
	/*
	 * Wysokość stała, szerokość z proporcji rysunku. Sztywne width
	 * + height wciskało ikony o niekwadratowym rysunku w kwadrat,
	 * przez co wychodziły niższe od pozostałych.
	 */
	height: 18px;
	width: auto;
	max-width: 36px;
}

.wp-block-gg-konsulting-theme-stopka .stopka__link {
	color: inherit;
	text-decoration: none;
	transition: color 0.3s;
}

.wp-block-gg-konsulting-theme-stopka .stopka__link:hover,
.wp-block-gg-konsulting-theme-stopka .stopka__link:focus-visible {
	color: var( --gg-accent );
	text-decoration: underline;
}

/* --- Newsletter --- */

.wp-block-gg-konsulting-theme-stopka .stopka__newsletter {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1.5rem;
	align-items: center;
	padding: clamp( 1.5rem, 3vw, 2.25rem );
	background-color: #ffffff;
	color: var( --wp--preset--color--primary );
	border-radius: 10px;
}

@media ( min-width: 900px ) {
	.wp-block-gg-konsulting-theme-stopka .stopka__newsletter {
		grid-template-columns: 1fr 1fr;
	}
}

.wp-block-gg-konsulting-theme-stopka .stopka__newsletter-title {
	font-size: 1.25rem;
	font-weight: 700;
	line-height: 1.3;
	color: inherit;
	margin: 0 0 0.5rem;
}

.wp-block-gg-konsulting-theme-stopka .stopka__newsletter-lead {
	font-size: 1rem;
	line-height: 1.6;
	color: inherit;
	margin: 0;
}

.wp-block-gg-konsulting-theme-stopka .stopka__newsletter-row {
	display: flex;
	gap: 0.75rem;
}

.wp-block-gg-konsulting-theme-stopka .stopka__newsletter-input {
	flex: 1 1 auto;
	min-width: 0;
	padding: 0.85rem 1rem;
	font-family: inherit;
	font-size: 1rem;
	color: var( --wp--preset--color--primary );
	background-color: #ffffff;
	border: 1px solid var( --wp--preset--color--muted );
	border-radius: 8px;
	transition: border-color 0.3s;
}

.wp-block-gg-konsulting-theme-stopka .stopka__newsletter-input:focus {
	outline: none;
	border-color: var( --gg-accent );
}

.wp-block-gg-konsulting-theme-stopka .stopka__newsletter-button {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 64px;
	border: 0;
	border-radius: 8px;
	background-color: var( --gg-accent );
	color: var( --wp--preset--color--primary );
	cursor: pointer;
	transition: background-color 0.3s, color 0.3s;
}

.wp-block-gg-konsulting-theme-stopka .stopka__newsletter-button:hover,
.wp-block-gg-konsulting-theme-stopka .stopka__newsletter-button:focus-visible {
	background-color: #a67c56;
	color: #ffffff;
}

.wp-block-gg-konsulting-theme-stopka .stopka__newsletter-button svg {
	display: block;
	width: 22px;
	height: 22px;
}

.wp-block-gg-konsulting-theme-stopka .stopka__newsletter-consent {
	display: flex;
	align-items: flex-start;
	gap: 0.5rem;
	font-size: 0.85rem;
	line-height: 1.5;
	margin: 0.85rem 0 0;
}

.wp-block-gg-konsulting-theme-stopka .stopka__newsletter-consent a {
	color: inherit;
	text-decoration: underline;
}

.wp-block-gg-konsulting-theme-stopka .stopka__notice {
	font-size: 0.95rem;
	line-height: 1.5;
	margin: 0 0 0.75rem;
}

.wp-block-gg-konsulting-theme-stopka .stopka__notice.is-success {
	color: #2e4d3b;
}

.wp-block-gg-konsulting-theme-stopka .stopka__notice.is-error {
	color: #7a4a20;
}

/* --- Nota o prawach autorskich --- */

.wp-block-gg-konsulting-theme-stopka .stopka__copyright {
	grid-column: 1 / -1;
	font-size: 0.95rem;
	color: inherit;
	text-align: center;
	margin: 0;
	padding-top: clamp( 1.5rem, 3vw, 2.5rem );
	border-top: 1px solid rgba( 255, 255, 255, 0.18 );
}

/* --- Elementy tylko dla czytników ekranu --- */

.wp-block-gg-konsulting-theme-stopka .stopka__sr-only,
.wp-block-gg-konsulting-theme-stopka .stopka__honeypot {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect( 0, 0, 0, 0 );
	white-space: nowrap;
	border: 0;
}

@media ( prefers-reduced-motion: reduce ) {
	.wp-block-gg-konsulting-theme-stopka .stopka__social-link,
	.wp-block-gg-konsulting-theme-stopka .stopka__newsletter-button,
	.wp-block-gg-konsulting-theme-stopka .stopka__link {
		transition: none;
	}
}
