* {
	margin: 0;
	padding: 0;
}

ul {
	list-style: none;
}

a {
	text-decoration: none;
	color: #fff;
}

html {
	font: .85em sans-serif;
	color: #fff;
}

html,
body {
	background-color: #000;
	height: 100%;
}

header {
	position: fixed;
	display: block;
	width: 100%;
	top: 0;
	padding-top: .5em;
	background-color: #000;
	height: 2.5em;
	border-bottom: 1px solid #444;
	z-index: 999;
}

header h1,
header h2 {
	display: inline-block;
	color: #fff;
	font-size: 1em;
	padding-top: .5em;
	font-weight: normal;
}

header h1 {
	margin-left: calc(5% + 1em);
}

header h2:before {
	content: " – "
}

header nav {
	position: absolute;
	top: 0;
	right: 0;
	display: inline-block;
	width: 50%;
	text-align: right;
}

#m1 {
	margin: .5em calc(10% - 1em) 0 0;
}

#m1 li,
#m2 li {
	display: inline-block;
}

#m1 li a,
#m2 li a {
	display: inline-block;
	white-space: nowrap;
	padding: .5em 1em;
	color: #fff;
}

#m1 li a:hover,
#m2 li a:hover {
	color: #eee;
}

section,
#infotext {
	margin: 4em 5% 1em 5%;
	padding: 1em;
}

#cf fieldset {
	border: 0;
}

#cf label {
	display: block;
	padding: .3em 0;
}

#cf label span {
	display: inline-block;
	min-width: 12em;
}

#cf p.e {
	background: red;
	padding: .5em;
}

textarea {
	display: block;
	width: 26em;
	height: 12em;
}

#ca {
	margin-top: 2em;
}

address {
	font-style: normal;
	margin: 1em 0;
}

#m5 {
	display: none;
}

footer {
	width: 100%;
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	height: 3em;
	background-color: #000;
	z-index: 98;
	border-top: 1px solid #444;
}

footer ul {
	margin: .2em 0 0 5%;
}

#debug {
	position: absolute;
	bottom: 1em;
	right: 5%;
	z-index: 99;
}

#fullscreen {
	position: absolute;
	bottom: 1em;
	right: calc(5% + 1em);
	z-index: 99;
	cursor: pointer;
}

#ws {
	position: absolute;
	width: 20em;
	height: 20em;
	overflow: auto;
	background: white;
}

#panel {
	position: absolute;
	left: 22em;
	width: 20em;
	height: 20em;
}

#debug {
	display: none;
}


/* /filme/ */

/*
body.videos dt {
	position: absolute;
	z-index: 999;
	background: rgba(0, 0, 0, .7);
	width: 228px;
	margin-top: 105px;
}

body.videos dt a {
	display: block;
	color: #fff;
	padding: .3em;
}

body.videos dd {
	position: relative;
}

body.videos dd p+p {
	display: none;
}

body.videos section>ul {}

body.videos section>ul li {
	display: inline-block;
}

body.videos section>ul li figure {
	position: relative;
}

body.videos section>ul li figcaption {
	position: absolute;
	display: block;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(0, 0, 0, .7);
}

body.videos section>ul li figcaption a {
	display: block;
	color: #fff;
	padding: .5em;
}
*/

body.videos section, body.videos #infotext {
	margin: 0 5% 0 5%;
	padding: 5em 0 4em 0;
}

body.videos #gg {
	text-align: center;
}

body.videos #bob {
	margin: 0 auto;
	width: 100px;
	text-align: center;
}

body.videos #bob li {
	margin: 0 .5em;
	display: inline-block;
	cursor: pointer;
	width: .75em;
	height: .75em;
	border-radius: .75em;
	background: #444;
}

body.videos #bob li span {
	display: none;
}

body.videos #bob li.s {
	background: #fff;
}

body.videos #prev,
body.videos #next,
body.videos #imgm li {
	position: absolute;
	top: 19em;
	cursor: pointer;
}

body.videos #prev span,
body.videos #imgm li:first-child span {
	display: none;
}

body.videos #prev,
body.videos #imgm li:first-child {
	left: 2em;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 50px 20px 50px 0;
	border-color: transparent #777 transparent transparent;
}

