html {
	height: 100%;
}

h1, h2, h3, h4, a.btn-primary, button, .carousel-caption {
	font-family: 'Crete Round', serif;
}

h1, button, table, .carousel-caption {
	margin-top:0;
}

h2 {
	font-size:26px;
}

h4 {
	font-size:22px;
}

body {
	font-size:16px;
	line-height: 1.5;
	font-family: 'Roboto', serif;
    min-height: 100%;
    display: flex;
    flex-flow: column;
}

section {
	padding: 80px 0 150px;
}

img {
	max-width:100%;
}

a {
	color:#333;
	text-decoration:underline;
}

a.btn-primary:hover, a.btn-primary {
	text-decoration:none;
	display: inline-block;
	text-align:center;
}

a:hover {
	color:#dc0f00
}

a:focus {
	outline:0;
	background:none;
}

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

.table>thead>tr>th {
	border-top:none;
}

td h2 {
	margin: 6px 0;
}

.quantity {
	padding: 12px 0 !important;
}

.quantity,
.quantity + td {
	vertical-align: middle !important;
}

.quantity input {
	border:none;
	text-align:center;
}

.quantity button {
	background: #ddd;
	border: none;
}

.wrap {
	min-height:100%;
}

.push {
	height: 541px;
}

.navbar {
	border:none;
	position: fixed;
	background: #fff;
	border-radius: 0;
	z-index: 1;
}

header {
	height:100%;
}

header > div {
	/*background-image:url('../images/felsplatte.jpg');*/
    height: 100%;
    background-size: cover;
    background-position: center;
}

footer {
	background:#000;
	color:#fff;
	padding:70px 0;
	font-family: 'Crete Round', serif;
	font-size: 18px;
	margin-top: auto;
}

footer dt {
    padding-bottom: 8px;
}

footer a {
	color:#fff;
}

footer hr {
	border-top: 1px solid #aaa;
}

.fa.fa-bars {
	font-size: 2em;
	cursor:pointer;
}

.fa.fa-envelope,
.fa.fa-search,
.fa.fa-home,
.fa.fa-shopping-cart,
.fa.fa-user {
	font-size: 1.7em;
	cursor:pointer;
}

.fa.fa-times {
	font-size: 1.5em;
	cursor:pointer;
}

.fa.fa-bars:hover, .fa.fa-envelope:hover, .fa.fa-times:hover, .fa.fa-search:hover, .fa.fa-home:hover, .fa.fa-shopping-cart:hover {
	color:#dc0f00;
}

.fa-caret-down {
	font-size:1.3em;
}


.btn:focus,.btn:active:focus,.btn.active:focus,
.btn.focus,.btn:active.focus,.btn.active.focus {
    outline: none;
}

.btn-primary:focus, .btn-primary:active {
	background:none;
	outline: 0;
}

.carousel-control.left, .carousel-control.right {
	background: #fff;
	padding: 15px 20px;
	bottom: 0;
	top: auto;
	opacity: 1;
	text-shadow: none;
	width: 67px;
	height: 75px;
	cursor:pointer;
}

.attached-images .carousel-control.left,
.attached-images .carousel-control.right {
	height: 40px;
	padding: 0;
	bottom: 50%;
	width: 30px;
	margin-bottom: -20px;
}

.carousel-control:hover {
	background:#efefef;
}

.carousel-control > i {
	color:#333;
	font-size:2em;
}


.carousel-caption {
	font-size: 40px;
	text-align: left;
    right: 10%;
    left: 10%;
	z-index:0;
}

header .btn-primary {
	background: none;
	border: none;
	color: #fff;
	font-size: 31px;
	border-radius: 5px;
	padding: 30px 30px 0px 30px;
	display: block;
	margin: 0 auto;
	margin-bottom: 80px;
}

.carousel .btn-primary {
	float: right;
	/* position: absolute; */
	padding-bottom: 0;
	/* bottom: 0; */
	/* width: 30%; */
	/* background: none; */
	border: none;
	color: #fff;
	font-size: 31px;
	/* border-radius: 5px; */
	border: none;
}

