nav#nav-mainNav {
	display: flex;
	flex-direction: column;
	width: 100%;
	box-sizing: border-box;

	/* DFS AB -inspiroitu sticky header */
	position: sticky;
	top: 0;
	z-index: 1000;
	background: rgba(28, 46, 73, 0.95);
	backdrop-filter: blur(10px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
	transition: var(--transition-default);
}

.nav-main {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: var(--padding-default);
}

.nav-main .logo {
	width: 100%;
	max-width: 200px;
	height: auto;
}

.nav-main .nav-navLinkContainer {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	height: fit-content;
	width: fit-content;
	gap: var(--padding-large);
}

.nav-main .nav-navLinks {
	display: flex;
	flex-direction: row;
	align-content: center;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: var(--padding-small) var(--padding-large);
}

#nav-mainNav a {
	color: var(--color-white);
	text-decoration: none;
	white-space: nowrap;
	transition: var(--transition-fast);
}

#nav-mainNav a:hover {
	color: var(--color-secondary);
	text-decoration: none;
}

#nav-mainNav a[role='button'] {
	color: var(--color-white);

}

.nav-main .nav-shoppingCart {
	height: min-content;
	background-color: var(--color-secondary);
	color: var(--color-white);
	border-radius: var(--border-radius-button);
	padding: var(--padding-small) var(--padding-default);
	transition: var(--transition-fast);
	box-shadow: var(--box-shadow-button);
}

.nav-main .nav-shoppingCart:hover {
	background-color: var(--color-tertiary);
	transform: translateY(-2px);
	box-shadow: var(--box-shadow-hover);
}

.nav-navMenu {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: calc(var(--padding-large) * 2);
	padding: var(--padding-default);
	background: rgba(28, 46, 73, 0.85);
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	border-bottom: none;
}

.nav-navButtons {
	display: flex;
	flex-direction: row;
	gap: var(--padding-large);
	flex-wrap: wrap;
	align-items: center;
}

.nav-navMenu .nav-navSelect {
	user-select: none;
	cursor: pointer;
	font-size: var(--font-size-h5);
}

.nav-navMenu .nav-navSearch {
	position: relative;
	flex: 1 1 auto;
	display: flex;
	flex-direction: row;

	width: fit-content;
	min-width: 100px;
	height: auto;

	background: rgba(255, 255, 255, 0.1);
	border: 1px solid rgba(255, 255, 255, 0.2);
	padding: var(--padding-small) var(--padding-default);
	border-radius: var(--border-radius-button);
	transition: var(--transition-fast);
}

.nav-navMenu .nav-navSearch:focus-within {
	background: rgba(255, 255, 255, 0.15);
	border-color: var(--color-secondary);
	box-shadow: 0 0 0 3px rgba(0, 119, 190, 0.2);
}

.nav-navMenu .nav-navSearch input {
	outline: none;
	border: 0px transparent;
	flex: 1 1 auto;
	background: transparent;
	color: var(--color-white);
	font-size: var(--font-size-default);
}

.nav-navMenu .nav-navSearch input::placeholder {
	color: rgba(255, 255, 255, 0.6);
}

.nav-navMenu .nav-navSearch #nav-searchResults {
	position: absolute;
	display: none;
	flex-direction: column;
	width: 100%;
	left: 0;
	top: calc(100% + var(--padding-small));
	gap: 0;
	border-radius: var(--border-radius-default);
	padding-block: var(--padding-small);
	background-color: var(--color-white);
	border: 1px solid rgba(0, 0, 0, 0.1);
	box-shadow: var(--box-shadow-hover);
	z-index: 1;
	max-height: 50vh;
	overflow-y: auto;
}

.nav-navMenu .nav-navSearch #nav-searchResults.visible {
	display: flex;
}

.nav-navMenu #nav-searchResults .nav-searchResultItem,
.nav-navMenu #nav-searchResults .nav-searchResultsNone {
	display: flex;
	flex-direction: row;
	gap: var(--padding-default);
	align-items: center;
	padding: var(--padding-default);
	text-decoration: none;
	color: var(--color-text-primary);
}

.nav-navMenu #nav-searchResults .nav-searchResultItem {
	cursor: pointer;
}

.nav-navMenu #nav-searchResults .nav-searchResultItem:hover,
.nav-navMenu #nav-searchResults .nav-searchResultItem:active,
.nav-navMenu #nav-searchResults .nav-searchResultItem.selected {
	background-color: var(--color-background-1);
}

.nav-navMenu #nav-searchResults .nav-searchResultItem.nav-searchResultItem-unpublished {
	background-color: #f5f5f5 !important;
}

.nav-navMenu #nav-searchResults .nav-searchResultItem.nav-searchResultItem-unpublished:hover,
.nav-navMenu #nav-searchResults .nav-searchResultItem.nav-searchResultItem-unpublished:active,
.nav-navMenu #nav-searchResults .nav-searchResultItem.nav-searchResultItem-unpublished.selected {
	background-color: #e8e8e8 !important;
}

.nav-navMenu #nav-searchResults .nav-searchResultItemTitle {
	font-weight: bold;
}

.nav-navMenu #nav-searchResults .nav-searchResultItemSecondary {
	color: var(--color-text-disabled);
}

