body
{
	margin:0px;
	font-family:arial;
	color:#eee;
}

h1, h2, h3, h4, h5, h6
{
	text-align:center;
}

.page 
{	
	background-image:url(img/bg3.png);
	/* background:silver; */
	background-attachment:fixed;
	background-position:center;
	box-shadow: inset 0 0 0 2000px #420d;
}
.header {background:#111c;}
.navigation, .footer {background:#111b;}
.content, .rightBar {background:#111a;}

.page
{
	min-height:100vh;
	display:grid;
	grid-template-columns: 1fr minmax(10em, 10%) repeat(7, minmax(auto, 10%)) 1fr;
    grid-template-rows: minmax(7em, auto) minmax(3em, auto) 1fr minmax(3em, auto);
}

@font-face 
{
    font-family: Rye;
    src: url(fonts/Rye-Regular.ttf);
   }

.header
{
	grid-column:1/-1;
	grid-row:1;
	padding:0.5em;
	display:flex;
	justify-content:center;
	text-align:center;
	border-bottom:#444 1px solid;
	font-family:Rye;
	font-size:3em;
	/* color:silver; */
	/* text-shadow: 0px 0px 1px #111; */
	/* white-space: nowrap; */
}

.navigation
{
	grid-column:1/-1;
	grid-row:2;
	/* border-bottom:#444 1px solid; */
}

.navigation > ul
{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-evenly;
	padding:0;
	
}

.navigation > ul > li
{
	display:flex;
	margin:10px 20px;
}

.navigation > ul > li > a
{
	padding:10px 20px;
	margin:-10px -20px;
	text-decoration:none;
	color:#eee;
	font-weight:bold;
	font-size:120%;
}

.leftBar
{
	grid-column:2/3;
	grid-row:3;
	padding:0px; margin:0px;
	border-top:#444 1px solid;
	border-bottom:#444 1px solid;
}

.leftBar > ul
{
	padding:0px; margin:0px;
	position:sticky;
	top:0;
	
}

.leftBar > ul > li
{
	display:flex;
	padding:0px; margin:0px;
}

.leftBar > ul > li > a
{
	width:100%;
	padding:1em;
	margin:0.5em 0 0 0;
	text-decoration:none;
	color:#eee;
	background:#111a;
	text-align:left;
	overflow: hidden;
	white-space:nowrap;
	text-overflow:ellipsis;
}

.leftBar > ul > li:first-child > a
{
	margin-top:2em;
}

.leftBar > ul > li:last-child > a
{
	margin-bottom:2em;
}

.leftBar > ul > li > a[data="H2"]
{
	margin-left:10%;
}

.leftBar > ul > li > a[data="H3"]
{
	margin-left:20%;
}

.leftBar > ul > li.active > a
{
	border-right:#444 0.5em solid;
}

.leftBar > ul > li > a:hover
{
	background:#222a;
}

.leftBar:empty
{
	display:none;
}

.leftBar:empty + .content
{
	grid-column-start:2;
	border-left:none;
}

.content
{
    grid-column:3/8;
	grid-row:3;
	padding:10px;
	padding:1em 2em;
	border:#444 1px solid;
	position:relative;
	display:block;
}

.rightBar
{
	grid-column:8/10;
	grid-row:3;
	padding:1em;
	border-top:#444 1px solid;
	border-bottom:#444 1px solid;
}

.footer
{
	grid-column:1/-1;
	grid-row:4;
	padding:10px;
	display:flex;
	justify-content:flex-end;
	/* border-top:#444 1px solid; */
}

.band, .contact
{
	display:block;
	width:90%;	min-height:100px;
	margin:auto; margin-bottom:10px; padding:10px;
	background:#1118;
	border: #444 3px solid;
}

.band img
{
	display:block;
	height:100px;
	float:left;
	margin-right:10px;
}

#viewer_reg fieldset, #band_reg fieldset
{
	padding:1em;
	font-size:120%;
	border:none;
}

#viewer_reg_tab, #band_reg_tab
{
	display:block;
	font-size:120%;
	position:absolute;
	top:3em;
	background:#1118;
	border:#444 3px solid;
	text-align:center;
	padding:1em;
	cursor: pointer;	
}

#viewer_reg_tab
{
	left:15%; right:55%; 
}

#band_reg_tab
{
	left:55%; right:15%;
}

#viewer_reg, #band_reg
{
	display:none;
	left:10%; right:10%; top:8em;
	min-height:500px;
	position:absolute;
	background:#1118;
	border: 3px solid #444;
	
}

#viewer_reg_tab.active_tab, #band_reg_tab.active_tab
{
	background:#4448;
}


#viewer_reg.active_tab, #band_reg.active_tab
{
	display:block;
}

#viewer_reg fieldset > label, #band_reg fieldset > label
{
	display:block;
	width:100%; height:36px;
	float:left;
	margin-top:1em;
	margin-bottom:1em;
	line-height:36px;
}

#viewer_reg fieldset > label > input, #band_reg fieldset > label > input
{
	display:block;
	width:60%; 
	height:30px;
	float:right;
}

form > input[type=submit]
{
	position:relative;
	display:block;
	width:200px;
	height:50px;
	border:3px solid #444;
	margin-left: auto;
    margin-right: auto;
	background:#4448;
	color: #eee;
	font-size:120%;
}

.contact > span
{
	display:block;
	float:clear;
	padding:0.5em;
}

.contact > .name
{
	font-size:120%;
	font-weight:bold;
}

.contact > .phone:before
{
	content:"Телефон: ";
}

.contact > .email:before
{
	content:"Электронная почта: ";
}

.content > p > img
{
	display:block;
	height:100px;
	float:right;
	margin-right:10px;
}

.content > #reg
{
	 width:100%;
	 height:calc(10em + 500px);
}

/* Адаптивная разметка */
@media screen and (max-width:1080px)
{
	.page
	{
		grid-template-rows:  minmax(7em, auto) minmax(3em, auto) 1fr minmax(0, auto) minmax(3em, auto);
	}
	.content
	{
		grid-column-end:10;
		border-right:none;
	}
	.rightBar
	{
		grid-column:2/-2;
		grid-row:4;
		border:none;
		border-bottom:#444 1px solid;
		padding:1em 2em;
	}
	.footer
	{
		grid-column:1/-1;
		grid-row:5;
	}
}

@media (max-width:720px)
{
	.page
	{
		grid-template-columns: 1fr repeat(8, minmax(auto, 10%)) 1fr;
		grid-template-rows:  minmax(5em, auto) minmax(3em, auto) minmax(3em, auto) 1fr minmax(0, auto) minmax(3em, auto);
	}
	.header
	{
		font-size:2em;
	}
	.leftBar
	{
		grid-column:2/-2;
		grid-row:3;
		border:none;
		border-top:#444 1px solid;
		background:#111a;
	}

	.content
	{
		grid-column:2/10;
		grid-row:4;
		border-left:none;
		border-right:none;
	}
	
	.leftBar:empty + .content
	{
		grid-row:3/5;
	}
	
	.rightBar
	{
		grid-row:5;
		border:none;
		border-bottom:#444 1px solid;
	}
	.footer
	{
		grid-column:1/-1;
		grid-row:6;
	}
}