/* HTML */

@font-face
{
    font-family: 'Spartan';
    src: url('fnt/LeagueSpartan.woff2');
    font-weight: 100 900;
    font-style: normal;
}

html
{
	hyphens: auto;
	overflow-y: scroll;
	scroll-behavior: smooth;
	
	font-family: 'Spartan', sans-serif;
}

html, body
{
	width: 100%;
}

:root
{
	--red:	#c40000;
	--blue:	#0047AB;
	--grey:	#F5F5F5;
	--yellow: #FFD700;
	
	--header_h: 4em;
	--main_h: calc(100vh - var(--header_h));
	--nav_w: 5em;
}

::selection
{
	background-color: var(--yellow);
	color: black;
}

:target
{
	scroll-margin-top: 4.5em;
}

a
{
	text-decoration: none;
	color: black;
}

main
{
	width: 100%;
	min-height: 100%;
	display: flex;
}

small
{
	font-weight: 300;
	font-size: 0.8em;
	color: grey;
}

u
{
	text-decoration: none;
	border-bottom: 2px solid black;
	box-sizing: border-box;
}

/* HEADER */

header
{
	width: 100%;
	height: var(--header_h);
	background-color: black;
	position: sticky;
	top: 0;
	display: flex;
	padding: 8px 8px;
	box-sizing: border-box;
	z-index: 999;
	
	display: flex;
	gap: 8px;
}

header div
{
	display: flex;
	justify-content: flex-end;
	gap: 8px;
}

header a h1
{
	background-color: var(--yellow);
	color: black;
	text-transform: uppercase;
	height: 100%;
	font-size: 2em;
	font-weight: 900;
	padding-left: 0.3em;
	padding-right: 0.3em;
	display: flex;
	align-items: center;
	letter-spacing: 0.1em;
}