.carousel .btn-primary:hover {
	/* color: #dc0f00; */
	/* border: 4px solid #dc0f00 !important; */
}

header .btn-primary:hover,
header .btn-primary:active,
header .btn-primary:active:hover,
header .btn-primary:active:focus,
header .btn-primary:focus,
.carousel .btn-primary:hover,
.carousel .btn-primary:active:hover,
.carousel .btn-primary:active:focus,
.carousel .btn-primary:focus {
	border:none;
}

.btn-primary {
	background: none;
	border: 3px solid #333;
	color: #333;
	font-size: 25px;
	border-radius: 5px;
	padding: 6px 30px;
	cursor:pointer;
}

.btn-primary:hover,
.btn-primary:active:hover,
.btn-primary:active:focus,
.btn-primary:focus,
.btn-primary:active {
	background: none;
	color: #dc0f00;
	border: 3px solid #dc0f00;
	box-shadow: none;
}

.produktion .btn-primary,
.angebot-detail .btn-primary,
.veranstaltung .btn-primary {
	font-size:18px;
}

.btn-primary.disabled,
.btn-primary.disabled:hover {
	background-color: #fff;
	border-color:#aaa;
	color:#aaa;
	cursor:not-allowed;
}

.btn-primary.small {
	font-size: 18px;
}

.btn-primary.mini {
	font-size: 12px;
	border: 2px solid #333;
}

.btn-primary.nav {
	margin-top: 20px;
	margin-bottom: 20px;
}

nav > div {
	padding: 12px 20px;
	text-align: center;
	position:relative;
}

nav > div:first-of-type {
	padding-top: 24px;
}

nav > div:last-of-type {
	padding-bottom: 24px;
}

nav .dropdown-menu {
    margin: 0;
    border: 0;
    left: 67px;
    box-shadow: none;
    border-radius: 0;
    top: 0;
    padding: 0;
    min-width: 300px;
    font-size: 18px;
    background-color: #f5f5f5;
}

nav .dropdown-menu > .active > a {
	background: #dc0f00 !important;
}

nav .dropdown-menu > li > a {
	padding: 13px 25px;
	text-decoration:none;
	background-color: #f5f5f5;
}

nav .dropdown-submenu {
    position: relative;
    height: 51px;
    font-family: 'Crete Round', serif;
}

nav .dropdown-submenu>.dropdown-menu {
    top: 0;
    left: 100%;
}

nav .dropdown-submenu.active>.dropdown-menu {
    display: block;
}

nav .dropdown-submenu>a:after {
    display: block;
    content: " ";
    float: right;
    width: 0;
    height: 0;
    border-color: transparent;
    border-style: solid;
    border-width: 5px 0 5px 5px;
    border-left-color: #333;
    margin-top: 5px;
    margin-right: -10px;
}


nav .dropdown-submenu.pull-left {
    float: none;
}

nav .dropdown-submenu.pull-left>.dropdown-menu {
    left: -100%;
    margin-left: 10px;
    -webkit-border-radius: 6px 0 6px 6px;
    -moz-border-radius: 6px 0 6px 6px;
    border-radius: 6px 0 6px 6px;
}

/*
.highlights img, .angebote img, .thankyou img, .veranstaltung img, .cart img, .col-sm-4.angebot img {
	-webkit-filter: blur(2px);
	transform: scale(1.05);
	cursor:pointer;
}

.highlight:hover img,
.angebot-preview:hover img {
	-webkit-filter: blur(0);
}*/



.highlight h2, .angebot-preview h2 {
	position: absolute;
	bottom: 10px;
	color: #fff;
	padding: 0 35px;
	width: 100%;
	margin-left: -15px;
	margin-right: -15px;
	cursor:pointer;
}

