*
{
	margin: 0;
	box-sizing: border-box;
}

body
{
	background-color: #DDD;
	font-family: Helvetica, Verdana, sans-serif;
	text-align: center;
}

h1
{
	font-size: 300%;
}

h2
{
	margin: 0 0 16px 0;
}

h3
{
	margin: 0 0 16px 0;
}

.container
{
	min-width: 480px;
	max-width: 1440px;
	display: inline-block;
	background-color: rgba(255, 255, 255, 0.5);
	padding: 0;
	margin: 32px 0;
	position: relative;
	background-image: url('images/background_tile.png');
}

.background
{
	display: block;
	width: 100%;
	height: 360px;
	position: absolute;
	z-index: 0;
	background-color: #677;
	background-image: url('images/background.jpg');
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100%;
}

.content
{
	z-index: 1;
	position: relative;
}

.header
{
	position: fixed;
	z-index: 2;
	display: box;
	height: 32px;
	width: 100%;
	background-color: rgba(255, 255, 255, 0.8);
	backdrop-filter: blur(3px);
}

.title_box
{
	max-width: 1440px;
	display: block;
	margin: 0;
}

.title
{
	color: #FFF;
	display: inline-block;
	margin: 32px 0;
	font-size: 300%;
	font-weight: bold;
	text-shadow: 3px 3px #000;
}

.subtitle
{
	color: #FFF;
	display: inline-block;
	margin: 16px 0;
	padding: 16px 0;
	width: 100%;
	background-image: url('images/gradient_360px.png');
	background-repeat: repeat;
	background-color: #058;
}

.box_container_360
{
	display: inline-block;
	width: 360px;
}

.box_container_480
{
	display: inline-block;
	width: 480px;
}

.footer
{
	background-image: url('images/gradient_360px.png');
	background-size: 100% 200%;
	background-repeat: repeat;
	background-color: #000;
	font-weight: bold;
	color: #FFF;
	margin: 16px 0;
	padding: 4px;	
}

.box
{
	margin: 16px;
	padding: 8px;
	display: inline-block;
	background-color: rgba(0, 0, 0, 1);
	background-color: #111;
	border-radius: 2px;
	text-align: justify;
	vertical-align: top;
	color: #FFF;
	background-image: url('images/gradient_360px.png');
	background-repeat: repeat;
	border-top: solid 5px #058;
}

.box_480
{
	width: 348px;
	height: 150px;
}

#light_mode_switch
{
	width: 32px;
	height: 32px;
	background-image: url('images/icon_light_mode_1.png');
	background-position: 0px 0px;
	background-repeat: no-repeat;
	cursor: pointer;
	user-select: none;
}

.left
{
	float: left;
}

.right
{
	float: right;
}

.contact {
	background-color: #FFF;
	background-image: url('images/background_tile.png');
	margin: 10% auto;
	padding: 8px;
	font-size: 200%;
	font-weight: bold;
	border-radius: 2px;
	display: inline-block;
}

.contact_close {
	float: right;
	padding: 0 10px;
	font-weight: bold;
	background-color: #DDD;
	border-radius: 3px;
	user-select: none;
	cursor: pointer;
}

#overlay {
	display: none;
	position: fixed;
	z-index: 2;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	backdrop-filter: blur(8px);
	background-color: #000;
  background-color: rgba(0, 0, 0, 0.75);
  text-align: center;
}
