:root {
	--primary-font-family: Georgia, "Times New Roman", Times, serif;

	--xxl-font-size: 2.5rem;
	--xl-font-size : 1.8rem;
	--l-font-size  : 1.5rem;
	--m-font-size  : 1.2rem;
	--r-font-size  : 1.0rem;
	--s-font-size  : 1rem;
	--xs-font-size : 0.8rem;
	--xxs-font-size: 0.7rem;
}

html,
body {
	margin : 0;
	padding: 0;
}

body {
	font-family: var(--primary-font-family);
	font-size  : var(--r-font-size);

	max-width: 960px;
	margin   : 0.2rem auto;
	padding  : 0.2rem;
}

body h1 {
	font-size: var(--l-font-size);
}

body h2 {
	font-size: var(--m-font-size);
}

.site-header {
	display        : flex;
	flex-direction : column;
	align-items    : center;
	justify-content: center;

	gap: .1rem;
}

.page-header {
	display              : grid;
	grid-template-columns: 1fr auto 1fr;
	align-items          : center;
}

.page-title {
	grid-column: 2;
	text-align : center;

	font-size  : var(--m-font-size);
	font-weight: bold;
}

.page-links {
	grid-column : 3;
	justify-self: end;

	display: flex;
	gap    : .5rem;
}

.page-main-title {
	font-size  : var(--l-font-size);
	font-weight: 800;
}

.page-main-subtitle {
	font-size  : var(--m-font-size);
	font-weight: 400;
}

.site-home-link {
	font-size: var(--s-font-size);
}

.site-footer {
	width     : 100%;
	text-align: center;
	font-size : var(--xs-font-size);
}

.site-main {
	width: 100%;
}

.index-company-name {
	font-size: var(--l-font-size);
}

.index-company-address {
	font-size: var(--xxs-font-size);
}

.index-main {
	display        : flex;
	flex-direction : row;
	justify-content: center;
	align-items    : center;
}

.index-main-links {
	flex: 3 1 auto;
}

.index-main-tagline {
	display       : flex;
	flex-direction: column;
	align-items   : center;
	text-align    : center;
	padding       : 1rem;
	margin-left   : .3rem;

	font-size: var(--s-font-size);

	flex: 1 1 25%;
}

.index-main-links-header {
	font-size: var(--m-font-size);
}

.index-main-link-item {
	margin-bottom: .5rem;
}

.index-main-link-desc {
	font-size: var(--s-font-size);
}

.index-main-links {
	text-align: left;
	margin    : 0 0 0 .3rem;
	padding   : 1rem;
}