:root {
	--main-color: #00acab;
	--font-color: light-dark(black, lightgrey);
}

body {
	display: flex;
	flex-direction: column;
	align-items: center;
	color: var(--font-color);
}

section {
	max-width: 35em;
	padding: 2em;
	border-bottom: 0.1em var(--font-color) solid;
}

h1, h2 {
	text-align: center;
}

h1 {
	font-size: 2.5em;
	margin: 0.5em;
}

h2 {
	font-size: 2em;
	border: 0.1em solid var(--main-color);
}

h1 + div > .lines {
	font-variant: small-caps;
	text-align: center;
}


ul {
	display: flex;
	flex-direction: column;
	padding: 0em;
	align-items: center;
	list-style-type: none;
}

.speech {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin: 1em;
}

.didascalia {
	display: block;
	align-self: flex-end;
	text-align: right;
	font-style: italic;
}
.didascalia::after {
	content: ')';
}
.didascalia::before {
	content: '(';
}

.name {
	font-weight: bold;
	font-variant: small-caps;
	padding-left: 2em;
}
.name::after {
	content: ':';
}

footer {
	margin: 1em;
	display: flex;
	flex-direction: row;
}

footer > div {
	padding: 0.25em;
}
footer > div::before {
	content: '·';
}
footer > div::after {
	content: '·';
}

a {
	color: var(--main-color);
}
a:is(:hover, :focus) {
	text-decoration: wavy underline;
}
