/**
 * Stopka witryny
 *
 * @package miod-wstazka
 */

/* ══════════════════════════════════
   SITE FOOTER
══════════════════════════════════ */
.site-footer {
	background: var(--color-dark);
	position: relative;
	overflow: hidden;
	margin-top: auto;
}

/* Złota linia top */
.site-footer__topline {
	height: 3px;
	background: linear-gradient(
		90deg,
		transparent 0%,
		var(--color-honey) 20%,
		var(--color-honey-light) 50%,
		var(--color-honey) 80%,
		transparent 100%
	);
}

/* Honeycomb pattern */
.site-footer__hc {
	position: absolute;
	inset: 0;
	opacity: 0.04;
	pointer-events: none;
	z-index: 0;
}

/* Dekoracyjny sześciokąt */
.site-footer__hex-deco {
	position: absolute;
	right: -40px;
	bottom: -20px;
	width: 200px;
	height: 200px;
	opacity: 0.05;
	pointer-events: none;
	z-index: 0;
}

/* ── GÓRNA CZĘŚĆ ── */
.site-footer__top {
	padding-block: var(--space-16) var(--space-12);
	position: relative;
	z-index: 1;
	border-bottom: 1px solid rgba(200, 152, 46, 0.1);
}

.footer-grid {
	display: grid;
	grid-template-columns: 2fr 1fr 1fr 1fr;
	gap: var(--space-12);
}

@media (max-width: 1024px) {
	.footer-grid {
		grid-template-columns: 1fr 1fr;
		gap: var(--space-8);
	}

	.footer-brand {
		grid-column: 1 / -1;
	}
}

@media (max-width: 640px) {
	.footer-grid {
		grid-template-columns: 1fr;
		gap: var(--space-10);
	}

	.footer-brand {
		grid-column: auto;
		text-align: center;
	}

	.footer-brand__logo {
		margin-inline: auto;
	}

	.footer-brand__logo-text {
		align-items: center;
	}

	.footer-brand__logo-img {
		margin-inline: auto;
		display: block;
	}

	/* Jedna linia w pionie — bez „schodków” od różnych max-width / padding */
	.footer-brand__desc {
		max-width: 36rem;
		margin-inline: auto;
		text-align: center;
	}

	.footer-brand__contact {
		align-items: center;
	}

	.footer-contact-link {
		justify-content: center;
	}

	.footer-social {
		justify-content: center;
	}

	.footer-col {
		min-width: 0;
		text-align: center;
	}

	.footer-col__title {
		margin-left: 0;
		padding-left: 0;
		text-align: center;
	}

	.footer-col__links {
		align-items: center;
	}

	.footer-col__links,
	.footer-col__links a {
		padding-left: 0;
		margin-left: 0;
	}

	.footer-col__links a {
		justify-content: center;
	}

	.footer-middle-inner {
		flex-direction: column;
		align-items: center;
		justify-content: center;
		text-align: center;
	}

	.footer-trust {
		justify-content: center;
	}

	.footer-payments {
		justify-content: center;
	}
}

/* ── BRAND ── */
.footer-brand__logo {
	display: inline-block;
	text-decoration: none;
	margin-bottom: var(--space-5);
}

.footer-brand__logo-img {
	height: 44px;
	width: auto;
	object-fit: contain;
	filter: brightness(0) invert(1);
	opacity: 0.9;
}

.footer-brand__logo-text {
	display: flex;
	flex-direction: column;
	line-height: 1;
}

.footer-brand__logo-miod {
	font-family: var(--font-display);
	font-size: 26px;
	font-weight: 700;
	color: var(--color-honey);
	display: block;
}

.footer-brand__logo-wst {
	font-family: var(--font-display);
	font-size: 14px;
	font-weight: 400;
	color: var(--color-honey-deep);
	display: block;
	margin-top: 2px;
}

.footer-brand__desc {
	font-size: var(--text-sm);
	color: rgba(255, 255, 255, 0.38);
	line-height: 1.75;
	margin-bottom: var(--space-6);
	max-width: 280px;
}

/* Kontakt */
.footer-brand__contact {
	display: flex;
	flex-direction: column;
	gap: var(--space-3);
	margin: 0 0 var(--space-6);
	padding: 0;
	font-style: normal;
}

.footer-contact-link {
	display: flex;
	align-items: center;
	gap: var(--space-2);
	font-size: var(--text-sm);
	color: rgba(255, 255, 255, 0.42);
	text-decoration: none;
	transition: color var(--transition-fast);
}

.footer-contact-link:hover {
	color: var(--color-honey-light);
}

.footer-contact-link svg {
	stroke: rgba(200, 152, 46, 0.45);
	flex-shrink: 0;
	transition: stroke var(--transition-fast);
}

.footer-contact-link:hover svg {
	stroke: var(--color-honey);
}

/* Social */
.footer-social {
	display: flex;
	gap: var(--space-2);
}

.footer-social__link {
	width: 36px;
	height: 36px;
	border-radius: var(--radius-md);
	border: 1px solid rgba(200, 152, 46, 0.2);
	display: flex;
	align-items: center;
	justify-content: center;
	color: rgba(255, 255, 255, 0.35);
	text-decoration: none;
	transition: all var(--transition-base);
}

