@font-face {
    font-family: robothin;
    src: url(../fonts/Roboto-Light.ttf);
}

@font-face {
    font-family: robolight;
    src: url(../fonts/Roboto-Light.ttf);
}

@font-face {
    font-family: robobold;
    src: url(../fonts/Roboto-Medium.ttf);
}

p {
	font-family: robolight, century gothic, helvetica, arial;
	color: #000000;
	font-size: 16px;
}

.bg {
	position: fixed;
    top: 0;
    left: 0;
    background-size: cover;
    background-position: center 0px;
    z-index: -1;
    height: 140%;
    width: 100%;
}

.wrapper {
	position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
    height: 100%;
    width: 100%;
    background-color:#000000;
}

div.navibar {
	height: 40px;
	border: 0px solid black;
	position: relative;
	top: 350px;
	width: 100%;
	
}

td.popup {
	text-align:right;
	width: 60px;
}

h1 {
	font-family: robobold, century gothic, helvetica, arial;
	color: #000000;
	font-style: normal;
	font-weight: bold;
	font-size: 18pt;
    text-align:left;
	margin-top: 0em;
}

h2 {
	font-family: robobold, century gothic, helvetica, arial;
	color: #000000;
	font-style: normal;
	font-weight: bold;
	font-size: 14pt;
    text-align:left;
	margin-top: 0em;
}

p,
h1,
h2 {
    margin-left: 0.75em;
    margin-right: 0.75em;
}

img.slider {
	margin-left: 1em;
	margin-right: 1em;
}

#navi {
	font-family: robolight, century gothic, helvetica, arial;
	background-color: #000000;
	background: #000000;
	color: #ffffff;
	font-style: normal;
	font-weight: bold;
	font-size: 16px;
    text-align:center;
	border: 0px solid black;
	text-align:center;
	width: 950px;
	margin: 0 auto;
	height: 40px;
	-webkit-box-shadow: 0px 0px 5px 0px rgba(120,120,120,0.36);
	-moz-box-shadow: 0px 0px 5px 0px rgba(120,120,120,0.36);
	box-shadow: 0px 0px 5px 0px rgba(120,120,120,0.36);
}

div.playinfo {
	font-family: robothin, century gothic, helvetica, arial;
	background: #ffdd00;
	color: #000000;
	font-style: normal;
	font-size: 16px;
	height: 100px;
	border: 0px solid black;
	width: 950px;
	margin: 0 auto;
    text-align:left;
	border: 0px solid black;
	position: relative;
	top: 360px;
	-webkit-box-shadow: 0px 0px 3px 0.5px rgba(0,0,0,0.5);
	-moz-box-shadow: 0px 0px 3px 0.5px rgba(0,0,0,0.5);
	box-shadow: 0px 0px 3px 0.5px rgba(0,0,0,0.5);
}

/*  Content */

#content {
	font-family: robothin, century gothic, helvetica, arial;
	background: #fafaf7;
	color: #000000;
	font-style: normal;
	font-size: 16px;
	border: 0px solid black;
	width: 950px;
	margin: 0 auto;
	padding-bottom: 5px;
	padding-top: 15px;
    text-align:left;
	position: relative;
	top: 370px;
	-webkit-box-shadow: 0px 0px 3px 0.5px rgba(120,120,120,0.76);
	-moz-box-shadow: 0px 0px 3px 0.5px rgba(120,120,120,0.76);
	box-shadow: 0px 0px 3px 0.5px rgba(120,120,120,0.76);
}

#content p {
	font-family: robothin, century gothic, helvetica, arial;
	font-size: 16px;
	text-align:left;
	margin-left: 0.75em;
    margin-right: 0.75em;
}

#content p.disclaimer {
	font-size: 8pt;
	margin-left: 0.75em;
	margin-right: 0.75em;
}

#content p a {
	color: #000000;
}

#content p a:hover {
	color: #dbb017;
}

#content h1 {
	margin-left: 0.75em;
    margin-right: 0.75em;
}

#content h2 {
	margin-left: 0.75em;
    margin-right: 0.75em;
}

#footer1 {
	background: rgba(26,26,26,0.9);
	border: 0px solid black;
	margin: 0 auto;
	width: 950px;
	height: 53px;
	position: relative;
	padding-top: 15px;
	top: 380px;
	-webkit-box-shadow: 0px 0px 3px 0.5px rgba(0,0,0,0.5);
	-moz-box-shadow: 0px 0px 3px 0.5px rgba(0,0,0,0.5);
	box-shadow: 0px 0px 3px 0.5px rgba(0,0,0,0.5);
}

.footertextleft {
	font-family: robolight, century gothic, helvetica, arial;
	color: #ffffff;
	font-size: 9pt;
	margin-left: 1.8em;
	position:absolute;
	top:26px;
}

.footertextright {
	font-family: robolight, century gothic, helvetica, arial;
	color: #ffffff;
	font-size: 9pt;
	text-align: right;
	margin-right: 2em;
	position:absolute;
	right:0px;
	top:26px;
}

