@viewport {
	width: device-width;
	zoom: 1;
}

html {
    -webkit-text-size-adjust: none; /* Prevent font scaling in landscape */
}

#wrapper {
    overflow: hidden;
	width: 100%;
    position: relative;
}

/* T. Schaefer, 2015-05-12, a zwischen .logo_ptb und img entfernt, damit das margin-left auch auf der Startseite angezeigt wird.*/
.logo_ptb img {
	margin-left: 15px;
}

nav#main h2,
nav#metanav h2,
nav#gateway h2 {
    background-color: #019cd2;
    color: #fff; 
    text-transform: none;
    border-bottom: 0px !important;
}

nav#main.open h2.hidden:after,
nav#metanav.open h2.hidden:after,
nav#gateway.open h2:after {
    border-bottom: 38px solid #009CD1;
    border-right: 13px solid rgba(0, 0, 0, 0);
    content: "";
    height: 0;
    position: absolute;
    right: -13px;
    top: 0;
    width: 0;
}

nav#main > ul,
nav#metanav > ul ,
nav#gateway > ul ,
section.overview nav > ul li ul {
    display: none;

} 

nav#main.open > ul,
nav#metanav.open > ul ,
nav#gateway.open > ul {
    display: block!important;
} 

nav#main h2.hidden,
nav#metanav h2.hidden ,
nav#gateway h2 {
    display: block;
    left: auto;
    position: relative;
    top: auto;
    white-space: inherit;
    position: absolute;
    top: -38px;
    color: #fff;
	cursor: pointer;
	padding: 8px 24px;
    height: 38px;
}

nav#gateway h2 {
	font-size: 112.5%;
}

nav#main,
nav#metanav ,
nav#gateway {
    left: 0;
    top: 142px;
    position: relative;
    z-index: 100;
}

nav#gateway h2.ltab.edge::after {
    border-top: 0px !important;
}

nav#main a:hover ,
nav#metanav a:hover ,
nav#gateway a:hover {
    text-decoration: underline;
}

nav#main > ul > li,
nav#metanav > ul > li ,
nav#gateway ul > ul > li {
    float: left;
    width: 100%;
    background-color: #019cd2;
    border-bottom: 1px solid #fff;
    position: relative;
}

nav#main > ul > li > a ,
nav#metanav > ul > li > a ,
nav#gateway > ul > li > a {
    background: none repeat scroll 0 0 rgba(0, 0, 0, 0);
    color: #FFFFFF;
    float: left;
    height: auto;
    margin: 0;
    padding: 7px 48px !important;
    position: relative;
    text-transform: none;
/* T. Schaefer, 2015-05-12, max-width hinzugefuegt.*/
    max-width: 30em;
}

/* T. Schaefer, 2015-05-13, padding hinzugefuegt, damit die aktiven (nicht-verlinkten) Menueeintraege genauso eingerueckt sind, wie die restlichen Eintraege im Menue .*/
nav#metanav > ul > li.active {
    padding: 7px 48px;
}

nav#main > ul > li > a:hover,
nav#main > ul > li > a:focus,
nav#main > ul > li:hover > a ,
nav#metanav > ul > li > a:hover,
nav#metanav > ul > li > a:focus,
nav#metanav > ul > li:hover > a ,
nav#gateway > ul > li > a:hover,
nav#gateway > ul > li > a:focus,
nav#gateway > ul > li:hover > a {
    background: url("../../assets/ptb-symbol.png") no-repeat, #019cd2;
    color: #fff;
    border: 0px;
}

nav#main li > span {
    background-color: #52BFDC;
    background-image: url("../../assets/icons/arrow-white-down.png");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 80% auto;
    height: 23px;
    position: absolute;
    right: 40px;
    width: 23px;
    top: 4px;
    cursor: pointer;
}

nav#main li.open > span {
    background-color: #fff;
    background-image: url("../../assets/icons/ar-t-bigblue.gif");
    background-size: 50% auto;
}