body.videos #next span,
body.videos #imgm li:last-child span {
	display: none;
}

body.videos #next,
body.videos #imgm li:last-child {
	right: 2em;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 50px 0 50px 20px;
	border-color: transparent transparent transparent #777;
}

body.videos #gg {
	display: grid;
	grid-template-columns: 50% 50%;
}

body.videos #gg li {
	text-align: center;
	position: relative;
}

body.videos #gg li img {
	width: inherit;
	max-width: 100%;
}

body.videos #ggl ul {
	display: grid;
	grid-template-columns: 33% 34% 33%;
}

body.videos #ggl ul.h {
	display: none;
}

body.videos .remvid img {
	width: 100%;
}


/* /remote/ */

body.remote footer {
	display: none;
}

body.remote {
	text-align: center;
}

li.act img {
	box-shadow: 0 0 1em rgba(255, 255, 255, .7);
	z-index: 999;
}

body.remote #bob {
	margin: 0 auto;
	width: 100px;
	text-align: center;
}

body.remote #bob li {
	margin: 0 .5em;
	display: inline-block;
	cursor: pointer;
	width: .75em;
	height: .75em;
	border-radius: .75em;
	background: #444;
}

body.remote #bob li span {
	display: none;
}

body.remote #bob li.s {
	background: #fff;
}

body.remote #prev,
body.remote #next,
body.remote #imgm li {
	position: absolute;
	top: 19em;
	cursor: pointer;
}

body.remote #prev span,
body.remote #imgm li:first-child span {
	display: none;
}

body.remote #prev,
body.remote #imgm li:first-child {
	left: 2em;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 50px 20px 50px 0;
	border-color: transparent #777 transparent transparent;
}

body.remote #next span,
body.remote #imgm li:last-child span {
	display: none;
}

body.remote #next,
body.remote #imgm li:last-child {
	right: 2em;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 50px 0 50px 20px;
	border-color: transparent transparent transparent #777;
}

body.remote #gg {
	display: grid;
	grid-template-columns: 50% 50%;
}

body.remote #gg li {
	text-align: center;
	position: relative;
}

body.remote #gg li img {
	width: inherit;
	max-width: 100%;
}

body.remote #ggl ul {
	display: grid;
	grid-template-columns: 33% 34% 33%;
}

body.remote #ggl ul.h {
	display: none;
}

body.remote header,
body.remote footer nav,
body.remote section article:first-child,
#remote,
#ws {
	display: none;
}

body.remote #imgm li a {
	display: block;
	margin-top: -3.5em;
	padding: 4em 1em;
	background: transparent !important;
}

body.remote #imgm li:last-child a {
	margin-left: -2em;
}

body.remote #imgm li a[rel=up],
body.remote h3,
body.remote h3+p {
	display: none;
}

body.remote #gh {
	position: absolute;
	top: .5em;
	left: calc(50% - 60px);
	width: 120px;
}

body.remote #gh li span {
	display: none;
}

body.remote #gh li {
	cursor: pointer;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 50px 20px 50px;
	border-color: transparent transparent #777 transparent;
}

body.remote.vid figure {
	position: relative;
}

body.remote.vid img {
	width: 800px;
}

body.remote.vid figcaption ul li span,
body.remote.vid figcaption ul li ul,
body.remote.vid pre {
	display: none;
}

body.remote.vid #plbt {
	position: absolute;
	left: calc(50% - 3em);
	top: 19em;
	background: rgba(0, 0, 0, .5);
	border-radius: .5em;
	padding: 1em;
	width: 4em;
	text-align: center;
	cursor: pointer;
}

body.remote.vid #plbt a {
	display: block;
	width: 55px;
	height: 0;
	border-style: solid;
	border-width: 22px 0px 22px 55px;
	border-color: transparent transparent transparent #ff4444;
}

body.remote.vid #plbt a span {
	display: none;
}

body.remote.vid #plbt.act {
	box-shadow: 0 0 1em rgba(255, 255, 255, .7);
}

body.remote.group section {
	padding-top: 6em;
}

body.remote.vidlist #ggl ul li {
	padding: 2em 0 3em 0;
}