.footertextright a {
	font-family: robolight, century gothic, helvetica, arial;
	color: #ffffff;
	font-size: 9pt;
	text-decoration: none;
}

.footertextright a:hover {
	color: #ffdd00;
	text-decoration: none;
}

#footer2 {
	border: 0px solid black;
	width: 950px;
	margin: 0 auto;
	padding-bottom: 10px;
	padding-top: 15px;
	position: relative;
	top: 370px;
}

.jp-play {
	background-image: url("../images/play.png");
    background-repeat: no-repeat;
    background-position: center;
    width: 90px;
    height: 90px;
}
	
.jp-state-playing .jp-play {
	background-image: url("../images/pause.png");
    background-repeat: no-repeat;
    background-position: center;
    width: 90px;
    height: 90px;
}

table#infobox {
	width: 96.5%;
	text-align:center;
	margin-left: 1.1em;
	margin-right: 1.1em;
}

table.tableprogramm {
	width: 96.5%;
	text-align:left;
	margin-left: 1em;
	margin-right: 1em;
}

table.tableprogramm a {
	color: #000000;
} 

table.tableprogramm a:hover {
	color: #dbb017;
} 

tr.trprogramm {
	background-color: #dbb017;
	color:#ffffff;
	height:20px;
}

/* START Playlist Code */

table.playlist {
	font-size:10pt;
	width: 96.5%;
	text-align:left;
	margin-left: 1em;
	margin-right: 1em;
	border-collapse: collapse;
}

.playlist tr {
	background: rgba(26,26,26,0.97);
	color:#ffffff;
	border-bottom: 1px solid #ffffff;
	vertical-align:middle;
}

.playlist tr:hover {
	background-color: rgba(26,26,26,0.9);
}

.playlist th {
	background: rgba(26,26,26,0.97);
	color:#ffffff;
	border-bottom: 1px solid #ffffff;
	vertical-align:middle;
}

/* END Playlist Code */

td.uhr {
	width:80px;
	height:30px;
	vertical-align: top;
}

td.prshowimg {
	width:210px;
	vertical-align: top;
}

td.prtext {
	vertical-align: top;
}

table.tableplayinfo {
	height: 100%;
	width: 100%;
}

div.logo {
    position: absolute;
    left: 0px;
    top: 95px;
    text-align:center;
    width: 100%;
}

img.logoimg {
    width: 400px;
}

div.logowrapper {
    position: absolute;
    left: 0px;
    top:150px;
    text-align:center;
    width: 100%;
}

/* Navigation */

ul#navibar {
	list-style:none;
	padding:0px;
	margin:0 0 0 50px;
}

ul#navibar li {
	display:inline;
	margin-right: 70px;
}

ul#navibar li a {
	font-family: robolight, century gothic, helvetica, arial;
	color: #ffffff;
	font-style: normal;
	font-weight: bold;
	font-size: 16px;
	text-decoration: none;
}

ul#navibar li a:hover {
	color: #000000;
}

.infoimg {
	width: 300px;
}

.titelanzeige {
	width: 530px;
}

.devices {
	height: 200px;
}

.videofull {
	width: 910px;
	height: 512px;
}

.backbutton {
	width: 100px;
	height: 30px;
	background: #005ca9;
	margin-left: 19px;
	margin-top: 5px;
	margin-bottom: 15px;
	border-radius: 8px;
}

.backbuttontext {
    top: 50px;
    z-index: 10;
	display: flex;
	line-height: 30px;
	justify-content: center;  /* horizontal zentrieren */
	align-items: center;      /* vertikal zentrieren */
}

.backbuttontext a {
	font-family: robolight, century gothic, helvetica, arial;
	color: #ffffff;
	font-size: 12pt;
	text-decoration: none;
	font-weight: bold;
}

.backbuttontext a:hover {
	color: #ffdd00;
	text-decoration: none;
}

#cookie-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #ffdd00;
  color: white;
  padding: 0.5em;
  display: flex;
  justify-content: space-between;
  align-items: center;
  z-index: 1000;
  box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.3);
}

#cookie-banner p {
	padding-left: 1em;
	font-size: 10pt;
	color: #000000;
	font-family: robolight, century gothic, helvetica, arial;
}

#cookie-banner button {
	background: none;
	border: none;
	color: black;
	font-size: 1.2em;
	cursor: pointer;
	padding-right: 0.7em;
}

#content p {
    margin-left: 1.1em;
    margin-right: 1.1em;
}

#content h2 {
    margin-left: 0.95em;
    margin-right: 0.95em;
}