nav#main > ul > li > a br {
    position: absolute;
}

nav#main div.subcontent .intro {
    display: none;
}

nav#main > ul > li > div.subcontent {
    display: none;
    left: auto;
    margin: 0;
    padding: 0;
    position: relative;
    right: auto;
    top: auto;
    width: 100%;
    height: auto;
    overflow: auto;
/* T. Schaefer, 2015-05-10, background hinzugefuegt, damit die Zwischenlinien statt mit einem blauen Farbverlauf nur weiss dargestellt werden*/
    background: #FFFFFF;
    border: 0px;
}

nav#main > ul > li > a:focus ~ div.subcontent, 
nav#main > ul > li:hover > div.subcontent {
    display: none;
}

nav#main > ul > li.open > div.subcontent {
    display: block;
}


nav#main div.subcontent .subnav {
    position: relative;
    width: 100%;
    column-count:1;
    -moz-column-count:1; /* Firefox */
    -webkit-column-count:1; /* Safari and Chrome */
/* T. Schaefer, 2015-05-10, overflow hinzugefuegt damit beim Aufklappen keine vertikale Scrollbar angezeigt wird */ 
    overflow: hidden;
}

nav#main div.subcontent .subnav > ul li {
    float: left;
    margin: 0;
    position: relative;
    width: 100%;
    background-color: #EFEFEF;
    clear: both;
/* T. Schaefer, 2015-05-10, line-height hinzugefuegt damit die Aufklapp-Icons nicht abgeschnitten werden */ 
    line-height: 1.7em;
/* T. Schaefer, 2015-05-10, padding-top und margin-top hinzugefuegt damit Zwischenlinien angezeigt werden */ 
    padding-top: 1px;
    margin-top: 1px;
}

nav#main div.subcontent .subnav > ul > li > a {
    color: #666666;
    font-size: 87.5%;
    padding: 8px 48px;
    margin-bottom: 0;
    width: auto;
}

nav#main div.subcontent .subnav > ul li > ul {
    margin: 0;
    display: none;
}

nav#main div.subcontent .subnav > ul li.open > ul {
    display: block;
}   

nav#main div.subcontent .subnav > ul > li > ul > li {
/* T. Schaefer, 2015-05-10, line-height von inherit auf 1em geaendert, damit die Zeilenhoehe nicht zu gross ist.
margin-top und padding-top hinzugefuegt, damit die Zwischenlinien nicht zu dick sind */ 
    line-height: 1em;
    margin-top: 0px;
    padding-top: 0px;
}

nav#main div.subcontent .subnav > ul > li > ul > li a {
    background-color: #FFFFFF;
    border-bottom: 1px solid #EFEFEF;
    color: #666666;
    float: left;
    padding: 8px 48px;
    width: 100%;
}

nav#main li.active > a {
    font-weight: bold;
}

nav#main div.subcontent .subnav > ul > li > ul > li > ul > li a {
    padding: 8px 60px;
}

nav#metanav ul li {
	margin: 0;
	padding: 0;
	height: auto;
}

nav#metanav ul li,
nav#metanav ul li.icon ,
nav#metanav ul li:hover {
/* T. Schaefer, 2015-10-20, !important entfernt */
	background-color: #019CD2;
}

nav#metanav ul li a {
	font-size: 112%%;
}

nav#metanav ul li a.searchlink.mobile {
	display: block;
}

nav#metanav .search form {
	display: none;
}

nav#metanav li.icon img {
/* T. Schaefer, 2015-05-12, display:none auskommentiert
	display: none;*/
}

nav#metanav li.icon a {
	padding: 4px 48px 0px 48px;
}
li.icon a span.icontext {
	display: block;
}

nav#gateway ul {
	width: 100%;
	padding: 0;
}

nav#gateway ul li{
	float: left;
	width: 100%;
	background-color: #019CD2;
	color: #fff;
	border-bottom: 1px solid #fff;
}

