/* Header brand display variants. */

.site-branding {
	flex: 0 1 auto;
	min-width: 0;
}

.site-header__inner {
	gap: clamp(18px, 2.2vw, 24px);
}

.site-branding__link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	max-width: 100%;
	min-height: 40px;
	color: var(--tiptop-contrast);
	line-height: 1;
	text-decoration: none;
}

.site-branding__link:hover,
.site-branding__link:focus {
	color: var(--tiptop-contrast);
}

.site-branding__link .site-branding__title {
	min-width: 0;
	color: currentColor;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.site-branding__icon {
	flex: 0 0 auto;
	width: 32px;
	height: 32px;
	border-radius: 8px;
	object-fit: cover;
}

.site-branding__logo {
	display: block;
	max-width: min(100px, 24vw);
	max-height: 30px;
	width: auto;
	height: auto;
	object-fit: contain;
	transform: none;
}

@media (max-width: 820px) {
	.site-header__inner {
		gap: 12px;
	}

	.site-branding__link {
		gap: 6px;
		min-height: 36px;
	}

	.site-branding__logo {
		max-width: min(100px, 24vw);
		max-height: 28px;
		transform: none;
	}

	.site-branding__icon {
		width: 28px;
		height: 28px;
	}
}