/* ---  @FONT-FACE --- */

@font-face {
  font-family: 'Logical';
  src: url('../fonts/Logical-Regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/Logical-Regular.woff') format('woff'); /* Pretty Modern Browsers */
  font-style: normal;
  font-weight: 300;
}
@font-face {
  font-family: 'Logical';
  src: url('../fonts/Logical-Italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/Logical-Italic.woff') format('woff'); /* Pretty Modern Browsers */
  font-style: italic;
  font-weight: 300;
}
@font-face {
  font-family: 'Logical';
  src: url('../fonts/Logical-Bold.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/Logical-Bold.woff') format('woff'); /* Pretty Modern Browsers */
  font-style: normal;
  font-weight: 700;
  font-variant-numeric: lining-nums;
  -moz-font-feature-settings: "lnum";
  -webkit-font-feature-settings: "lnum";
  -ms-font-feature-settings: "lnum";
  font-feature-settings: "lnum";
}

/* --- Framework ---*/

body, html {
  top:0;
  margin:0px;
  padding:0px;
  height: 100%;
  background: #DEDEDE;
  text-align: center;
}
.pagetop {
  position:relative;
  width:100%;
}
.bg { 
  z-index:-10;
  height:100%;

  /* Center and scale the image nicely */
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
section {
	padding: 2.5vw 10%;
}
/* --- Logo ---*/

.logo img {
	max-width:220px;
	height:auto;
	max-height:100px;
}

/* --- Header ---*/

.slogan p {
	position:absolute;
	width:100%;
	font-size: 2em;
	color:white;
	text-align:center;
	bottom: 20px;
}

/* --- Icons--- */
.social_icons {
	z-index:15;
	position:fixed;
	display:inline-block;
	right:10px;
	top:13px;
	cursor:pointer;
}
.icon {
	width:24px;
	height:18px;
	float:right;
	position:relative;
	cursor:pointer;
}

/* --- Menu ---*/

.topnav {
  z-index: 10;
  overflow: hidden;
  background-color: #FFF;
  box-shadow: 0px 0px 20px rgba(0,0,0,.2);
  position:fixed;
  width:100%;
}

.topnav a {
  float: left;
  display: block;
  color: #000;
  text-align: center;
  padding: 14px 10px;
  text-decoration: none;
  font-size: 20px;
}
.topnav a:first-child {
  padding: 10px 10px 6px 12px;
}

.topnav a:hover {
  background-color: #EEE;
  color: black;
}

.active {
  background-color: #4CAF50;
  color: white;
}

.topnav .icon {
  display: none;
}

@media screen and (max-width: 600px) {
  .topnav a:not(:first-child) {display: none;}
  .topnav a {
	padding: 9px 16px 6px 16px;
}
  .topnav a.icon {
    float: right;
    display: block;
    right:0;
    margin-top:-4px;
  }
}

@media screen and (max-width: 600px) {
  .topnav.responsive {position: fixed;}
  .topnav.responsive .icon {
    position: fixed;
    right:0;
    top:0;
    margin-top:-5px;
  }
  .topnav.responsive a {
    float: none;
    display: block;
    text-align: left;
  }
  .topnav.responsive a:not(:first-child) {
    border-top: solid 1px #EEE;
  }
}

/* --- Typography ---*/

html, body {
  font-family: Logical, sans-serif;
  -moz-font-feature-settings: "ss06"; /* no funky g */
  -webkit-font-feature-settings: "ss06"; /* no funky g */
  font-feature-settings: "ss06"; /* no funky g */
}
a { 
  color: black;
  text-decoration:none;
  -moz-font-feature-settings: "ss06", "ss19"; /* no funky g & underline*/
  -webkit-font-feature-settings: "ss06", "ss19"; /* no funky g & underline*/
  -ms-font-feature-settings: "ss06", "ss19"; /* no funky g & underline*/
  font-feature-settings: "ss06", "ss19"; /* no funky g & underline*/
}
a:visited {
	color: black;
}
a:hover {
  -moz-font-feature-settings: "ss06", "ss19" 0; /* no funky g & underline*/
  -webkit-font-feature-settings: "ss06", "ss19" 0; /* no funky g & underline*/
  -ms-font-feature-settings: "ss06", "ss19" 0; /* no funky g & underline*/
  font-feature-settings: "ss06", "ss19" 0; /* no funky g & underline*/
}
h1 {
	font-size:2em;
	letter-spacing: 1px;
	text-align:center;
}
h2 {
	font-weight:300;
	color: white;
	text-align:center;
}
h3 {
	margin-bottom:20px;
}
.lyrics p {
  text-align: left;
  font-size: 0.8em;
  line-height: 1.4em;
}
.impressum {
	text-align:left;
	padding: 100px 10%;
	margin: 0 auto;
	max-width:900px;
	line-height:1.5em;
}
.impressum h2 {
	margin-top:2em;
}
/* --- Slider --- */

.js-my-select {
	margin:20px;
}
.slides {
	width:100%;
	position: relative;
}
#slide {
	list-style: none outside none;
	overflow: hidden; 
	width: 900px; 
	max-width:80%;
	height:700px; 
	padding: 0px;
	margin: 10vh auto 10vh;
	text-align:center;
	font-size:2em;
}
.lyrics {
	width:70%;
	margin:0 auto;
}
#slide img {
	width:100%;
	height:auto;
}
#slide-pager {
	clear:both;
	list-style-type:none;
	overflow:hidden;
	margin:14px 0 16px;
	padding:0;
}
#slide-pager li {
	float: left;
}
#slide-pager li a{
	margin:0 2px;
	padding:0 7px;
	border:1px solid #ccc;
	display:inline-block;
}
#slide-pager li a.usl-current{
	text-decoration: underline;
	background-color: #e8e8e8;
}
#slide_prev,
#lyric_prev {
	width: 50%;
	overflow:hidden;
}
#slide_next,
#lyric_next {
	width: 50%;
	text-align:right;
}
.songtext {

}
.papier {
	padding: 50px 10%;
	background-image: linear-gradient(to right, #EFEFEF, #FFF, #FFF, #EFEFEF);
	margin:0 auto;
	position: relative;
}
.papier:before, .songtext:after
{
  z-index: -1;
  position: absolute;
  content: "";
  bottom: 15px;
  left: 10px;
  width: 50%;
  top: 80%;
  max-width:300px;
  background: #777;
  -webkit-box-shadow: 0 15px 10px #777;
  -moz-box-shadow: 0 15px 10px #777;
  box-shadow: 0 15px 10px #777;
  -webkit-transform: rotate(-3deg);
  -moz-transform: rotate(-3deg);
  -o-transform: rotate(-3deg);
  -ms-transform: rotate(-3deg);
  transform: rotate(-3deg);
}
.papier:after {
  -webkit-transform: rotate(3deg);
  -moz-transform: rotate(3deg);
  -o-transform: rotate(3deg);
  -ms-transform: rotate(3deg);
  transform: rotate(3deg);
  right: 10px;
  left: auto;
}

.songtext:not(:first-of-type) {
	display:none;
}
.arrows {
	width:48%;
}
.arrows a {
	margin:0 auto;
	text-decoration:none;
	color:aqua;
	font-weight:700;
	position:absolute;
	background:transparent;
	top:40%;
	font-size:3em;
	mix-blend-mode: lighten;
	z-index: 2;
}
.arrow_left {
	text-align:left;
	margin-left:2.5%;
}
.arrow_left:after {
	width:50%;
	content:":left:";
	margin-left:4px;
	float:left;
	top:40%;
	color:red;
	font-weight:700;
	font-size:3em;
	position:absolute;
	background:transparent;
	z-index:1;
	mix-blend-mode: lighten;
}
.arrow_right {
	right:2.5%;
	width:200px;
	text-align:right;
	float:right;
}
.arrow_right:after {
	width:50%;
	content:":right:";
	margin-left:4px;
	float:right;
	top:40%;
	color:red;
	font-weight:700;
	font-size:3em;
	position:absolute;
	background:transparent;
	z-index:1;
	mix-blend-mode: lighten;
}
li:not(:first-child) {

}

/* --- Gallery --- */
#live {
	margin-bottom:80px;
}
#galerie {
	padding:0;
}
#photos {
  /* Prevent vertical gaps */
  line-height: 0;
   
  -webkit-column-count: 4;
  -webkit-column-gap:   0px;
  -moz-column-count:    4;
  -moz-column-gap:      0px;
  column-count:         4;
  column-gap:           0px;  
}

