:root {
	--page: 18px;
	--gap: 0.6rem;
	--headroom: calc(1.235em * 2);
	--slides-t: 4.5rem;
	--slides-b: 4rem;
	--footer-height: min(6rem, 15vh);
	font-size: clamp(0.95rem, calc(1.25rem + ((3vw - 1.225rem) * 0.6868)), 1.45rem);
}

.home .content {
	display: flex;
	flex-direction: column;
	overflow-y: auto;
}

header.site {
	padding-bottom: 0.5rem;
}

footer .logo {
	min-width: unset;
	margin: 0;
	width: 100%;
	max-width: 40vmax;
	max-height: 12vmax;
}

.contact {
	font-size: unset;
	grid-template-areas: "address address address" "email email email" "linkedin instagram .";
	grid-template-columns: 1fr 1fr 0.5fr;
}

.contact .phone-and-address {
	padding: 0.15em 0;
	text-align: right;
	justify-content: flex-end;
}

.contact .instagram {
	text-align: left;
	padding-left: 30%;
}

.contact .linkedin,
.contact .instagram {
	font-size: 1.05em;
}

.contact .email {
	display: block;
	grid-row: unset;
	margin-block: 0.1em;
}

.legal-notice {
	display: none;
}

.about .block .box {
	max-width: 32rem;
	margin-inline: auto;
}

.header {
	min-height: 1.235em;
}

.about .block-gallery {
	min-height: unset;
}

.about [aria-hidden] {
	display: none;
}

.home .gallery {
	justify-content: center;
	justify-self: center;
}

.content .gallery li {
	max-width: 10rem;
}

.projects .box {
	margin-inline: auto;
}

.projects .box .header,
.clients,
.clients .header {
	padding-top: 1.235em;
}

.hidden {
	height: 0;
	opacity: 0;
	position: absolute;
}

[data-dialog="impressions"] .x {
	bottom: calc(var(--slides-b) + var(--page));
}
