/* =========================================================
   Kurs Sticky Header
   - Sticky pozicija, zaobljeni rubovi, blur pozadina
   - Smanjuje se ~15% kod skrolanja uz glatku animaciju
   - Automatski prilagođava boju/kontrast pozadini iza sebe
   ========================================================= */

.kurs-sticky-header {
	position: fixed;
	top: 12px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 9999;

	width: min(1200px, calc(100% - 32px));

	border-radius: 22px;
	background: rgba(255, 255, 255, 0.72);
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08);

	-webkit-backdrop-filter: blur(14px) saturate(150%);
	backdrop-filter: blur(14px) saturate(150%);

	padding: 18px 32px;

	transition:
		padding 0.35s cubic-bezier(0.4, 0, 0.2, 1),
		top 0.35s cubic-bezier(0.4, 0, 0.2, 1),
		border-radius 0.35s cubic-bezier(0.4, 0, 0.2, 1),
		background-color 0.35s ease,
		box-shadow 0.35s ease,
		color 0.35s ease;

	color: inherit;
}

/* Spacer - zauzima prostor koji header "krade" prelaskom na fixed poziciju,
   tako da se sadržaj stranice ne pomakne prema gore ispod headera. */
.kurs-header-spacer {
	display: block;
	width: 100%;
}

/* Unutar headera - poravnanje logotipa i navigacije po defaultu */
.kurs-sticky-header .kurs-site-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 16px;
	padding: 0;
}

/* --- Stanje kod skrolanja: skupi se ~18% i pojača blur/sjenu --- */
.kurs-sticky-header.is-scrolled {
	top: 8px;
	padding: 12px 26px; /* cca 18% manje od 18px/32px */
	border-radius: 18px;
	box-shadow: 0 8px 32px rgba(0, 0, 0, 0.14);
	background: rgba(255, 255, 255, 0.85);
}

.kurs-sticky-header.is-scrolled img,
.kurs-sticky-header.is-scrolled .custom-logo {
	transform: scale(0.85);
	transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
}

/* --- Automatska prilagodba kontrasta prema pozadini iza headera --- */

/* Kad je pozadina iza headera tamna -> svijetli tekst na tamnijem staklu */
.kurs-sticky-header[data-contrast="dark-bg"] {
	background: rgba(24, 24, 24, 0.55);
	color: #ffffff;
}
.kurs-sticky-header[data-contrast="dark-bg"].is-scrolled {
	background: rgba(18, 18, 18, 0.7);
}
.kurs-sticky-header[data-contrast="dark-bg"] a {
	color: #ffffff;
}

/* Kad je pozadina iza headera svijetla -> tamni tekst na svijetlom staklu */
.kurs-sticky-header[data-contrast="light-bg"] {
	background: rgba(255, 255, 255, 0.72);
	color: #111111;
}
.kurs-sticky-header[data-contrast="light-bg"].is-scrolled {
	background: rgba(255, 255, 255, 0.88);
}
.kurs-sticky-header[data-contrast="light-bg"] a {
	color: #111111;
}

/* Fallback navigacija - stil linkova */
.kurs-sticky-header .kurs-nav a {
	font-weight: 500;
	transition: opacity 0.25s ease;
}
.kurs-sticky-header .kurs-nav a:hover {
	opacity: 0.7;
}

/* =========================================================
   Responsive - tablet i mobitel
   ========================================================= */

/* Laptop / manji desktop */
@media (max-width: 1200px) {
	.kurs-sticky-header {
		width: calc(100% - 24px);
	}
}

/* Tablet */
@media (max-width: 1024px) {
	.kurs-sticky-header {
		padding: 14px 22px;
		border-radius: 18px;
	}
	.kurs-sticky-header.is-scrolled {
		padding: 10px 18px;
		border-radius: 14px;
	}
	.kurs-sticky-header .kurs-nav ul {
		gap: 16px;
		flex-wrap: wrap;
	}
}

/* Mobitel */
@media (max-width: 600px) {
	.kurs-sticky-header {
		top: 6px;
		width: calc(100% - 16px);
		padding: 10px 16px;
		border-radius: 14px;
	}
	.kurs-sticky-header.is-scrolled {
		top: 4px;
		padding: 8px 14px;
		border-radius: 12px;
	}
	.kurs-sticky-header .kurs-site-header {
		gap: 8px;
	}
	.kurs-sticky-header .kurs-nav ul {
		gap: 12px;
		font-size: 0.9rem;
	}
}

/* Poštivanje "reduce motion" postavki korisnika */
@media (prefers-reduced-motion: reduce) {
	.kurs-sticky-header,
	.kurs-sticky-header.is-scrolled img,
	.kurs-sticky-header.is-scrolled .custom-logo {
		transition: none;
	}
}