@media screen and (max-width: 768px) {
    body, h1, h2, #content, #navi, .playinfo, #footer1, #footer2 {
    width: 100% !important;
    margin: 0 auto !important;
    padding-left: 10px;
    padding-right: 10px;
    box-sizing: border-box;
}

    h1 {
        font-size: 16pt;
        text-align: center;
        margin-left: 0.75em;
        margin-right: 0.75em;
    }
	
	h2 {
        font-size: 14pt;
        text-align: center;
        margin-left: 0.75em;
        margin-right: 0.75em;
    }

    p, #content p {
        font-size: 10pt;
    }

    #navi, .playinfo, #footer1, #footer2 {
        top: auto !important;
        position: relative;
    }

    .navibar {
        top: auto;
        position: relative;
    }

    .logoimg {
        width: 80%;
        max-width: 300px;
    }

    .videofull {
        width: 100%;
        height: auto;
    }

    ul#navibar {
        margin: 0;
        padding: 0;
        text-align: center;
    }

    ul#navibar li {
        display: block;
        margin: 10px 0;
    }

    .devices, .titelanzeige, .infoimg {
        width: 100%;
        height: auto;
    }

    .wrapper, .bg {
        position: relative;
        height: auto;
    }

    .backbutton {
        width: 90% !important;
        max-width: 300px;
        height: 45px;
        margin: 20px auto 20px auto !important; /* zentriert und mit Luft */
        display: block;
        border-radius: 8px;
    }

    .backbuttontext {
        font-size: 18px;
        line-height: 45px;
        text-align: center;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .backbuttontext a {
        font-size: 18px !important;
        text-decoration: none;
        font-weight: bold;
        color: #ffffff;
    }

    .backbuttontext a:hover {
        color: #ffdd00;
    }

    table, .tableprogramm, .playlist {
        width: 100% !important;
        font-size: 10pt;
    }

    td.prshowimg {
        width: 100%;
        display: block;
        margin-bottom: 10px;
    }

    td.uhr {
        width: auto;
        display: block;
    }

    .backbuttontext {
        line-height: normal;
        padding: 10px 0;
    }
}

@media screen and (max-width: 768px) {
		body, h1, h2, #content, #navi, .playinfo, #footer1, #footer2 {
		width: 100% !important;
		margin: 0 auto !important;
		padding-left: 10px;
		padding-right: 10px;
		box-sizing: border-box;
	}

    h1 {
        font-size: 16pt;
        text-align: left;
        margin-left: 0.75em;
        margin-right: 0.75em;
    }
	
	h2 {
        font-size: 14pt;
        text-align: left;
        margin-left: 0.75em;
        margin-right: 0.75em;
    }

    p, #content p {
        font-size: 10pt;
    }

    #navi, .playinfo, #footer1, #footer2 {
        top: auto !important;
        position: relative;
    }

    .navibar {
        top: auto;
        position: relative;
    }

    .logoimg {
        width: 80%;
        max-width: 300px;
    }

    .videofull {
        width: 100%;
        height: auto;
    }

    ul#navibar {
        margin: 0;
        padding: 0;
        text-align: center;
    }

    ul#navibar li {
        display: block;
        margin: 10px 0;
    }

    .devices, .titelanzeige, .infoimg {
        width: 100%;
        height: auto;
    }

    .wrapper, .bg {
        position: relative;
        height: auto;
    }
	
	#footer1 {
		display: flex;
		justify-content: space-between;  /* links & rechts verteilen */
		align-items: center;             /* vertikal zentrieren */
		height: 53px;                    /* oder auto, falls du’s dynamisch willst */
		padding: 0 1em;
}

    .footertextleft {
        position: relative;
        top: auto;
		margin-left: 0.5em;
		margin-right: auto;
		text-align: left;
    }
	
	.footertextright {
		position: relative;
		right: 0px;
		top: auto;
		margin-right: 0.5em;
		margin-left: auto;
		text-align: right;
}

    table, .tableprogramm, .playlist {
        width: 100% !important;
        font-size: 10pt;
    }

    td.prshowimg {
        width: 100%;
        display: block;
        margin-bottom: 10px;
    }

    td.uhr {
        width: auto;
        display: block;
    }

    .wrapper, .bg {
        position: relative !important;
        height: auto !important;
        top: auto !important;
    }

    .navibar,
    #navi,
    div.playinfo,
    #content,
    #footer1,
    #footer2 {
        position: relative !important;
        top: auto !important;
        margin-top: 1em;
        width: 100% !important;
        max-width: 100% !important;
    }

    div.playinfo {
        margin-top: 30px !important;
    }

    #content {
        margin-top: 15px !important;
		padding-bottom: 1em !important;
    }

    #footer1,
    #footer2 {
        margin-top: 10px !important;
    }

    div.logo,
    div.logowrapper {
        position: relative !important;
        top: auto !important;
        margin-top: 2em;
        margin-bottom: 1em;
        text-align: center !important;
    }

    img.logoimg {
        width: 60% !important;
        max-width: 250px !important;
        height: auto !important;
    }
	
	td.popup {
        display: none !important;
    }
	
	#content p {
		margin-left: 0.75em;
		margin-right: 0.75em;
	}
}