.banner {
	margin: auto;
	height: auto;
	width: 100%;
}

.grid {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding: 10px;
}

details {
	margin-bottom: 20px;
}

summary {
	text-align: center;
	font-family: Bohemian;
	font-weight: bold;
	font-size: 1.5em;
}

summary:hover {
	cursor: pointer;
	text-decoration: underline;
}

summary::marker {
	content: "";
}

.gallery {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.gallery-itm {
	min-height: 100px;
	max-height: 500px;
	
	max-width: 475px;
	
	width: auto;
	height: auto;
	
	margin: 2px;
}

.character {
	max-width: 45%;
	text-align: start;
}

.character-head {
	display: flex;
	height: 100px;
}

.character-head>div>p {
	text-align: start;
}

.character-body {
	min-height: 80px;
}

.character-footer {
	text-align: center;
}

.character-fb {
	width: 40%;
	height: auto;
}

.character-icon {
	width: 100px;
	height: auto;
	margin-right: 15px;
}

.character-name {
	margin-top: -1px;
}