#tourismus-highlights .highlight h2,
.angebote .highlight h2 {
	background-color:#000;
	left: 15px;
	right: 15px;
	width: auto;
	padding: 20px;
	margin: 0;
	bottom: 0;
}

.highlights table {
	height: 295px;
}

.highlight, .angebot-preview, .produktion {
	margin-top:30px;
}

.highlight em, .angebot-preview em {
    display: block;
    font-size: 24px;
}

#theater-teaser > div {
	background-image:url('../images/teaser-theater.jpg');
    height: 600px;
    background-size: cover;
    background-position: center;
	color: #fff;
}

#map {
	height:450px;
}

#map img {
	max-width:none;
	max-height:none;
}

#bild-detail {
	background-position:center;
	background-size:cover;
	height:450px;
}

/*
.bild-thumb {
	cursor:pointer;
	-webkit-filter: blur(2px);
	transform: scale(1.05);
	height:210px;
	background-size:cover;
	background-position:center;
}

.bild-thumb:hover {
	-webkit-filter: blur(0);
}*/

#carousel-alle-angebote .item > div:first-child {
	height:450px;
	background-size:cover;
	background-position:center;
}

.panel {
	border:0;
	box-shadow:none;
}

.panel-heading {
	padding:0;
}

.panel-title {
	padding-top: 15px;
	background: none;
	border: 0;
}

.panel-title a {
	text-decoration:none;
	font-size:22px;
}

.panel-body {
	border-top: 0 !important;
	padding:0;
}

.produktion h2, .produktion h3 {
	margin-top: 0;
}

.produktion h2 a, .veranstaltung h2 a {
	text-decoration:none;
}

.modal-dialog {
	width:80%;
}

.modal-content {
	box-shadow: none;
	border-radius: 0;
	border: 0;
}

.modal-header .close:focus, .form-control:focus {
	outline:0;
	box-shadow: none;
	border-color: #ccc;
}

.modal-header .close {
	opacity:1;
}

.form-control {
	color: #333;
	font-size: 16px;
	box-shadow: none;
}

.oeffnungszeiten div {
	width:50%;
}

.oeffnungszeiten div:first-child {
	float:left;
}

.oeffnungszeiten div:last-child {
	float:right;
}

.dropdown-menu .divider {
	margin: 10px 25px;
	background-color: #333;
	color: red;
}

#divRss li {
	margin-bottom:20px;
}

#divRss ul {
	list-style-type:none;
	padding-left:0;
}

.veranstaltung, .produktion {
	margin-bottom:20px;
}

.veranstaltung h1,
.produkt h1,
.produkte h1 {
	font-size:32px;
}

.veranstaltung h2 {
	font-size:22px;
}

.panel .veranstaltung:first-of-type, .panel .produktion:first-of-type {
	margin-top: 20px;
}

.panel .veranstaltung:last-of-type, .panel .produktion:last-of-type {
	margin-bottom:0;
}

.panel .veranstaltung h2, .panel .produktion h2 {
	margin-top:0;
	font-size: 22px;
	margin-bottom: 15px;
}

.panel .veranstaltung h3, .panel .produktion h3 {
	margin-top:0;
	font-size: 16px;
	font-style: italic;
}

.cart-badge {
	position: absolute;
	right:10px;
	top:7px;
	background-color: #dc0f00;
}

.carousel.angebot .item,
.carousel.angebote .item {
	height:450px;
}

.carousel.angebot {
	margin-top:0;
}

.no-padding {
	padding:0;
}

iframe {
	max-width: 100%;
}

.angebot-detail,
.inhalt {
	clear:both;
}

.angebot,
.produktion {
	margin-top:30px;
}

.angebote h2,
.thankyou .angebot h2,
.veranstaltung .angebot h2,
.cart .angebot h2,
.angebot-detail .angebot h2 {
	position: absolute;
	bottom: 10px;
	color: #fff;
	padding: 0 35px;
	margin-left: -15px;
	margin-right: -15px;
	cursor:pointer;
	text-align: left;
}

