[data-site-header] {
	position: relative;
	z-index: 100;
	border-bottom: 1px solid var(--color-border-dark);
	background: var(--color-charcoal-950);
	color: var(--color-cream-500);
}
.site-header__bar {
	display: flex;
	align-items: center;
	min-height: 5.25rem;
	justify-content: space-between;
	gap: var(--space-6);
}
.site-header__brand {
	display: inline-flex;
	flex: 0 1 auto;
	align-items: center;
	gap: var(--space-3);
	min-width: 0;
	color: var(--color-cream-50);
	text-decoration: none;
}
.site-header__logo {
	flex: 0 0 auto;
	width: 2.5rem;
	height: 2.5rem;
	object-fit: contain;
}
.site-header__brand-name {
	overflow: hidden;
	font-family: var(--font-serif);
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1;
	white-space: nowrap;
	text-overflow: ellipsis;
}
.site-header__nav {
	min-width: 0;
	margin-left: auto;
}
.site-header__list {
	display: flex;
	align-items: center;
	gap: clamp(0.75rem, 1.5vw, 1.5rem);
	margin: 0;
	padding: 0;
	list-style: none;
}
.site-header__list li,
.site-header__list li + li {
	margin: 0;
	padding: 0;
}
.site-header__list a {
	display: inline-flex;
	align-items: center;
	min-height: 2.75rem;
	color: var(--color-cream-500);
	font-size: var(--text-control);
	font-weight: 600;
	letter-spacing: 0.03em;
	line-height: var(--line-control);
	text-decoration-color: transparent;
	white-space: nowrap;
}
.site-header__list a:hover,
.site-header__list a[aria-current="page"] {
	color: var(--color-cream-50);
	text-decoration-color: var(--color-brass-400);
}
.site-header__actions {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	gap: var(--space-3);
}
.site-header__reservation {
	white-space: nowrap;
}
.site-header__toggle {
	display: none;
	position: relative;
	flex: 0 0 2.75rem;
	width: 2.75rem;
	height: 2.75rem;
	padding: 0;
	border-color: var(--color-border-dark);
	background: transparent;
}
.site-header__toggle:hover {
	background: rgba(184, 149, 90, 0.14);
}
.site-header__toggle-line {
	position: absolute;
	left: 0.75rem;
	width: 1.25rem;
	height: 1px;
	background: var(--color-cream-500);
	transition:
		transform var(--transition-base),
		opacity var(--transition-fast);
}
.site-header__toggle-line:nth-child(1) {
	transform: translateY(-0.375rem);
}
.site-header__toggle-line:nth-child(2) {
	transform: translateY(0.375rem);
}
.site-header__toggle[aria-expanded="true"]
	.site-header__toggle-line:nth-child(1) {
	transform: rotate(45deg);
}
.site-header__toggle[aria-expanded="true"]
	.site-header__toggle-line:nth-child(2) {
	transform: rotate(-45deg);
}
@media (max-width: 1049px) {
	.site-header__bar {
		min-height: 4.75rem;
		gap: var(--space-4);
	}
	.site-header__nav {
		position: absolute;
		top: 100%;
		right: 0;
		left: 0;
		display: none;
		width: 100%;
		max-height: calc(100vh - 4.75rem);
		padding: var(--space-4) var(--container-padding) var(--space-6);
		overflow-y: auto;
		border-bottom: 1px solid var(--color-border-dark);
		background: var(--color-charcoal-900);
	}
	.site-header__nav.is-open {
		display: block;
	}
	.site-header__list {
		display: grid;
		gap: 0;
		width: min(100%, var(--container-max));
		margin-inline: auto;
	}
	.site-header__list li {
		border-bottom: 1px solid var(--color-border-dark);
	}
	.site-header__list a {
		width: 100%;
		min-height: 3.25rem;
	}
	.site-header__toggle {
		display: inline-flex;
	}
	.site-header__reservation {
		padding-inline: 1rem;
	}
	.site-header__brand-name {
		font-size: 1.375rem;
	}
}
@media (max-width: 599px) {
	.site-header__bar {
		min-height: 4.5rem;
		gap: var(--space-3);
	}
	.site-header__logo {
		width: 2.125rem;
		height: 2.125rem;
	}
	.site-header__brand-name {
		font-size: 1.25rem;
	}
	.site-header__reservation {
		min-width: 2.75rem;
		width: 2.75rem;
		padding: 0;
		font-size: 0;
	}
	.site-header__reservation::after {
		content: "Rezerwuj";
		font-size: 0.625rem;
		letter-spacing: 0;
	}
	.site-header__actions {
		gap: var(--space-2);
	}
}
