/* =========================================================================
   ICF Karting — v19 (Apple-style desktop hamburger + parallax mobile)
   - Desktop: zredukowane menu (5 main items) + hamburger zawsze widoczny
   - Animowana strzałka wskazująca hamburger (subtle, znika po użyciu)
   - Rejestracja CTA usunięta z headera (jest na FP banner)
   - Parallax: enable na mobile (lower speeds)
   ========================================================================= */

/* ===========================================================
   DESKTOP NAV — uproszczone do 5 itemów + hamburger
   =========================================================== */
@media (min-width: 961px) {
	/* Pokaż tylko 5 najważniejszych na desktopie */
	.site-nav__list li:nth-child(n+6) {
		display: none !important;
	}
	/* Wyjątek: jeśli current page jest w "ukrytych" — pokaż go */
	.site-nav__list li.current-menu-item { display: list-item !important; }

	/* Hamburger zawsze widoczny na desktopie */
	.nav-toggle {
		display: flex !important;
		flex-direction: column;
		gap: 5px;
		width: 44px;
		height: 44px;
		align-items: center;
		justify-content: center;
		background: transparent;
		border: 0;
		padding: 0;
		cursor: pointer;
		position: relative;
		flex-shrink: 0;
	}
	.nav-toggle span {
		display: block;
		width: 26px;
		height: 2px;
		background: var(--c-text);
		transition: transform .25s var(--ease-soft), opacity .2s;
	}
	.nav-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
	.nav-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
	.nav-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

	/* Site-nav na desktop też ma full overlay teraz */
	.site-nav.is-open .site-nav__list li {
		display: list-item !important; /* przywróć ukryte itemy w overlay */
	}
}

/* Header inner — przebuduj layout: Logo | Main 5 nav | Right (Otwarte/Tel/CTA/Hamburger) */
.site-header__inner {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 24px !important;
	min-height: 72px !important;
}

/* Site-nav i navtoggle to dwie sekcje po prawej */
.site-header__inner > .nav-toggle {
	order: 99; /* hamburger zawsze last */
}

/* Reduce/improve desktop nav-list i CTA */
@media (min-width: 961px) {
	.site-nav {
		display: contents !important; /* pozwól flex'owi rozłożyć children naturalnie */
	}
	.site-nav.is-open {
		display: flex !important;
		position: fixed !important;
		top: 88px !important; left: 0 !important; right: 0 !important; bottom: auto !important;
		max-height: calc(100vh - 88px) !important;
		flex-direction: column !important;
		background: rgba(8,8,10,.96) !important;
		backdrop-filter: saturate(180%) blur(30px) !important;
		-webkit-backdrop-filter: saturate(180%) blur(30px) !important;
		padding: 40px clamp(24px, 6vw, 80px) !important;
		overflow-y: auto !important;
		gap: 12px !important;
		z-index: 90;
	}
	.site-nav.is-open .site-nav__list {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 0 !important;
		max-width: 720px;
		margin: 0 auto;
		width: 100%;
	}
	.site-nav.is-open .site-nav__list li a {
		display: block !important;
		font-size: 1.6rem !important;
		font-family: var(--font-display);
		font-weight: 600;
		letter-spacing: -0.025em;
		padding: 18px 0 !important;
		color: #fff !important;
		border-bottom: 1px solid rgba(255,255,255,.06);
		text-decoration: none;
	}
	.site-nav.is-open .site-nav__list li a::after {
		content: '→';
		float: right;
		opacity: 0.4;
		transition: opacity .25s, transform .25s var(--ease-apple), color .25s;
	}
	.site-nav.is-open .site-nav__list li a:hover::after {
		opacity: 1; color: var(--c-accent); transform: translateX(6px);
	}
	.site-nav.is-open .site-nav__list li.menu-cta a {
		background: linear-gradient(135deg, rgba(46,224,107,0.12) 0%, rgba(255,255,255,0.02) 100%);
		border: 1px solid rgba(46,224,107,0.4);
		border-radius: 16px;
		padding: 18px 22px !important;
		margin-top: 16px;
		font-size: 1.2rem !important;
	}

	.site-nav.is-open .site-nav__cta {
		flex-direction: column !important;
		max-width: 720px;
		margin: 28px auto 0 !important;
		padding-top: 28px !important;
		border-top: 1px solid rgba(255,255,255,.08);
		gap: 16px !important;
		width: 100%;
	}
	.site-nav.is-open .site-nav__cta .btn-pill { width: 100%; justify-content: center; padding: 16px !important; font-size: 1rem !important; }
	.site-nav.is-open .site-nav__phone { font-size: 1.1rem !important; padding: 12px 0; text-align: center; }

	/* When closed — site-nav components flow normalnie w header */
	.site-nav .site-nav__list {
		display: flex !important;
		gap: 4px;
	}
	.site-nav .site-nav__list li a {
		padding: 8px 12px !important;
		font-size: 0.95rem !important;
		font-family: 'Inter', sans-serif;
		font-weight: 500;
	}
	.site-nav .site-nav__cta {
		display: flex;
		align-items: center;
		gap: 12px;
	}
}

/* ===========================================================
   ANIMATED ARROW pointing to hamburger
   =========================================================== */
.nav-arrow-hint {
	display: none;
}
@media (min-width: 961px) {
	.nav-arrow-hint {
		display: inline-flex;
		position: absolute;
		right: 70px; /* obok hamburger */
		top: 50%;
		transform: translateY(-50%);
		font-size: 0.78rem;
		color: var(--c-accent);
		font-weight: 600;
		letter-spacing: 0.04em;
		gap: 8px;
		align-items: center;
		pointer-events: none;
		animation: arrowHint 2s ease-in-out infinite;
		opacity: 0;
		animation-delay: 2s;
	}
	.nav-arrow-hint::after {
		content: '→';
		font-size: 1.1rem;
		color: var(--c-accent);
		font-weight: 700;
		animation: arrowBounce 1.2s ease-in-out infinite;
		display: inline-block;
	}
	/* Show only when hamburger nie był jeszcze użyty */
	body.nav-used .nav-arrow-hint { display: none !important; }
}
@keyframes arrowHint {
	0%   { opacity: 0; transform: translateY(-50%) translateX(8px); }
	30%  { opacity: 1; transform: translateY(-50%) translateX(0); }
	70%  { opacity: 1; transform: translateY(-50%) translateX(0); }
	100% { opacity: 0; transform: translateY(-50%) translateX(8px); }
}
@keyframes arrowBounce {
	0%, 100% { transform: translateX(0); }
	50%      { transform: translateX(6px); }
}

/* Hide na mobile (już mamy hamburger) */
@media (max-width: 960px) {
	.nav-arrow-hint { display: none !important; }
}

/* ===========================================================
   USUŃ Rejestracja online z desktop nav (jest na FP banner)
   ale zostaw w mobile menu i overlay full
   =========================================================== */
@media (min-width: 961px) {
	/* Hide menu-cta unless overlay otwarty */
	.site-nav:not(.is-open) .site-nav__list li.menu-cta { display: none !important; }
}

/* Site-header relative for arrow positioning */
.site-header { position: sticky; top: 0; z-index: 100; }
.site-header__inner { position: relative; }