nav#gateway ul li a {
	background-color: transparent;
}

nav#gateway ul li a:hover:after {
	border-right: 0;
}

header .content {
	position: relative;
}

body.subpage header .content {
    height: auto;
}

header #show_nav {
	background-image: url("../../assets/responsive/show_navi.gif");
    display: block;
    height: 49px;
    position: absolute;
    right: 30px;
    top: 30px;
    width: 66px;
	cursor: pointer;
    z-index: 1010;
}

header > nav#main,
header > nav#metanav,
header > nav#gateway {
	display: none;
}


#mobile_nav nav > h2 span {
    background-color: #52BFDC;
    background-image: url("../../assets/icons/arrow-white-down.png");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 80% auto;
    cursor: pointer;
    height: 23px;
    position: absolute;
    right: 40px;
    top: 4px;
    width: 23px;
}

#mobile_nav nav.open > h2 span {
    background-color: #FFFFFF;
    background-image: url("../../assets/icons/ar-t-bigblue.gif");
    background-size: 50% auto;
}

header .content {
	position: absolute;
}

div.shopdisplay nav {
    left: 320px;
    position: absolute;
    top: 420px;
    z-index: 500;
}

div.shopdisplay article .text {
	background-image: url("../../assets/responsive/head_bg_s.png");
}

div.shopdisplay article .text p {
	display: none!important;
}

#mobile_nav {
	z-index: 1000;
	position: absolute;
	width: 100%;
}

#mobile_nav  .ltab.edge:after {
	border: none;
}

#social-media {
    bottom: 48px;
    position: absolute;
    right: 0;
	width: 100%;
}

#social-media ul {
	float: right;
}

#social-media .ctime {
    color: #009CD1;
    float: right;
    font-size: 180%;
    margin-right: 25px;
    margin-top: 0px;
}

#breadcrump {
	display: none;
}

/* CONTENT */


#maincontent {
	max-width: 100%;
}

#content #maincontent > article ,
#content #maincontent > section {
	float: left;
}

#maincontent article.big,
#maincontent section.big ,
#maincontent article.small ,
#maincontent section.small {
	width: 100%;
}

section.news .articles {

	width: auto;
	max-width: 100%;
	padding-right: 100px;
}

.calendar.small nav,
.calendar.small .cal {
	right: auto;
	left: 30px;
}

/* T. Schaefer, 2015-05-29, margin-bottom hinzugefuegt, damit der Abstand zum Kalender nicht zu gross ist */
#aside section.calendar nav {
	margin-bottom: -20px;
}

/* T. Schaefer, 2015-05-29, top, padding-top und position hinzugefuegt */
#aside section.calendar .cal { 
	top:20px;
	padding-top:0px;
	position: relative !important;
}

/* T. Schaefer, 2015-05-29, max-width, margin-left, margin-right und margin-bottom hinzugefuegt, damit der Kalender nicht ueber die vollen Breite geht und mittig positioniert ist */
#aside section.calendar .inner {
	max-width: 200px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 35px;
}

.calendar time {
	display:none;
}

/* T. Schaefer, 2015-05-28, Klasse right hinzugefuegt */
.twocolright section.calendar {
    margin-top: 0.1em;
    float: left !important;
    height: 200px;
    background-color: #EFEFEF !important;
} 

/* T. Schaefer, 2015-05-15, position und padding-left auskommentiert
section.calendar nav {
    position: relative !important;
    padding-left: 30px !important;
}*/

/* T. Schaefer, 2015-05-28, Klasse right hinzugefuegt */
.twocolright section.calendar .cal {
/* T. Schaefer, 2015-05-15, padding-top von 30 auf 10 reduziert */
    padding-top: 10px !important;
/* T. Schaefer, 2015-05-15, padding-left von 30px auf 170px, damit das Mouseover-Fenster fuer eine Veranstaltung nicht links aus dem Fenster laeuft */
    padding-left: 170px !important;
    position: relative !important;
}

