@charset "utf-8";
:root {
	--mg: 20px;
	--mg-gap: 20px;
	--header-logo-size: clamp(2.2rem, 8.2vw, 3rem);
	--header-topbar-py: 10px;
	--header-info-h: 26px;
	--WRAP-margin: calc(var(--header-logo-size) + (var(--header-topbar-py) * 2) + var(--header-info-h));
}
header h1 a {
	font-size: var(--header-logo-size);
}
footer h1 a {
	font-size: 3rem;
	line-height: 3rem;
}
#topBar {
	padding: var(--header-topbar-py) var(--mg);
	width: 100%;
	box-sizing: border-box;
}
#infoBar {
	line-height: var(--header-info-h);
	height: var(--header-info-h);
	min-height: var(--header-info-h);
	font-size: 0.72rem;
}
header {
	width: 100%;
}
nav {
	top: calc(var(--WRAP-margin) + 8px);
	left: auto;
	right: var(--mg);
	width: max-content;
	max-width: calc(100vw - (var(--mg) * 2) - (var(--stack-step) * 2));
	transform: translateY(-10px);
	transition: opacity 0.2s ease, transform 0.2s ease;
}
nav.active {
	transform: translateY(0);
}
.menuStack {
	width: auto;
	max-width: 100%;
	box-sizing: border-box;
	/*padding: 14px;*/
}
.hamburgerMenu {
	--dot: 3px;
	--pitch: 5px;
	margin-left: 14px;
}
nav ul li {
	letter-spacing: 0.08em;
}
nav ul li a {
	font-size: clamp(1.2rem, 5.4vw, 1.6rem);
}
h2 {
	font-size: clamp(1.65rem, 7.2vw, 2rem);
	letter-spacing: 0.22em;
}
.wrapper {
	padding: 0 var(--mg);
}
footer ul {
	flex-wrap: wrap;
	gap: 10px 16px;
}
footer ul li {
	letter-spacing: 0.14em;
}
footer ul li a {
	font-size: clamp(0.78rem, 3.6vw, 0.95rem);
}
