:root {
	padding: 2.5vw;
}

body {
	background-color: #000;
	color: #ff3;
	text-shadow: hsl(60, 100%, 35%) 0 0 0.1px;
	font-family: "FreeSerif", "Nimbus Roman",  Times, "Times New Roman", serif;
	font-size: 1.15em;
	margin: auto;
	max-width: 900px;
	box-sizing: border-box;
	border: double #ff0;
	border-radius: 0;
	padding: 3vw;
}

body > :first-child {
	margin-top: 0;
}

h1, h2, h3, h4, p, ul, ol, details {
	margin-left: 5vw;
	margin-right: 5vw;
}

h1, h2, h3 {
	margin-top: 1em;
}

h1, h4 {
	text-align: center;
}

h4 {
	background: #000;
}

p {
	line-height: 1.25;
}

img {
	width: 100%;
	height: auto;
}

a {
	font-style: italic;
	color: #ffff33;
}

details {
	border: 1px dotted yellow;
	padding: .1rem .25rem;
}

summary {
	font-style: italic;
}

a:visited {
	color: #ffffcc;
}

a::before { content: "> "; }
a::after  { content: " <"; }

hr {
	margin: 75px 0;
	border: thin solid #ff0;
}

.groshr {
	border: double #ff0;
	border-radius: 0;
}

/** tableaux **/

table {
	text-align: left;
	width: 100%;
	margin: 0 auto;
	/* border: double #ff0;  */
	border-radius: 0;
}

td {
	vertical-align: middle;
	text-align: center;
	padding: 5px;
}

table :is(h1, h2, h3, h4, p, ul) {
	margin-left: 0;
	margin-right: 0;
}

table :is(h1, h2, h3) {
	margin-top: 10px;
	margin-bottom: 10px;
}

table img, table video {
	width: revert-layer; 
	max-width: 100%;
}