header h2
{
	color: var(--yellow);
	font-size: 1.3em;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

header select
{
	padding: 0;
	border: 0;
}

header h3,
header select
{
	text-transform: uppercase;
	height: 100%;
	padding-left: 0.8em;
	padding-right: 0.8em;
	display: flex;
	align-items: center;
	letter-spacing: 0.1em;
	font-size: 1em;
	color: var(--yellow);
	box-sizing: border-box;
	margin-left: auto;
	font-weight: bold;
	border: 4px solid var(--yellow);
}

header select
{
	
	background-color: var(--yellow);
	color: black;
}

header h1 b { color: var(--red);}

header h1 span { margin-top: 3px; }

header h1 span:nth-of-type(2) { text-transform: uppercase; font-weight: 300; }

header a:hover h1
{
	background-color: var(--red);
	color: white;
}

header a:hover h1 b { color: black;}

header a:hover h3
{
	background-color: var(--yellow);
	color: black;
}

/* NAV */

nav
{
	width: var(--nav_w);
	background-color: black;
	
	height: var(--main_h);
	
	position: sticky;
	top: var(--header_h);
	
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-content: flex-start;
	flex-direction: column;
	gap: 8px;
	
	padding-left: 8px;
	padding-bottom: 8px;
	box-sizing: border-box;
}

nav a
{
	background-color: #333;
	width: 100%;
	
	display: inline-block;
	flex-shrink: 1;
}

nav a:last-of-type
{
	margin-top: auto;
}

nav a img
{
	display: block; /* Removes bottom whitespace */
	height: auto;
	width: auto;
	max-width: 100%;
}

nav a:hover,
.menu_active
{
	background-color: var(--yellow);
}

nav a:hover img,
.menu_active img
{
	filter: invert(100%);
}

/* CONTENT */

section#main_content
{
	width: calc(35% - var(--nav_w));
	display: flex;
	flex-direction: column;
	gap: 1em;
	padding: 1em;
	
	background-color: var(--yellow);
	
	border-left: 8px solid black;
	border-right: 8px solid black;
	box-sizing: border-box;
}

section#main_content h1
{
	width: 100%;
	padding: 1em;
	box-sizing: border-box;
	font-size: 1.2em;
	background-color: black;
	text-align: center;
	text-transform: uppercase;
	font-weight: bold;
	letter-spacing: 0.2em;
	color: white;
}

section#main_content h2
{
	width: 100%;
	padding: 1em;
	box-sizing: border-box;
	font-size: 1em;
	text-align: center;
	text-transform: uppercase;
	font-weight: bold;
	border: 8px solid black;
	box-sizing: border-box;
	background-color: #FFFFF0;
}

/* MAP ETC */

aside
{
	width: 65%;
	position: sticky;
	height: var(--main_h);
	
	position: sticky;
	top: var(--header_h);
	
	background-color: var(--blue);
	
	box-sizing: border-box;
}



aside div#map
{
	width: 100%;
	height: 100%;
	box-sizing: border-box;
}

/* TEXT */

div.text
{
	background-color: #FFFFF0;
	padding: 1em;
	box-sizing: border-box;
	text-align: justify;
	width: 100%;
	
	display: flex;
	flex-direction: column;
	gap: 0.5em;
}

div.text h1
{
	background-color: var(--yellow) !important; 
	font-weight: bold;
	padding: 0.5em;
	box-sizing: border-box;
	text-align: center;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	margin-bottom: 0.5em;
}

div.text p
{
	width: 100%;
	line-height: 1.5;
	text-indent: 2em;
}

b, .bold
{
	font-weight: bold;
}

div.text a,
.list_entry a
{
	font-weight: bold;
	text-decoration: none;
	color: black;
	border-bottom: 2px solid var(--yellow);
}

div.text a:hover,
.list_entry a:hover
{
	color: black;
	background-color: var(--yellow);
}

/* SUMMARY TABLE */

table.entry_summary
{
	border-collapse: collapse;
	width: 100%;
	line-height: 1.5;
	box-sizing: border-box;
}

table.entry_summary tr
{
	border-top: 2px solid  var(--yellow);
	border-bottom: 2px solid  var(--yellow);
}

table.entry_summary tr:first-of-type { border-top: 0;}
table.entry_summary tr:last-of-type { border-bottom: 0;}

table.entry_summary th, table.entry_summary td
{
	padding: 0.7em;
	box-sizing: border-box;
}



/* ENTRY */

table.list_entry
{
	border-collapse: collapse;
	border: 8px solid black;
	box-sizing: border-box;
	width: 100%;
	font-size: 1.1em;
}

table.list_entry th, table.list_entry td
{
	padding: 0.8em;
	box-sizing: border-box;
	vertical-align: middle;
}

table.list_entry td.illus_container
{
	background-color:  var(--yellow);
	border-top: 8px solid black;
	border-bottom: 8px solid black;
}

.list_entry img.illus
{	
	mix-blend-mode: multiply;
	width: 100%;
	display: block;
}

.blownout
{
	filter: contrast(150%) brightness(130%);
}

.crushed
{
	filter: contrast(125%) brightness(0.5);
}

table.list_entry thead
{
	background-color: black;
	color: white;
	text-transform: uppercase;
	font-weight: bold;
	letter-spacing: 0.2em;
	line-height: 1.2;
}

table.list_entry tbody
{
	background-color: white;
}

table.list_entry .timeplace
{
	background-color: whitesmoke;
}

td.icon_container
{
	text-align: center;
	vertical-align: top;
	white-space: nowrap;
	width: 1%;
}

table.list_entry td.icon_container
{
	vertical-align: top;
}

table.list_entry td:nth-of-type(2)
{
	padding-left: 0;
}


table.list_entry p
{
	line-height: 1.3;
	hyphens: none;
	text-wrap: balanced;
}

.list_entry .table_icon
{
	height: 1.1em;
}

.button_container
{
	text-align: center;
	vertical-align: top;
	white-space: nowrap;
	width: 1%;
}

.summary .button_container
{
	vertical-align: bottom;
}

button
{
	/* RESET */
    cursor: pointer;
    border: none;
    background: transparent;
    font: inherit;
    padding: 0;
	
	box-sizing: border-box;
	background-color: black;
	color: white;
	font-size: 0.7em;
	padding: 0.2em;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	user-select: none;
	text-align: center;
	border: 1px solid black;
	font-weight: bold;
}

button:hover
{
	background-color: var(--yellow);
	color: black;
}

button:active
{
	background-color: goldenrod;
	color: black;
}









#targets
{
	width: 100%;
	display: flex;
	gap: 1em;
	flex-wrap: wrap;
	margin-top: 0.5em;
}



td.td_with_img
{
	display: flex;
	gap: 0.5em;
	align-items: center;
}

td.td_with_img img
{
	height: 0.8em;
	opacity: 0.5;
}


td.td_with_img span
{
	position: relative;
	top: 1px;
}

/* HOME */

a.home_link
{
	font-size: 7em;
	color: black;
	font-weight: bold;
	text-transform: uppercase;
	text-decoration: none;
	text-align: justify;
	text-align-last:justify;
	text-justify: inter-character;
	width: 100%;
	line-height: 0.8;
}

a.home_link:hover
{
	color: var(--red);
}

#victims
{
	font-size: 1.8em;
	
	line-height: 1.4;
	width: 100%;
	text-align: justify;
	text-justify: inter-character;
	margin-top: -0.25em;
	
	hyphens: none;
	
	background-image: url('../img/web/cross.svg');
	
	background-size: auto 100%;
	background-repeat: no-repeat;
	background-position: center;
}

#victims a
{ color: goldenrod; }

#victims a:hover
{ color: black; }

#victims a:nth-of-type(odd)
{ font-weight: bold; }

a.readmore
{
	font-weight: bold;
}

a.readmore:hover
{
	color: var(--yellow);
}












.entry_img
{
	/*border: 8px solid black;*/
	width: 100%;
	box-sizing: border-box;
	background-color: var(--yellow);
	padding: 0;
}

.entry_img img
{
	width: 100%;
	mix-blend-mode: multiply;
	display: block;
	filter: contrast(150%) brightness(130%);
}

#arrows
{
	width: 100%;
	height: 3em;
	display: flex;
	justify-content: space-between;
	background-color: white;
}

#arrows a
{
	height: 100%;
}

blockquote
{
	hyphens: none;
	margin-left: 2em;
	text-align: right;
	line-height: 1.2;
	margin-top: 1em;
	margin-bottom: 1em;
	border-right: 4px solid black;
	padding: 0.25em;
	padding-right: 1em;
	text-wrap: balance;
}

blockquote .quote
{
	display: block; 
	font-size: 1.5em;
	font-weight: bold;
	font-style: italic;
	margin-bottom: 0.2em;
}

blockquote .q_src
{
	font-size: 1em;
	font-weight: 300;
}






.slideshow
{
	position: relative;
	width: 100%;
	height: 100%;
	overflow: hidden;
	mix-blend-mode: screen;
}

.slideshow img
{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	opacity: 0;
	transition: opacity 2s ease-in-out;
}

.slideshow img.active
{
	opacity: 1;
}



#poster
{
	width: 100%;
	height: 100%;
	background-color: var(--yellow);
	mix-blend-mode: normal;
	
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 3em;
	
	/*
	background-image: url('../img/hom/bg.jpg');
	background-size: cover;
	background-blend-mode: multiply;
	*/
}

#poster h1
{
	display: flex;
	justify-content: center;
}

#poster h1 img
{
	height: 1.1em;
	margin-right: 0.1em;
}

#poster h1 span:nth-of-type(2)
{
	font-weight: 200;
	margin-left: 0.1em;
	margin-right: 0.1em;
}

#poster h1,
#poster h2,
#poster h3,
#poster h4
{
	font-weight: 900;
	text-transform: uppercase;
	line-height: 1.3;
}

#poster h1 { font-size: 5em; }
#poster h2 { font-size: 1.5em; letter-spacing: 0.1em; font-style: italic; color: var(--red); }
#poster h3 { font-size: 2em; letter-spacing: 0.1em; font-style: italic; }
#poster h4 { font-size: 1em; color: goldenrod; letter-spacing: 0.05em; font-weight: 700; }

#tagline_container,
#disclaimer_container
{
	width: 100%;
	text-align: center;
	
	display: flex;
	flex-direction: column;
	justify-content: center;
}

#disclaimer_container
{
	gap: 2em;
}

#tagline_container span,
#disclaimer_container span
{
	display: block;
}

#sketch_container
{
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	mix-blend-mode: multiply;
	
	display: flex;
	gap: 2em;
	
	justify-content: center;
}

#sketch_container img
{
	opacity: 90%;
	width: 100%;
}




ul small
{
	margin-left: 0.3em;
}

.car_list tr:nth-of-type(even) { background-color: whitesmoke; }

#map
{
	background-color: var(--blue);
}

.leaflet-tile-pane
{
	
	opacity: 0.5;
}















@media (max-width: 800px)
{
	html
	{
		font-size: 1em;
	}
	
	#btn_contact, #btn_support
	{
		display: none;
	}
	
	main
	{
		flex-direction: column;
	}
	
	nav
	{
		width: 100%;
		height: 5em;
		
		flex-direction: row;
		
		z-index: 99;
		
		padding: 0;
		padding-left: 8px;
		padding-right: 8px;
		padding-bottom: 8px;
		box-sizing: border-box;
	}
	
	nav a
	{
		width: auto;
		height: 100%;
		flex-shrink: 2;
	}
	
	nav a:last-of-type
	{
		margin-left: auto;
	}
	
	nav a img
	{
		height: 100%;
		width: auto;
	}
	
	section#main_content
	{
		width: 100%;
		border: 0;
	}
	
	aside
	{
		width: 100%;
		z-index: 999;
	}
	
	#poster
	{
		font-size: 0.5em;
	}
}