.nav-navMenu #nav-searchResults .nav-searchResultsSeparator {
	padding: var(--padding-default);
	font-weight: bold;
	font-size: 0.9em;
	color: var(--color-text-disabled);
	background-color: var(--color-background-1);
	border-top: 1px solid var(--color-text-disabled);
	border-bottom: 1px solid var(--color-text-disabled);
	pointer-events: none;
	user-select: none;
}

.nav-navMenu .nav-navSearch input:focus {
	outline: none;
}

.nav-navMenu .nav-navSearch button {
	flex: 0 0 auto;
}

/* Myyjätilan badge */
.nav-sellerBadge {
	display: flex;
	align-items: center;
	gap: var(--padding-small);
	padding: var(--padding-small) var(--padding-default);
	background-color: var(--color-secondary);
	color: var(--color-white);
	border-radius: var(--border-radius-small);
	font-size: var(--font-size-default);
	font-weight: 500;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
	white-space: nowrap;
	margin: auto 0;
}

.nav-sellerBadge i {
	font-size: 1.2em;
}

.nav-sellerBadge-text strong {
	margin-right: 4px;
}

/* Dropdown-valikko (kielivalinta) - DFS AB -tyyli */
#nav-mainNav .dropdown-menu {
	background: var(--color-white);
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: var(--border-radius-default);
	box-shadow: var(--box-shadow-hover);
	padding: var(--padding-small);
	margin-top: var(--padding-small);
	min-width: 150px;
}

#nav-mainNav .dropdown-item {
	color: var(--color-text-primary);
	padding: var(--padding-small) var(--padding-default);
	border-radius: var(--border-radius-small);
	transition: var(--transition-fast);
}

#nav-mainNav .dropdown-item:hover,
#nav-mainNav .dropdown-item:focus {
	background-color: var(--color-background-1);
	color: var(--color-secondary);
}

#nav-mainNav .dropdown-toggle {
	display: flex;
	align-items: center;
	gap: var(--padding-small);
	cursor: pointer;
}

/* Hamburger-painike (piilotettu desktopilla) */
.nav-hamburger {
	display: none;
	flex-direction: column;
	justify-content: space-around;
	width: 32px;
	height: 32px;
	background: transparent;
	border: none;
	cursor: pointer;
	padding: 0;
	z-index: 10;
	margin-left: auto;
}

.nav-hamburger span {
	width: 100%;
	height: 3px;
	background: var(--color-white);
	border-radius: 2px;
	transition: all 0.3s ease;
	transform-origin: center;
}

/* Hamburger-animaatio (X-muoto kun auki) */
.nav-hamburger.open span:nth-child(1) {
	transform: translateY(10px) rotate(45deg);
}

.nav-hamburger.open span:nth-child(2) {
	opacity: 0;
}

.nav-hamburger.open span:nth-child(3) {
	transform: translateY(-10px) rotate(-45deg);
}

/* Responsiivisuus pienemmille näytöille */
@media (max-width: 768px) {
	/* Näytä hamburger-painike */
	.nav-hamburger {
		display: flex;
	}

	.nav-sellerBadge {
		font-size: var(--font-size-small);
		padding: var(--padding-small);
	}

	.nav-sellerBadge-text {
		display: none;
	}

	.nav-sellerBadge::after {
		content: "Myyjätila";
		font-size: var(--font-size-small);
	}

	nav#nav-mainNav {
		position: relative;
	}

	.nav-main {
		flex-direction: row;
		align-items: center;
		gap: var(--padding-default);
	}

	.nav-main .logo {
		max-width: 150px;
	}

	/* Piilota navigaatiolinkit oletuksena mobiilissa */
	.nav-main .nav-navLinkContainer {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		width: 100%;
		background: rgba(28, 46, 73, 0.98);
		flex-direction: column;
		padding: var(--padding-default);
		box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);
		z-index: 999;
	}

	/* Näytä navigaatiolinkit kun valikko on auki */
	.nav-main .nav-navLinkContainer.open {
		display: flex;
	}

	.nav-navLinks {
		flex-direction: column;
		width: 100%;
		gap: var(--padding-default);
	}

	.nav-navLinks .nav-item {
		width: 100%;
		text-align: left;
		padding: var(--padding-small) 0;
		border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	}

	.nav-navLinks .nav-item:last-child {
		border-bottom: none;
	}

	/* Ostoskori- ja suosikkipainikkeet pystysuoraan */
	.nav-navLinkContainer > a.nav-shoppingCart {
		width: 100%;
		text-align: center;
		margin-top: var(--padding-small);
	}
}

/*
.nav-navMenu .nav-navDropdown::after {
	--navDropdown-arrow-width: calc(var(--font-size-h5) / 2);
	--navDropdown-arrow-translate: calc(var(--navDropdown-arrow-width) * -0.5);

	content: "";
	box-sizing: border-box;
	position: relative;
	display: inline-block;
	width: var(--navDropdown-arrow-width);
	height: var(--navDropdown-arrow-width);
	margin-right: calc(var(--navDropdown-arrow-width) / 2);

	border-bottom: 2px solid var(--color-text-primary);
	border-right: 2px solid var(--color-text-primary);
	border-left: 2px solid transparent;
	border-top: 2px solid transparent;
	transform: rotate(45deg) translateY(var(--navDropdown-arrow-translate));
}
*/
