* {
	font-family: var(--brand-font), sans-serif;
}

body {
	height: fit-content;
	position: relative;
	margin-inline: 0;
	margin-top: 0;
}

body img.accent-background {
	position: absolute;
	right: 0;
	bottom: -1em; /* same as padding-block of the last p-element */
	width: auto;
	height: 75vh;
	opacity: 0.5;
}

.static-header {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	column-gap: 5em;
	margin-top: 3em;
	margin-bottom: 1.5em;
}

.static-header .socials {
	height: fit-content;
	flex-direction: column;
	background-color: transparent;
	row-gap: 0.75em;
	font-size: 0.85em;
}

.static-header-slogan {
	justify-content: center;
	display: flex;
	flex-direction: row;
	margin-bottom: 2em;
}

.static-header-slogan span:last-child::before {
	content: '·';
	margin-inline: 1em;
	color: black;
}

.static-header-slogan span {
	font-family: var(--brand-font-bold), sans-serif;
}

.static-header-slogan span.blue {
	color: var(--brand-blue);
}

.static-header-slogan span.green {
	color: var(--brand-green);
}

main {
	width: var(--body-width);
	max-width: 800px;
	margin-inline: auto;
	line-height: 1.25;
}

a {
	color: var(--brand-blue);
	text-underline-offset: 0.25em;
	transition: 0.3s;
}

a:hover {
	text-decoration-color: transparent;
	transition: 0.3s;
}

.brand-heading {
	margin-block: 3em;
	line-height: 1;
}

.static-header .brand-heading {
	margin-block: 0;
}

.brand-heading:has(img) {
	display: flex;
	flex-direction: row;
	column-gap: 3em;
	/*justify-content: center;*/ /* horizontal centering */
	align-items: center; /* vertical centering */
}

.brand-heading img {
	height: 180px;
	max-height: 100%;
	display: block;
	position: relative;
}

.brand-heading .text {
	display: flex;
	flex-direction: column;
	width: fit-content;
	align-items: center;
	row-gap: 1em;
	height: fit-content;
}

.brand-heading .h1-container {
	display: flex;
	flex-direction: column;
}

.brand-heading h1 span {
	background-color: var(--brand-beige);
	padding-block: 0.2em;
	padding-inline: 0.4em;
	display: inline-block;
	width: fit-content;
}

.brand-heading .subheading {
	margin-left: 1em;
	color: var(--brand-green);
	text-transform: uppercase;
	font-family: var(--brand-font-bold), sans-serif;
}

.brand-heading .heading {
	/*font-family: "Inter Light", sans-serif;*/
	text-transform: uppercase;
	color: var(--brand-blue);
}

.brand-heading h1 {
	font-size: 40px;
	margin-block: 0;
}

.brand-heading a {
	text-decoration: none;
}

.brand-description {
	font-size: 16px;
	background-color: var(--brand-blue);
	color: white;
	padding-inline: 0.5em;
	padding-block: 0.25em;
	border-radius: 0.1em;
}

.brand-description .highlight {
	font-family: var(--brand-font-bold), sans-serif;
	color: var(--brand-green-foreground);
}

.socials {
	background: var(--brand-beige);
	padding-inline: 1.2em;
	font-size: 1.15em;
	padding-block: 0.75em;
	border-radius: 0.45em;
	display: flex;
	flex-direction: row;
	column-gap: 0.75em;
	width: fit-content;
}

.socials a {
	background-color: var(--brand-blue);
	border: 1px solid transparent;
	border-radius: 100px;
	color: var(--brand-beige);
	display: flex;
	width: 2.25em;
	height: 2.25em;
	align-items: center;
	text-decoration: none;
	justify-content: center;
}

.socials.light a {
	background-color: var(--brand-blue-light);
	color: var(--brand-blue);
	border-color: var(--brand-blue);
	transition: background-color 0.3s;
}

.socials a:hover {
	background-color: var(--brand-blue-darker);
}

.socials.light a:hover {
	background-color: var(--brand-blue-light-hover);
	transition: background-color 0.3s;
}

.social-icon:has(.label) {
	width: fit-content;
	padding-inline: 0.85em;
	display: flex;
	flex-direction: row;
	column-gap: 0.4em;
}

.social-icon .label {
	font-style: normal;
	font-size: 0.8em;
	font-family: "Inter Medium", sans-serif; /* Global Indifference looks bad here */
}

footer {
	justify-content: center;
	display: flex;
}