.angebot h2.titel {
    background-color: #000;
    padding: 20px 20px 20px 20px;
    margin: 0;
    bottom: 0;
    width: auto;
    left: 15px;
    right: 15px;
}

.row.veranstaltung,
.row.produktion {
	padding-top: 15px;
	margin-bottom: 20px;
	margin-top: 0;
	border-radius: 4px;
}

.row.veranstaltung:nth-child(even),
.row.produktion:nth-child(even) {
	background: #f2f2f2;
}

/*
.angebot:hover img {
	-webkit-filter: blur(0);
}*/

/*Form Wizard*/
.bs-wizard {border-bottom: solid 1px #e0e0e0; padding: 0;margin-bottom: 40px;}
.bs-wizard > .bs-wizard-step {padding: 0; position: relative;}
.bs-wizard > .bs-wizard-step + .bs-wizard-step {}
.bs-wizard > .bs-wizard-step .bs-wizard-stepnum {font-size: 16px; margin-bottom: 5px;font-weight: 500;}
.bs-wizard > .bs-wizard-step .bs-wizard-info {color: #999; font-size: 14px;}
.bs-wizard > .bs-wizard-step > .bs-wizard-dot {position: absolute; width: 30px; height: 30px; display: block; background: #efefef; top: 45px; left: 50%; margin-top: -12px; margin-left: -15px; border-radius: 50%;}
.bs-wizard > .bs-wizard-step > .bs-wizard-dot:after {content: ' '; width: 14px; height: 14px; background: #dc0f00; border-radius: 50px; position: absolute; top: 8px; left: 8px; }
.bs-wizard > .bs-wizard-step > .progress {position: relative; border-radius: 0px; height: 8px; box-shadow: none; margin: 20px 0;}
.bs-wizard > .bs-wizard-step > .progress > .progress-bar {width:0px; box-shadow: none; background: #dc0f00;}
.bs-wizard > .bs-wizard-step.complete > .progress > .progress-bar {width:100%;}
.bs-wizard > .bs-wizard-step.active > .progress > .progress-bar {width:50%;}
.bs-wizard > .bs-wizard-step:first-child.active > .progress > .progress-bar {width:0%;}
.bs-wizard > .bs-wizard-step:last-child.active > .progress > .progress-bar {width: 100%;}
.bs-wizard > .bs-wizard-step.disabled > .bs-wizard-dot {background-color: #f5f5f5;}
.bs-wizard > .bs-wizard-step.disabled > .bs-wizard-dot:after {opacity: 0;}
.bs-wizard > .bs-wizard-step:first-child  > .progress {left: 50%; width: 50%;}
.bs-wizard > .bs-wizard-step:last-child  > .progress {width: 50%;}
.bs-wizard > .bs-wizard-step.disabled a.bs-wizard-dot{ pointer-events: none; }
/*END Form Wizard*/

.margin-top-10 {
	margin-top:10px;
}

.dropdown-menu>li>a:hover,
.dropdown-menu>li>a:focus {
	background-color:#fff;
}


#search_results {
	margin-top:20px;
}

.search-form {
	margin-bottom: 10px;
}

.seatCharts-legendList {
	padding-left:0;
}

.seatCharts-legendDescription {
	margin-left:5px;
}

.veranstaltung .col-sm-4 > h2:first-child,
.produkt .col-sm-6 > h2:first-child {
	margin-top:0;
}

#nav-mobile .navbar {
	width:100%;
	margin-bottom:0;
	min-height:0;
	z-index: 3;
}

#nav-mobile .divider {
	border-top:2px solid #eee;
	margin:0 15px 15px;
}

#nav-mobile .navbar-toggle {
	margin: 0 5px;
	border:0;
}

#nav-mobile .navbar-nav > li > a {
	padding: 0px 15px 15px;
}

#nav-mobile .navbar-collapse {
	text-align: center;
	padding:0 15px;
	border:0;
	float: left;
	width: 100%;
}