/* T. Schaefer, 2015-05-15, #ptbtimewrap hinzugefuegt */
#ptbtimewrap {
	float: left;
	width: auto;
	margin-left: 15px;
}

/* T. Schaefer, 2015-05-15, #questionsabouttime hinzugefuegt */
#questionsabouttime {
	float: left;
	clear: both;
	top: 0px;
	left: 15px;
}

section.publications .articles {
    left: 420px;
    position: relative;
}

section.publications .images figure {
	display: none;
}

section.publications .images figure.item-1 {
	display: block;
}

/* FOOTER */


section.overview nav {
	padding: 0;
}

section.overview nav > ul > li {
	width: 100%;
	margin: 0;
	padding-left: 25px;
	padding-right: 25px;
	border-bottom: 2px solid #fff;
} 

section.overview nav > ul > li span {
	background-image: url("../../assets/icons/ar-r-small-blue.gif");
    background-position: center center;
    background-repeat: no-repeat;
    float: right;
    height: 20px;
    margin-top: 5px;
    width: 20px;
	
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);
	transform: rotate(90deg);
	
	cursor: pointer;
}

section.overview nav > ul  ul li  span {
	display: none;
}

section.overview nav > ul > li.open span {
	-webkit-transform: rotate(270deg);
	-moz-transform: rotate(270deg);
	-ms-transform: rotate(270deg);
	-o-transform: rotate(270deg);
	transform: rotate(270deg);
}

section.overview nav > ul > li.open  ul {
	display: block;
}

section.overview nav > ul > li a {
	vertical-align: middle;
}

section.overview nav > ul > li a br {
	position: absolute;
}

footer .partner  {
	padding-top: 15px;
}

footer .partner > ul {
	float: left;
	width: 100%;
	margin-bottom: 25px;
	list-style-position: inside;
}

footer .partner .inner ul {
	float: left;
}

footer .partner .inner ul  li{
	list-style: none;
	border-left: none;
	color: #019CD2;
	padding: 0 0px;
}

footer .partner .inner ul  li:first-child{
	border-left: none;
	padding-left: 0px;
}

footer .partner .inner ul  li a{
	color: #019CD2;
	text-transform: uppercase;
}

footer .partner .logos {
	float: left;
}



/* extension for SUBPAGE*/


section.expertnews > .inner {
	height: auto;
}

nav#subnav {
	display: none;
}

body.homepage #content main#maincontent,
body.subpage #content main#maincontent {
	width: 100%;
	height: 100%;
}

#content #maincontent > article, 
#content #maincontent > section {
    width: 100%;
}

/*#maincontent select {
	width: 120%;
} Pascal Zagermann, 24.02.2017, Auskommentiert, weil kein weiterer Sinn erkennbar*/

article.std {
	min-height: inherit;
}

#maincontent .formmessage {
	margin-left: 0;
}

#maincontent .formitem {
	width: 100%;
}

#content #maincontent article figure img {
    max-width: 100%;
/* T. Schaefer, 2015-05-16, height hinzugefuegt */
    height: auto;
}

#maincontent .coverflow figure.left img {
	left: 30%;
}

#maincontent .coverflow figure.center img {
	left: 40%;
}

#maincontent .coverflow figure.right img {
	left: 50%;
}

#maincontent .coverflow nav li a{
	right: 25px;
	position: static;
}

#maincontent .coverflow nav li:first-child a {
	left: 25px;
}

#maincontent .coverflow figcaption {
    padding-left: 25px;
    padding-right: 25px;
    text-align: center;
    width: 100%;
	left: auto;
	position: relative;
}

#maincontent .archive > ul > li > ul > li ,
#maincontent .archive > ul > li > ul > li > ul > li {
	margin-left: 0;
}

#maincontent .archive > ul > li > ul > li div, 
#maincontent .archive > ul > li > ul > li span ,
#maincontent .archive > ul > li > ul > li > ul > li div, 
#maincontent .archive > ul > li > ul > li > ul > li span {
	padding-left: 30px;
}