body.remote.vidlist #ggl {
	min-height: 32em;
}

li.ia {
	opacity: .3;
}

body.audioguide #audio_text {
	display: block;
}
body.audioguide #audio_text h3 {
	display: block;
	margin: 0 0 1em 0;
}
body.audioguide #audio_text p {
	margin: .5em 0;
}
body.audioguide #audio_text img {
	width: 80vw;
}
body.audioguide #pn {
	position: fixed;
	z-index: 999;
	bottom: 2em;
	right: 2em;
	left: 2em;
}
body.audioguide #pn li {
	position: absolute;
	left: 1em;
	width: 45vw;
	max-width: 50%
	text-overflow: ellipsis;
	white-space: nowrap;
}
body.audioguide #pn li:first-child a:before {
	content: '◀';
	padding: 0 1em 0 0;
}
body.audioguide #pn li:last-child {
	left: auto;
	right: 1em;
	text-align: right;
}
body.audioguide #pn li:last-child a:after {
	content: '▶';
	padding: 0 0 0 1em;
}
body.audioguide #pn li a {
	padding: 1em;
}

body.audioguide #auli li a {
	padding: .2em 0;
	display: block;
}


@media only screen and (min-width: 320px) and (max-width: 480px) {

	body {
		background: #000;
	}

	section > h3,
	section > p,
	#fullscreen,
	#gh,
	#prevnext,
	#bob,
	#m1,
	pre {
		display: none;
	}

	#m2 {
		text-align: center;
	}

	body.videos #ggl ul {
		grid-template-columns: 100%;
	}
	body.videos #ggl img {
		width: 100%;
	}
	body.videos #ggl figure {
		position: relative;
		margin-bottom: 1em;
	}
	body.videos #ggl figcaption {
		position: absolute;
		bottom: 0; left: 0; right: 0;
		height: auto;
		background: rgba(0,0,0,.5);
		padding: .5em 0;
		text-align: center;
		font-size: 1.2em;
	}

	a[rel=up] {
	}

	body.videos #imgm li:first-child + li {
		top: -.5em;
		left: 0;
		right: 0;
		text-align: center;
		z-index: 999;
	}
	body.videos #imgm li:first-child + li a {
		width: 0;
		height: 0;
		border-left: 4em solid transparent;
		border-right: 4em solid transparent;
		border-bottom: 1.5em solid #777;
	}
	body.videos #imgm li:first-child + li a span {
		display: none;
	}

	figcaption li {
		display: none;
	}
	figcaption li:first-child {
		text-align: center;
		display: block;
	}

	section {
		padding-bottom: 5em;
	}
}

@media only screen and (min-width: 400px) and (max-width: 800px) {


	body {
		background: #000;
	}

	section > h3,
	section > p,
	#fullscreen,
	#gh,
	#prevnext,
	#bob,
	footer #m1,
	pre {
		display: none;
	}

	#m2 {
		text-align: center;
	}

	body.videos #ggl ul {
		grid-template-columns: 100%;
	}
	body.videos #ggl img {
		width: 100%;
	}
	body.videos #ggl figure {
		position: relative;
		margin-bottom: 1em;
	}
	body.videos #ggl figcaption {
		position: absolute;
		bottom: 0; left: 0; right: 0;
		height: auto;
		background: rgba(0,0,0,.5);
		padding: .5em 0;
		text-align: center;
		font-size: 1.2em;
	}

	a[rel=up] {
	}

	body.videos #imgm li:first-child + li {
		top: -.5em;
		left: 0;
		right: 0;
		text-align: center;
		z-index: 999;
	}
	body.videos #imgm li:first-child + li a {
		width: 0;
		height: 0;
		border-left: 4em solid transparent;
		border-right: 4em solid transparent;
		border-bottom: 1.5em solid #777;
	}
	body.videos #imgm li:first-child + li a span {
		display: none;
	}

	figcaption li {
		display: none;
	}
	figcaption li:first-child {
		text-align: center;
		display: block;
	}

	section {
		padding-bottom: 5em;
	}
}

#cf, footer #m1 {display: none;}
section {
	padding-bottom: 5em;
}
