@font-face {
	font-family: baskervaldx;
	src:
		local("Baskervaldx-Reg"),
		local("Baskervaldx Reg"),
		url("/fonts/Baskervaldx-Reg.otf") format("opentype");
}

@font-face {
	font-family: baskervaldx;
	src:
		local("Baskervaldx-Ita"),
		local("Baskervaldx Ita"),
		url("/fonts/Baskervaldx-Ita.otf") format("opentype");
	font-style: italic;
}

@font-face {
	font-family: baskervaldx;
	src:
		local("Baskervaldx-Bol"),
		local("Baskervaldx Bol"),
		url("/fonts/Baskervaldx-Bol.otf") format("opentype");
	font-weight: bold;
}

@font-face {
	font-family: baskervaldx;
	src:
		local("Baskervaldx-BolIta"),
		local("Baskervaldx BolIta"),
		url("/fonts/Baskervaldx-BolIta.otf") format("opentype");
	font-weight: bold;
	font-style: italic;
}

:root {
	font-family: baskervaldx, serif;
	font-variant-numeric: oldstyle-nums proportional-nums;
	font-size: 1.1rem;
}

body {
	display: flex;
	flex-direction: column;
	min-height: 93vh;

	height: 100%;           /* Ensure the body covers the entire viewport */
	margin: 0;              /* Remove default margin */
	background-color: #ecece8; /* Set the background color */
}

header {
	margin: auto;
	text-align: center;
}

main {
	flex-grow: 1;
	margin: auto;
	padding: 0 2em;
	max-width: 30em;
	text-align:justify;
	text-justify: inter-word;
	line-height: 1.4;
}

footer {
	position: relative;
	margin: 3rem auto 1rem;
	font-size: 0.8em;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: normal;
}

h2, h3, h4, h5, h6 {
	padding-left: 0rem;
}

a {
    color: black;                 /* Ensures the text is black */
    text-decoration: underline;   /* Ensures the underline is visible */
    text-decoration-color: red;   /* Sets the underline color to red */
}

a:hover {
    text-decoration-color: darkred; /* Changes the underline color on hover */
}

figure {
	text-align: center;

	figcaption {
		margin: auto;
		max-width: 80%;
		font-size: smaller;
	}

	img {
		margin: auto;
		max-width: 100%;
		max-height: 28em;
		border: 0.2rem solid gray;
	}

}

.banner {
	position: relative;
	margin: 1rem auto 0;
	font-size: 1em;
	display: flex;
	flex-direction: row;
	justify-content: center;
	font-style: italic;
}

.head-rule {
	margin: 1rem -2rem 2rem;
}

/* only for hr in <p> */
.p-head-rule {
	margin: 1rem -0.5rem 1rem;
}

.tabular {
	font-variant-numeric: tabular-nums;
}