#nav-mobile a {
	text-decoration:none;
	font-size:18px;
	background:none;
}

#nav-mobile .dropdown-menu:last-child > li:last-child > a {
	margin-bottom:10px;
}

#nav-mobile .dropdown-menu > li:first-child > a {
	padding-top:0;
}

#nav-mobile .inline a {
	display:inline;
}

#nav-mobile .meta li:first-child {
	padding-bottom: 2px;
}

#nav-mobile .meta a {
	font-size: 14px;
}

input[id*='quantity'] {
	width: 20%;
	-moz-appearance: textfield;
}

#theater-teaser td {
	text-align: center;
    padding: 0 20%;
    font-size: 45px;
}

#schweizmobil {
    overflow: hidden;
    position: relative;
    height: 200px;
    padding-left:0;
    padding-right: 0;
}

#schweizmobil .embed-responsive-16by9 {
    padding:0;
    height:100%;
}

.attached-images {
	margin-bottom: 20px;
}

.attached-images .item .col-sm-4 {
    cursor:pointer;
}

.attached-images .item .col-sm-4 > div {
	background-size: cover;
	background-position: center;
}

.attached-images-modal .modal-dialog {
	max-width: 1000px;
	top: 50%;
	transform: translateY(-50%) !important;
	text-align: center;
}

.attached-images-modal .modal-dialog img {
	padding: 15px;
	background:white;
}

.attached-images-modal .modal-content {
	background:transparent;
}

.attached-images-modal .fa-times {
	color:#fff;
	top: -10px;
	right: -10px;
	position: absolute;
}

.attached-images-modal .fa-angle-right {
    position: absolute;
    right: -15px;
    color: white;
    font-size: 58px;
    top: 50%;
    transform: translateY(-50%);
}

.attached-images-modal .fa-angle-left {
    position: absolute;
    left: -15px;
    color: white;
    font-size: 58px;
    top: 50%;
    transform: translateY(-50%);
}

.attached-images-modal .fa:hover {
    cursor:pointer;
    color:#dc0f00;
}


/* Extra small devices (phones, less than 768px) */
@media (max-width: 767px) {
    #gallery-modal .modal-dialog {
        margin:10px auto;
    }

    .attached-images .carousel-control {
        display:block;
    }

    .attached-images .item .col-sm-4 {
        margin-bottom:10px;
    }

    .attached-images .item .col-sm-4 > div {
    	padding-bottom:75%;
    }

	#carousel-alle-angebote .item > div:first-child {
		height: 210px;
	}
	section {
    	padding: 20px 0 50px;
	}
	#theater-teaser td {
		padding:0;
    	font-size: 32px;
	}
	#map,
	.carousel.angebot .item,
	.carousel.angebote .item {
		height:200px;
	}
	.carousel.angebot {
		padding-top:50px;
	}
	footer {
		padding:50px 0;
	}
	#nav-mobile + .wrap {
		padding-top:50px;
	}
	h1 {
		font-size:32px;
	}
	.carousel-caption {
		font-size:28px;
		padding:0;
	}
	.carousel-caption > div {
		width:100% !important;
	}
	.carousel-control {
		display:none;
	}
	.produktion .btn-primary,
	.angebot-detail .btn-primary,
	.veranstaltung .btn-primary {
		display:block;
	}
	.produktion .btn-primary,
	.angebot-detail .btn-primary,
	.veranstaltung .btn-primary,
	a.btn-primary:hover {
		display:block;
	}

}

/* Small devices (tablets, 768px and up) */
@media (min-width: 768px) {
    .attached-images .item .col-sm-4 > div {
    	padding-bottom: 75%;
    }

    #schweizmobil {
        height: 450px;
        padding-left: 67px;
    }
}

/* Medium devices (desktops, 992px and up) */
@media (min-width: 992px) {

}

/* Large devices (desktops, 1200px and up) */
@media (min-width: 1200px) {

}
