/* Nerko Core – Header & Footer */
.nerkocore-hf-header {
	position: relative;
	z-index: 99;
}

/* Transparent header */
.nerkocore-hf-header.is-transparent {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}

/* Sticky header */
.nerkocore-hf-header.is-stuck {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 999;
	background: var(--gc-sticky-bg, var(--tg-body-background-color, #fff));
	/* Template shadow */
	box-shadow: 0 10px 15px rgba(25, 25, 25, .05);
	animation: nerkocore-hf-down .45s ease;
	transition: transform .3s ease;
}
/* Measuring, no motion */
.gc-hf-measure,
.gc-hf-measure * {
	transition: none !important;
	animation: none !important;
}
.nerkocore-hf-header.is-stuck.is-hidden {
	transform: translateY(-110%);
}
@keyframes nerkocore-hf-down {
	from { transform: translateY(-100%); }
	to   { transform: translateY(0); }
}

/* Link hugs the image */
.elementor-widget-genix-logo .main-logo {
	display: inline-flex;
	vertical-align: middle;
}

/* Logo widget: sticky image while stuck */
.elementor-widget-genix-logo .main-logo .sticky-logo,
.nerkocore-hf-header.is-stuck .main-logo:has(.sticky-logo) .logo-default {
	display: none;
}
.nerkocore-hf-header.is-stuck .main-logo .sticky-logo {
	display: inline-block;
}

/* Side header: fixed at the start from 1200px */
@media (min-width: 1200px) {
	.nerkocore-hf-header.is-side,
	.nerkocore-hf-header.is-side.is-stuck {
		position: fixed;
		top: 0;
		bottom: 0;
		inset-inline: 0 auto;
		width: var(--gc-side-w, 320px);
		overflow-x: hidden;
		overflow-y: auto;
		scrollbar-width: none;
		background: none;
		box-shadow: none;
		animation: none;
		transform: none;
	}
	.nerkocore-hf-header.is-side::-webkit-scrollbar {
		width: 0;
	}
	/* Template fills the height (parts can sit at the foot) */
	.nerkocore-hf-header.is-side > .elementor {
		display: flex;
		flex-direction: column;
		min-height: 100%;
	}
	.nerkocore-hf-header.is-side > .elementor > .e-con {
		flex-grow: 1;
	}
	.nerkocore-side-header .nerkocore-hf-spacer {
		display: none;
	}
	.admin-bar .nerkocore-hf-header.is-side {
		top: 32px;
	}
}

/* Admin bar */
.admin-bar .nerkocore-hf-header.is-transparent,
.admin-bar .nerkocore-hf-header.is-stuck {
	top: 32px;
}
@media (max-width: 782px) {
	.admin-bar .nerkocore-hf-header.is-transparent,
	.admin-bar .nerkocore-hf-header.is-stuck {
		top: 46px;
	}
}
@media (max-width: 600px) {
	.admin-bar .nerkocore-hf-header.is-stuck {
		top: 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	.nerkocore-hf-header.is-stuck {
		animation: none;
		transition: none;
	}
}