#maincontent .archive > ul > li div.iconlist a {
	margin-right: 0;
}

#maincontent .archive > ul > li div.iconlist {
	right: 0;
}

#maincontent .list-item .content {
	display: block;
}


/* Mobile Footer */


aside {
	width: 100%!important;
  padding: 0em;
}

#mobile_footer {
	background-color: #FFFFFF;
    border-top: 2px solid #CECECE;
    bottom: 0;
    position: fixed;
    width: 100%;
	z-index: 9999;
}

#mobile_footer.open {
	position: absolute;
}

#show_mobile_footer {
	cursor: pointer;
    float: left;
    width: 100%;
}

#show_mobile_footer > span {
	background-image: url("../../assets/icons/ar-r-bigblue.gif");
    float: right;
    height: 21px;
    position: relative;
    right: 30px;
    transform: rotate(270deg);
    width: 14px;
	margin-bottom: 10px;
    margin-top: 10px;
}

#mobile_footer.open  #show_mobile_footer > span {
	transform: rotate(90deg);
}

#mobile_footer .container {
	display: none;
	padding-top: 1em;
}

#mobile_footer aside section {
	float: left;
	margin-bottom: 1em;
}


#mobile_footer aside section > .inner {
    background-color: #EFEFEF;
	padding: 15px;
}

#mobile_footer aside section  p {
	padding-top: 5px;
}

#mobile_footer aside section.iconlink a span {
	
}

#maincontent section.calendar nav {
/* T. Schaefer, 2015-05-04, top von 5px auf -15px reduziert und height hinzugefuegt */
	top: -15px;
	height: 20px;
}

#maincontent section.calendar .cal {
/* T. Schaefer, 2015-05-15, top von 10 auf 0 reduziert */
	top: 0px;
}

#mobile_footer aside section.calendar .inner {
	float: left;
	width: 100%;
}

#mobile_footer aside section.calendar nav {
    position: relative;
    top: 0px;
	right: auto;
}

#mobile_footer aside section.calendar .cal {
	float: left;
}

#mobile_footer aside section.calendar table {
	float: left;
}

#mobile_footer aside section.calendar .cal .legend {
   
    font-size: 81.125%;
 
    width: 100%;
}

/* 20.05.2014 */

nav#gateway ul li {
    padding-left: 0;
}

nav#gateway li a:hover:before ,
nav#gateway li a:hover:after {
    content: "";
    width: 0px;
    height: 0px;
	
	border-top: 2px solid #fff;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
	position: absolute;
    top: 0;
	left: -14px;
	background-color: #000;
} 

/* 07.05.2015*/
#maincontent > .twocol {
    display: block;
    width: 100%;
    overflow: hidden;
    margin-bottom: 3em;
}

#maincontent > .twocol > .left {
    float: left;
    width: 99% !important;
}
#maincontent > .twocol > .twocolleft {
    float: left;
    width: 99% !important;
}
#maincontent > .twocol > .right {
    border-top: 8px solid white;
    float: left !important;
    width: 99% !important;
}
#maincontent > .twocol > .twocolright {
    border-top: 8px solid white;
    float: left !important;
    width: 99% !important;
}
/* T. Schaefer, 2015-05-12, menuspacer hinzugefuegt.*/
.menuespacer {
    display: none;
}

/* T. Schaefer, 2015-05-16, padding-top auf 0px gesetzt da bei mobilen Geraeten der Text in den darunterliegenden Bereich fliesst */
.big.news_pi1 ul li a time {
    padding-top: 0px;
}

/* T. Schaefer, 2015-05-16, width und height Bilder innerhalb von element_2cols hinzugefuegt, damit keine Ueberlagerungen zwischen Text und Bilder auftreten */
.element_2cols .csc-textpic-imagewrap figure.csc-textpic-image img {
    width: 100%;
    height: auto;
}