#photos img {
  /* Just in case there are inline attributes */
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
}
#photos figure {
	margin:0;
	padding:0;
}

@media (max-width: 1600px) {
  #photos {
  -moz-column-count:    3;
  -webkit-column-count: 3;
  column-count:         3;
  }
}
@media (max-width: 1000px) {
  #photos {
  -moz-column-count:    3;
  -webkit-column-count: 3;
  column-count:         3;
  }
}
@media (max-width: 800px) {
  #photos {
  -moz-column-count:    2;
  -webkit-column-count: 2;
  column-count:         2;
  }
}
@media (max-width: 400px) {
  #photos {
  -moz-column-count:    1;
  -webkit-column-count: 1;
  column-count:         1;
  }
}

/* --- Gigis ---*/

.gigs {
	width:100%;
	font-size: 1.7vw;
}
.gig {
	line-height:0.9em;
	display:block;
	width:84%;
	margin:5px 5%;
	padding: 10px 2% 10px 2%;
	/* background: rgba(0,0,0,0.05);*/
	text-align: left;
	background-image: linear-gradient(to right, #EFEFEF, #FFF, #FFF, #EFEFEF);
	-webkit-box-shadow: 0 5px 3px -3px rgba(0,0,0,0.3);
       -moz-box-shadow: 0 5px 3px -3px rgba(0,0,0,0.3);
            box-shadow: 0 5px 3px -3px rgba(0,0,0,0.3);
}
.date {
	float:left;
	width:14%;
}
.city {
	float:left;
	width:30%;
	vertical-align: middle;
}
.venue {
	float:left;
	width:32%;
}
.ticket {
	float:left;
	width:5%;
}
.support {
	width:29%;
}

/* --- Footer ---*/

.footer {
	margin-top:5vw;
	height:150px;
}
.credits {
	bottom:8px;
	right:10px;
}

/* --- Videos --- */

.videos {
	padding:5vw 0 14vw 0;
	background-size: auto 100%;
	background-repeat: no-repeat;
	background-position: center;
}

.embed-container { 
	position: relative; 
	margin:6px auto;
	padding-bottom: 45%; 
	height: 0; 
	overflow: hidden; 
	max-width: 80%; 
}
.embed-container iframe, 
.embed-container object, 
.embed-container embed,
.embed-container iframe .jwplayer { 
	position: absolute; 
	top: 0; 
	left: 0; 
	width: 100% !important;
	height: 100% !important; 
}

.embed-container iframe {
	border:0 !important;
}
.tvarrows {
	margin: 1vw auto 0 auto;
	width: 20.5%;
}
.tvarrows a {
	margin:0 auto;
	text-decoration:none;
	color:aqua;
	font-weight:700;
	position:relative;
	background:transparent;
	font-size:4vw;
	mix-blend-mode: lighten;
	z-index: 2;
	cursor: pointer;
}
.tvarrow_left {
	text-align:left;
	float:left;
}
.tvarrow_left:after {
	content:":left:";
	margin-left:-0.7em;
	float:left;
	color:red;
	font-weight:700;
	position:absolute;
	background:transparent;
	z-index:1;
	mix-blend-mode: lighten;
}
.tvarrow_right {
	text-align:right;
	float:right;
}
.tvarrow_right:after {
	content:":right:";
	margin-left:-0.74em;
	float:right;
	color:red;
	font-weight:700;
	position:absolute;
	background:transparent;
	z-index:1;
	mix-blend-mode: lighten;
}

/* --- Lyrics Select --- */

label.custom-select {
    position: relative;
    display: inline-block;
	margin-bottom:20px;
}

    .custom-select select {
        display: inline-block;
        border: 2px solid #f8f8f8;
        padding: 4px 8px 3px 12px;
        margin: 0;
        font: inherit;
        outline:none; /* remove focus ring from Webkit */
        line-height: 1.2;
        background: #f8f8f8;
        
        -webkit-appearance:none; /* remove the strong OSX influence from Webkit */
        
        -webkit-border-radius: 6px;
        -moz-border-radius: 6px;
        border-radius: 6px;
    }

    /* for Webkit's CSS-only solution */
    @media screen and (-webkit-min-device-pixel-ratio:0) { 
        .custom-select select {
            padding-right:30px;    
        }
    }
    
    /* Since we removed the default focus styles, we have to add our own */
    .custom-select select:focus {
        -webkit-box-shadow: 0 0 3px 1px rgba(0,0,0,0.3);
        -moz-box-shadow: 0 0 3px 1px rgba(0,0,0,0.3);
        box-shadow: 0 0 3px 1px rgba(0,0,0,0.3);
    }
    
    /* Select arrow styling */
    .custom-select:after {
        content: "▼";
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        font-size: 60%;
        line-height: 30px;
        padding: 0 7px;
        background: #f8f8f8;
        color: black;
        
        pointer-events:none;
        
        -webkit-border-radius: 0 6px 6px 0;
        -moz-border-radius: 0 6px 6px 0;
        border-radius: 0 6px 6px 0;
    }
    
    .no-pointer-events .custom-select:after {
        content: none;
    }

/* --- Social --- */
.socialmedia {
	margin:5vw 10% 5vw 10%;
}
.instagram_widget {
	width:65%;
	float:left;
}
.twitter_widget {
	width:30%;
	float:right;
}
.instagram_widget,
.twitter-widget {
	height:640px !important;
	overflow:hidden;
}
.timeline-Widget {
	height:640px !important;
	overflow:hidden;
}
view-with-bottom-nav {
	background-color: transparent !important;
}
/* --- Responsive --- */

@media only screen and (min-width : 320px) and (max-width : 560px) {
	body {-webkit-text-size-adjust: none;}
}
@media only screen and (min-device-width : 375px) and (max-device-width : 812px) and (-webkit-device-pixel-ratio : 3) {
	body {-webkit-text-size-adjust: none;}
}
@media only screen and (min-device-width : 375px) and (max-device-width : 667px) { 
	body {-webkit-text-size-adjust: none;}
}

@media screen and (max-width: 1200px) {
  .lyrics {
	width:85%;
  }
}

@media screen and (max-width: 900px) {
  .lyrics {
	width:100%;
  }
  .slogan p {
    font-size: 1.6em;
  }
  h2 {
	font-size: 1.2em;
  }
}

@media screen and (max-width: 750px) {
  .topnav a {
	font-size: 16px;
	padding: 14px 7px;
  }
    .topnav a:first-child {
    padding: 12px 10px 9px 12px;
  }
  .slogan p {
    font-size: 1.4em;
  }
  section {
    padding: 1vw 4%;
  }
  .gig {
	width:95%;
	margin: 4px 0;
  }
  .gigs {
    width: 100%;
    font-size: 14px;
  }
  .instagram_widget {
	width:100%;
	float:inherit;
	margin-top:50px;
  }
  .twitter_widget {
	width:100%;
	float:inherit;
	margin-top:50px;
  }
  .videos {
    padding: 7vw 0 16vw 0;
  }
  .logo,
  .logo img {
	max-width:160px;
  }
}
@media screen and (max-width: 600px) {
  .social_icons {
	right:50px;
  }
  .topnav a {
	font-size: 16px;
	padding: 14px 16px 20px 12px;
  }
  .gigs {
    width: 100%;
    font-size: 12px;
  }
}
@media screen and (max-width: 450px) {
  .gigs {
    width: 100%;
    font-size: 10px;
  }
  .lyrics p {
    font-size: 0.6em;
  }
  .embed-container { 
	padding-bottom:52.875%; 
	max-width: 94%;	
  }
  .videos {
    padding: 9vw 0 20vw 0;
  }
  .tvarrows {
	width: 25%;
  }
  .tvarrows a {
	font-size:6vw;
  }
}
