div.section h4
{
	color:#FFF !important;
	background:#333 !important;
	padding:1em !important;
	margin-top:2rem;
}

div.section>div
{
	margin:1rem 0;
}

div.flexrow, div.flexitem, div.results, div.about, div#register>div
{
	display:flex;
}

div.results
{
	flex-wrap:wrap;
	gap:1rem;
}

div.about, div#register>div, div#soldiers p
{
	font-size:1.1em;
}

div.about>p, div#register>div>p
{
	flex:1;
	justify-content: space-between;
}

div.flexrow img
{
	align-self:baseline;
	flex:1 0 auto;
	border:1px solid #333;
	margin-left:.5em;
}

div.results div.year
{
	flex:0 1 300px;
	text-align: center;
}

div#register>div.flexrow>div, div#register>div.flexrow>p
{
	flex:1 0 30%;
}

p#date 
{
	padding:.5em 1em;
	margin-left:auto;
	color:#EEE;
	font-size:1.2em;
}
p.button>a
{
	background:#FC0;
	color:#639;
	display:block;
	padding:1em;
	font-size:1.2rem;
	transition:all 0.1s ease;
	width:fit-content;
}
p.button>a:hover
{
	background:#639;
	color:#FFF !important;
}

div#video_bar 
{
	width:100%;
	position:relative;
}
div#video_bar video
{
	width:100%
}
div#video_bar img
{
	position:absolute;
	right:1rem;
	top:1rem;
	width:21vw;
}

img.border {border:1px solid #666;}
div.rows
{
	display: flex;
	flex-wrap: wrap;
	gap: .5rem;
	justify-content: space-evenly;
	gap: 4px;
}

@media only screen and (max-width:449px) {
	.flexitem {flex-direction:column;}
}

@media only screen and (max-width:899px) {
	.flexrow {flex-direction:column;}
	.flexitem:first-child {margin-bottom:1em;}
	.about {flex-direction:column;}
}

@media only screen and (min-width:900px) {
	.flexrow {justify-content:space-between;}
	.flexitem {max-width:48%;}
	.flexitem:first-child {margin-right:1em;}
	#race_contact {margin-left:1em;padding-left:1em;border-left:1px solid #CCC;}
}