.footer-social__link:hover {
	border-color: var(--color-honey);
	color: var(--color-honey-light);
	background: rgba(200, 152, 46, 0.08);
	transform: translateY(-2px);
}

.footer-social__link svg {
	stroke: currentColor;
}

/* ── KOLUMNY LINKÓW ── */
.footer-col__title {
	font-size: var(--text-xs);
	font-weight: 700;
	letter-spacing: 2px;
	text-transform: uppercase;
	color: var(--color-honey);
	margin-bottom: var(--space-5);
}

.footer-col__links {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--space-3);
}

.footer-col__links li {
	margin: 0;
	padding: 0;
}

.footer-col__links a {
	font-size: var(--text-sm);
	color: rgba(255, 255, 255, 0.4);
	text-decoration: none;
	display: flex;
	align-items: center;
	gap: 0;
	transition: all var(--transition-fast);
	position: relative;
	padding-left: 0;
}

/* Animacja kreski przy hover */
.footer-col__links a::before {
	content: '';
	width: 0;
	height: 1px;
	background: var(--color-honey);
	transition: width var(--transition-base);
	flex-shrink: 0;
	margin-right: 0;
}

@media (hover: hover) and (pointer: fine) {
	.footer-col__links a:hover {
		color: var(--color-honey-light);
		padding-left: var(--space-3);
	}

	.footer-col__links a:hover::before {
		width: 12px;
		margin-right: var(--space-2);
	}
}

/* Badge B2B */
.footer-col__badge {
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.5px;
	padding: 1px 7px;
	border-radius: var(--radius-full);
	background: rgba(200, 152, 46, 0.12);
	color: var(--color-honey);
	border: 0.5px solid rgba(200, 152, 46, 0.28);
	margin-left: var(--space-2);
	flex-shrink: 0;
}

/* ── ŚRODKOWY PASEK ── */
.site-footer__middle {
	padding-block: var(--space-5);
	position: relative;
	z-index: 1;
	border-bottom: 1px solid rgba(200, 152, 46, 0.08);
}

.footer-middle-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-6);
	flex-wrap: wrap;
}

/* Trust badges */
.footer-trust {
	display: flex;
	align-items: center;
	gap: var(--space-5);
	flex-wrap: wrap;
}

.footer-trust__item {
	display: flex;
	align-items: center;
	gap: var(--space-2);
	font-size: var(--text-xs);
	color: rgba(255, 255, 255, 0.3);
	white-space: nowrap;
}

.footer-trust__item svg {
	stroke: rgba(200, 152, 46, 0.4);
	flex-shrink: 0;
}

.footer-trust__sep {
	width: 1px;
	height: 14px;
	background: rgba(200, 152, 46, 0.15);
	flex-shrink: 0;
}

@media (max-width: 768px) {
	.footer-trust__sep {
		display: none;
	}

	.footer-trust {
		gap: var(--space-4);
	}
}

/* Metody płatności */
.footer-payments {
	display: flex;
	align-items: center;
	gap: var(--space-2);
	flex-wrap: wrap;
}

.footer-payment__pill {
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.5px;
	padding: var(--space-1) var(--space-3);
	border-radius: var(--radius-sm);
	border: 1px solid rgba(255, 255, 255, 0.1);
	color: rgba(255, 255, 255, 0.22);
	background: rgba(255, 255, 255, 0.03);
}

.footer-payments__img {
	display: block;
	max-height: 36px;
	width: auto;
	max-width: min(420px, 100%);
	object-fit: contain;
	opacity: 0.92;
}

/* ── DOLNA BELKA ── */
.site-footer__bottom {
	padding-block: var(--space-5);
	position: relative;
	z-index: 1;
}

.footer-bottom-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-4);
	flex-wrap: wrap;
}

@media (max-width: 768px) {
	.footer-bottom-inner {
		flex-direction: column;
		text-align: center;
		gap: var(--space-3);
	}
}

.footer-copy {
	font-size: var(--text-xs);
	color: rgba(255, 255, 255, 0.2);
	margin: 0;
}

/* Linki prawne */
.footer-legal {
	display: flex;
	gap: var(--space-5);
	flex-wrap: wrap;
	justify-content: center;
}

.footer-legal a {
	font-size: var(--text-xs);
	color: rgba(255, 255, 255, 0.2);
	text-decoration: none;
	transition: color var(--transition-fast);
}

.footer-legal a:hover {
	color: rgba(255, 255, 255, 0.5);
}

.footer-nip {
	font-size: var(--text-xs);
	color: rgba(255, 255, 255, 0.14);
	margin: 0;
}

/* Po regułach @media (hover: hover) — na mobile linki kolumn zostają wyśrodkowane także przy hover */
@media (max-width: 640px) {
	.footer-col__links a:hover,
	.footer-col__links a:focus-visible {
		padding-left: 0;
	}

	.footer-col__links a:hover::before,
	.footer-col__links a:focus-visible::before {
		width: 0;
		margin-right: 0;
	}
}
