/* Wymuszenie tylko ciemnego motywu i wyłączenie dopasowania do systemu */
:root {
	color-scheme: dark !important;
	/* W razie, gdyby Bootstrap używał atrybutu data-bs-theme */
	--bs-body-bg: #0a0a0a;
	--bs-body-color: #ffffff;
}

/* Wymuszone tło z gradientem – zawsze aktywne */
body {
	background: linear-gradient(90deg,rgba(10, 10, 10, 1) 0%, rgba(69, 69, 69, 1) 30%, rgba(102, 102, 102, 1) 60%, rgba(18, 18, 18, 1) 100%) !important;
	color: #ffffff !important;
}

/* Nadpisanie wszystkich ewentualnych sekcji z jasnym tłem */
.bg-light,
[data-bs-theme="light"],
html[data-bs-theme="light"] {
	background: none !important;
	background-color: transparent !important;
	color: inherit !important;
}
.slideshow-strip {
	width: 100%;
	overflow: hidden;
	background: #0a0a0a;
	padding: 20px 0;
}

.slideshow-track {
	display: flex;
	animation: scrollImages 20s linear infinite; /* prędkość i nieskończona animacja */
}

	.slideshow-track img {
		width: 200px;
		margin-right: 20px;
		border-radius: 8px;
		object-fit: cover;
	}

/* Animacja przesuwania w poziomie */
@keyframes scrollImages {
	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(-50%); /* przesuwamy o połowę tracka (pierwszy zestaw) */
	}
}

/* Responsywność */
@media (max-width: 768px) {
	.slideshow-track img {
		width: 120px;
		margin-right: 10px;
	}
}

/* ======================================
   🔹 Logo w headerze
   ====================================== */
.logo-container {
	width: 100%;
	display: flex;
	justify-content: center; /* centrowanie poziome */
	margin-bottom: 5px; /* odstęp od reszty headera */
}

.logo {
	max-width: 500px; /* maksymalna szerokość logo */
	width: 60%; /* dopasowanie do szerokości ekranu */
	height: auto; /* proporcje zachowane */
}

/* Responsywność */
@media (max-width: 768px) {
	.logo {
		max-width: 250px;
		width: 60%;
	}
}

@media (max-width: 480px) {
	.logo {
		max-width: 220px;
		width: 70%;
	}
}
/*Czarne ikony społecznościowe*/
.social-link i {
	color: #FFFFFF;
}
.background-video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover; /* wypełnia całe tło */
	z-index: -1; /* umieszcza film ZA treścią */
	opacity: 0.7; /* opcjonalnie: przyciemnia tło, by tekst był czytelny */
}

.masthead {
	position: relative;
	overflow: hidden;
}
/* ===== SHARE MODAL INSPIRED ===== */

.share-modal {
	position: fixed;
	inset: 0;
	display: none;
	align-items: center;
	justify-content: center;
	z-index: 2000;
}

.modal-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.65);
}

.share-content {
	position: relative;
	background: #fff;
	max-width: 350px;
	width: 90%;
	padding: 25px;
	border-radius: 12px;
	text-align: center;
	animation: fadeIn 0.3s ease-out;
}

	.share-content h4 {
		margin-bottom: 15px;
		font-size: 20px;
		font-weight: bold;
		color: #333;
	}

.share-icons {
	display: flex;
	justify-content: space-around;
	margin-top: 10px;
}

	.share-icons a {
		color: #444;
		font-size: 24px;
		padding: 12px;
		border-radius: 50%;
		transition: all .2s;
	}

		.share-icons a:hover {
			transform: scale(1.2);
			color: #000;
		}

.close-btn {
	position: absolute;
	top: 10px;
	right: 14px;
	font-size: 24px;
	cursor: pointer;
	color: #777;
	transition: color .2s;
}

	.close-btn:hover {
		color: #000;
	}

@keyframes fadeIn {
	from {
		opacity: 0;
		transform: translateY(-12px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}
/* ===== RATING HOVER (JAK GOOGLE) ===== */
.rating {
	display: flex;
	justify-content: center;
	gap: 10px;
	font-size: 36px;
	cursor: pointer;
}

	.rating i {
		pointer-events: auto;
		color: rgba(255, 255, 255, 0.4);
		transition: color 0.15s ease, transform 0.15s ease;
	}

		.rating i.active {
			color: gold;
			transform: scale(1.15);
		}
/* ===== CTA BUTTONS (Zawsze obok siebie) ===== */
.cta-buttons {
	display: flex;
	justify-content: center;
	gap: 16px;
	flex-wrap: nowrap; /* NIE pozwala łamać do kolumny */
}

	.cta-buttons .btn {
		min-width: 220px; /* taka sama szerokość */
		text-align: center;
	}

/* Mobile – nadal obok siebie */
@media (max-width: 576px) {
	.cta-buttons {
		gap: 12px;
	}

		.cta-buttons .btn {
			min-width: 160px;
			font-size: 14px;
			padding: 12px 10px;
		}
}
#sidebar-wrapper .sidebar-nav {
	display: flex;
	flex-direction: column;
	height: 100%;
}

#sidebar-wrapper .sidebar-social {
	margin-top: 30px; /* odstęp OD LISTY */
	padding-top: 20px;
	display: flex;
	justify-content: center; /* centrowanie poziome */
	gap: 25px;
}
#sidebar-wrapper .social-link:hover {
	transform: scale(1.2);
}
#sidebar-wrapper .sidebar-social i {
	font-size: 28px; /* zmień np. na 32px lub 36px */
}
#sidebar-wrapper .sidebar-social .social-link {
	width: 52px;
	height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #111111; /* albo inny kolor */
	border-radius: 80%;
	transition: transform 0.2s ease;
}