/* PAFRENT 0.11.1 — compact, resilient Header and navigation */
.site-header__inner {
	gap: clamp(14px, 1.8vw, 26px);
	min-height: 70px;
	position: relative;
}

.site-branding {
	flex: 0 1 220px;
	min-width: 120px;
	overflow: hidden;
}

.site-title {
	display: block;
	font-size: 0.92rem;
	letter-spacing: 0.055em;
	max-width: 100%;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.custom-logo-link {
	display: inline-flex;
	max-width: 100%;
}

.custom-logo {
	max-height: 42px;
	max-width: 200px;
}

.main-navigation {
	flex: 1 1 auto;
	min-width: 0;
}

.primary-menu {
	flex-wrap: nowrap;
	gap: 2px;
	justify-content: flex-end;
}

.primary-menu a {
	font-size: 0.78rem;
	padding: 9px 10px;
	white-space: nowrap;
}

.paf-button--header {
	min-height: 42px;
	padding-inline: 16px;
	white-space: nowrap;
}

@media (max-width: 1120px) {
	.site-branding {
		flex-basis: min(42vw, 220px);
	}

	.menu-toggle {
		align-items: center;
		display: inline-flex;
		height: 40px;
		justify-content: center;
		margin-left: auto;
		padding: 0;
		width: 42px;
	}

	.menu-toggle__lines,
	.menu-toggle__lines span {
		display: block;
	}

	.menu-toggle__lines {
		width: 18px;
	}

	.menu-toggle__lines span {
		background: var(--paf-navy);
		height: 1px;
		margin-block: 5px;
		width: 100%;
	}

	.main-navigation {
		background: #fff;
		border-bottom: 1px solid var(--paf-border);
		box-shadow: 0 18px 40px rgb(20 33 61 / 12%);
		display: none;
		inset: 100% 0 auto;
		padding: 14px clamp(18px, 3vw, 32px) 20px;
		position: absolute;
	}

	.main-navigation.is-open {
		display: block;
	}

	.primary-menu {
		align-items: stretch;
		flex-direction: column;
		gap: 0;
	}

	.primary-menu a {
		border-bottom: 1px solid #e5e9ef;
		border-radius: 0;
		color: var(--paf-navy);
		display: block;
		font-size: 0.84rem;
		padding: 13px 0;
	}

	.primary-menu li:last-child a {
		border-bottom: 0;
	}

	.paf-button--header {
		display: inline-flex;
	}
}

@media (max-width: 640px) {
	.site-header__inner {
		gap: 12px;
		min-height: 64px;
	}

	.site-branding {
		flex-basis: auto;
		max-width: calc(100% - 58px);
	}

	.site-title {
		font-size: 0.82rem;
	}

	.custom-logo {
		max-height: 38px;
		max-width: 170px;
	}

	.paf-button--header {
		display: none;
	}
}
