/* GLOBAL STYLES
-------------------------------------------------- */


/* Padding below the footer and lighter body text */

body {
    padding-bottom: 40px;
    color: #2e333e;
    /* background-color: #2862a0; */
    background-color: #F3F0EC;
    margin: 0;
    font-family: 'Open Sans', sans-serif;
}

.navbar-wrapper {
    /* position: absolute;
  top: 0px;*/
    right: 0;
    left: 0;
    background-color: #2862A0;
    /*#035056;*/
    z-index: 20;
}

footer {
    background-color: #2862A0;
    /*#035056;*/
}

img.desaturate {
    filter: grayscale(100%);
}

img.director {
    width: 140px;
    height: 140px;
    margin-top: -16px;
}

.vorstellungen-border {
    display: block;
    margin-bottom: 25px;
    /* border: 1px solid rgb(35, 135, 179); */
}

.vorstellungen-header {
    color: white;
    padding: 5px;
    margin-left: 0px;
    margin-right: 0px;
    background: rgb(35, 135, 179);
}

body a {
    font-weight: bold;
    color: #2862a0;
}

a.film {
    text-transform: uppercase;
    font-weight: bold;
    text-decoration: underline;
    color: #17a1ab;
    /*rgb(28, 190, 202);*/
}

.ticketframe .mfp-content {
    height: 90%;
}

.spielplan-datum-zahl,
.spielplan-datum-tag {
    padding-left: 14px;
    padding-right: 14px;
    width: 1px;
    white-space: nowrap;
}

.trailer-button {
    display: block;
    padding: 4px;
    border: solid #29639f 1px;
    margin-top: 2px;
    margin-bottom: 4px;
    color: #29639f;
}

.ticket-message {
    margin-top: 15px;
    margin-bottom: 15px;
    background-color: #f05325;
    padding: 2px 4px;
    color: white;
}

.ticket-message a {
    color: white !important;
}

.trailer-button:hover,
.trailer-button:active,
.trailer-button:focus {
    text-decoration: none;
    background: #29639f;
    color: white;
}

.trailer-button:hover,
.trailer-button:active,
.trailer-button:focus {
    text-decoration: none;
    background: #29639f;
    color: white;
}

.spielplan-ticket a.ticketlink {
    border: 1px solid black;
    /* var(--accent-color-light); */
    /* font-size: 0.8rem; */
    position: relative;
    padding: 2px;
    padding-left: 6px;
    padding-right: 6px;
    /* color: var(--accent-color-light) !important; */
    text-decoration: none;
}

.block {
    position: relative;
}

.block .overlay {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
}

.block .inner {
    position: relative;
    pointer-events: none;
    z-index: 1;
}

.block .inner a {
    pointer-events: all;
}


/*
li .film {
  border-bottom: 1px dashed #17a1ab;
}

*/

.google-maps {
    position: relative;
    padding-bottom: 45%;
    /* This is the aspect ratio */
    height: 0;
    margin-top: 15px;
    overflow: hidden;
}

.google-maps iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}

.archiv .btn {
    color: #fff;
    background: #06a0ad;
    width: 80px;
    height: 80px;
    padding: 10px 2px;
    font-size: 13px;
    /* background: rgb(213, 0, 115); */
    border: 1px solid white;
    color: white;
    text-decoration: none;
}

.archiv .btn i.fa {
    color: white;
    display: block;
    font-size: 28px;
    margin-bottom: 10px;
}

.archiv .btn:hover {
    color: white;
    background-color: #465ea3;
}


/* CUSTOMIZE THE NAVBAR
-------------------------------------------------- */


/* Special class on .container surrounding .navbar, used for positioning it into place. */


/* Flip around the padding for proper display in narrow viewports */

.navbar-wrapper>.container {
    padding-right: 0;
    padding-left: 0;
}

.navbar-wrapper .navbar {
    padding-right: 15px;
    padding-left: 15px;
}

.navbar-wrapper .navbar .container {
    /* width: auto;*/
}


/* CUSTOMIZE THE CAROUSEL
-------------------------------------------------- */

.carousel-caption-xs h1 {
    background: #2862A0;
    padding: 6px 24px;
    font-size: 18px;
    display: block;
    margin-bottom: 0px;
    margin-top: 0px;
}

.carousel-caption-xs p {
    background: #9f8b64;
    padding: 6px 24px;
    color: white;
    font-weight: normal;
}


/* Carousel base class */

.carousel {
    max-width: 1570px;
    /*max-height: 584px;*/
    margin-bottom: 10px;
    margin-top: 10px;
    height: auto;
    overflow: hidden;
    /*margin-top: 65px;
  margin-bottom: 60px;
  max-height: 500px;
*/
}


/* Since positioning the image, we need to help out the caption */

.carousel-caption {
    z-index: 10;
}


/* Declare heights because of positioning of img element */

.carousel .item {
    max-height: 584px;
}

.carousel-inner>.item>img,
.carousel-inner>.item>a>img {
    top: 0;
    left: 0;
    min-width: 100%;
    height: auto;
    max-width: 100%;
    display: block;
}

.carousel-caption {
    text-align: left;
}

.carousel-caption h1 {
    background: #2862A0;
    /* rgba(28, 190, 202,1);*/
    padding: 6px 24px;
    font-size: 24px;
    display: inline-block;
    margin-bottom: 0px;
}

.carousel-caption p {
    background: #A08A64;
    padding: 6px 24px;
}


/* MARKETING CONTENT
-------------------------------------------------- */


/* Center align the text within the three columns below the carousel */

.marketing .col-md-4 {
    margin-bottom: 20px;
    /*text-align: center;*/
}

.marketing h2 {
    font-weight: normal;
    color: #29639f;
}

.marketing .col-md-4 p {
    /*line-height: 130%;
  margin-right: 10px;
  margin-left: 10px;*/
}

.marketing .btn-default {
    color: #eee;
    background-color: #9f8b64;
    /*rgb(28, 190, 202);*/
    display: inline-block;
}

.marketing .btn-default:hover {
    color: #eee;
    background-color: #29639f;
    display: inline-block;
}

@media (max-width: 767px) {
    .marketing .row,
    #spielplan-filme .texte {
        margin-right: 0px;
        margin-left: 0px;
    }
}


/* Featurettes
------------------------- */

.featurette-divider {
    margin: 80px 0;
    /* Space out the Bootstrap <hr> more */
}


/* Thin out the marketing headings */

.featurette-heading {
    font-weight: 300;
    line-height: 1;
    letter-spacing: -1px;
}


/* RESPONSIVE CSS
-------------------------------------------------- */

@media (min-width: 768px) {
    /* Navbar positioning foo */
    .navbar-wrapper {
        margin-top: 0px;
    }
    .navbar-wrapper .container {
        padding-right: 15px;
        padding-left: 15px;
    }
    .navbar-wrapper .navbar {
        padding-right: 0;
        padding-left: 0;
    }
    /* The navbar becomes detached from the top, so we round the corners */
    .navbar-wrapper .navbar {
        border-radius: 0px;
    }
    .featurette-heading {
        font-size: 50px;
    }
}

@media (min-width: 992px) {
    .featurette-heading {
        margin-top: 120px;
    }
}

@media (min-width: 300px) {
    .carousel .item {
        max-height: 180px;
    }
}

@media (min-width: 380px) {
    .carousel .item {
        max-height: 205px;
    }
}

@media (min-width: 480px) {
    .carousel .item {
        max-height: 240px;
    }
}

@media (min-width: 560px) {
    .carousel .item {
        max-height: 300px;
    }
}

@media (min-width: 640px) {
    .carousel .item {
        max-height: 345px;
    }
}

@media (min-width: 640px) {
    .carousel .item {
        max-height: 345px;
    }
}

@media (min-width: 768px) {
    .carousel .item {
        max-height: 370px;
    }
}

@media (min-width: 800px) {
    .carousel .item {
        max-height: 414px;
    }
}

@media (min-width: 992px) {
    .carousel .item {
        max-height: 510px;
    }
}

@media (min-width: 1100px) {
    .carousel .item {
        max-height: 594px;
    }
}

@media (min-width: 1200px) {
    .carousel .item {
        max-height: 680px;
    }
}

@media (min-width: 1600px) {
    .carousel .item {
        max-height: 800px;
    }
}


/*
 Navbar: Open on hover
*/

@media (min-width: 979px) {
    ul.nav li.dropdown:hover>ul.dropdown-menu {
        display: block;
    }
}


/*
 When stacking columns add spacing;
*/

@media (max-width: 991px) {
    [class*="col-"] {
        margin-bottom: 15px;
    }
}

.spielplan {
    margin-top: 10px;
    margin-bottom: 10px;
}

.spielplan td,
th {
    border: 1px solid #035056;
    padding: 5px;
    text-align: center;
}

.spielplan th {
    font-weight: bold;
    background: #035056;
    color: white;
}

.spielplan td {
    color: white;
    height: 100%;
    overflow: hidden
}

.spielplan td a {
    margin: -9em;
    padding: 9em;
    font-weight: bold;
    display: block;
    text-decoration: none;
    color: #035056;
    vertical-align: middle;
}

.spielplan a:hover {
    background: #035056;
    color: white;
}

.spielplan a:hover .land {
    color: #999;
}

.spielplan .zeit {
    color: black;
    background: white;
    white-space: nowrap;
    padding-left: 2px;
    padding-right: 2px;
}

.spielplan .land {
    color: #555;
    /*background:white;*/
    white-space: nowrap;
}

.filmtitel {
    /* text-transform: uppercase; */
}

#myCarousel a p {
    color: white;
    font-weight: normal;
}

#myCarousel a:hover {
    text-decoration: underline;
    color: white;
}

#myCarousel a h1:hover {
    text-decoration: underline;
    color: white;
}

#filmdetail .filmtitel {
    margin-top: 25px;
}

h1,
a.filmtitel {
    color: white;
    font-weight: normal;
}

h1 span {
    background-color: #2862A0;
    color: #F3F0EC;
    padding-left: 5px;
    padding-right: 5px;
}

#spielplan-filme h1 span {
    background-color: #2862A0;
    font-weight: bold;
    color: #F3F0EC;
    font-size: 24px;
    padding-right: 5px;
}

#spielplan-filme a.filmtitel:hover {
    color: #F3F0EC;
    text-decoration: underline;
}

#spielplan-filme .film {
    border-bottom: 1px solid #29639f;
    padding-bottom: 15px;
}

#spielplan-filme h1 {
    line-height: 100%;
    margin-bottom: 0px;
    padding-right: 0px;
}

h2 {
    color: white;
    /*margin-bottom: 0px; */
}

h2 span {
    background-color: #a08a64;
    padding-left: 5px;
    padding-right: 5px;
    font-size: 24px;
    line-height: 120%;
}

#filmdetail .img-circle,
#gaeste .img-circle {
    float: right;
    padding-left: 5px;
    padding-bottom: 5px;
}

#ftmm-body .navbar {
    background-color: none;
    /*:rgb(28, 190, 202);*/
    text-transform: uppercase;
    font-weight: bold;
    font-size: 16px;
    /* background: #f4f6d4;*/
    /* background: linear-gradient(to bottom,rgba(244,246,212,1) 75%  , rgba(244,246,212,0) 100% );*/
    /*#f4f6d4;*/
    /*opacity: 1;
   height: 55px;*/
    margin: 0px;
    border-bottom: 0px;
}

#ftmm-body .btn {
    border-radius: 0px;
}

#ftmm-body .img-circle {
    border-radius: 50% !important;
}

@media (max-width: 768px) {
    .navbar-nav {
        padding-top: 40px;
        padding-left: 15px;
    }
}

@media (max-width: 767px) {
    .navbar-nav .open .dropdown-menu>li>a {
        color: white;
    }
}

.navbar a {
    color: white;
    /*#17a1ab; /* rgb(28, 190, 202); /*white;*/
}

.navbar .navbar-toggle {
    color: white;
}

.navbar-brand {
    line-height: 85%;
}

.navbar-subbrand {
    padding-left: 0px;
    font-size: 14px;
    color: #eae5dd;
}

#headermenu .btn {
    color: #2862A0;
    /* background: #035056; */
    border: 1px solid #2862A0;
    padding: 6px 6px;
}

#headermenu .btn:hover {
    background: #2862A0;
    color: white;
}

#headermenu .btn.active {
    background: #2862A0;
    border: 1px solid #2862A0;
    color: white;
    background-image: none;
    outline: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.padding-0 {
    padding-left: 0px !important;
    padding-right: 0px !important;
}

#spielplan-kalender td {
    font-size: 12px;
}

.spielplan-datum-zahl,
.spielplan-datum-tag {
    border-bottom: 1px solid #d4d6b4;
    padding-left: 8px;
    padding-right: 8px;
    text-align: center;
    display: table-cell;
}

.spielplan-datum-zahl {
    /*#c3c7e1;*/
    background: #29639f;
    color: white;
}

.spielplan-datum-tag {
    background: #a08a64;
    color: white;
}

#spielplan-termine .spielplan-filme {
    background: #fcf8f2;
}

.spielplan-uhrzeit {
    color: black;
    display: table-cell;
    width: auto;
    padding: 6px;
    border-bottom: 1px solid#c3c7e1;
}

.spielplan-film {
    display: table-cell;
    width: 100%;
    padding: 6px 12px 6px 6px;
    border-bottom: 1px solid#c3c7e1;
}

.spielplan-ticket {
    display: table-cell;
    width: 20%;
    padding: 6px 12px 6px 6px;
    border-bottom: 1px solid#c3c7e1;
}

#spielplan-termine {
    font-size: 14px;
}

#spielplan-termine a {
    text-decoration: none;
    color: black;
}

#spielplan-termine a:hover {
    background: #06a0ad22;
}

#spielplan-termine .label.location,
#spielplan-kalender-klein .label.location {
    background: #2e333e;
    color: white;
    /* border: 1px solid #03505644; */
    border-radius: 0px !important;
    text-transform: uppercase;
    white-space: nowrap;
    font-size: 75%;
    font-weight: normal;
    padding: .2em .6em .3em;
}

#spielplan-filme .label.location {
    background: #2e333e;
    color: white;
    /* border: 1px solid #03505644; */
    border-radius: 0px !important;
    text-transform: uppercase;
    white-space: nowrap;
    font-size: 85%;
    font-weight: normal;
    padding: .2em .6em .3em;
}

#spielplan-termine .label,
#spielplan-kalender-klein .label {
    /* background: #2e333e; */
    color: #29639f;
    /* border: 1px solid #03505644; */
    border-radius: 0px !important;
    text-transform: uppercase;
    white-space: nowrap;
    font-size: 75%;
    /* font-weight: normal; */
    padding: 0px;
}

.spielplan-filme .inner:hover {
    background: #8f854882 !important;
}

.wordwrap {
    word-break: break-word;
}

.day ul {
    padding-right: 0px;
    padding-left: 0px;
}

.day ul li {
    list-style: none;
    padding: 4px;
}

.day ul li.film {
    padding-right: 10px;
    padding-left: 10px;
}

.day ul li.film:hover {
    background-color: #03505644;
}

.day b {
    display: block;
}

.day .date {
    text-align: center;
    color: white;
    background: #035056;
}

.day ul li.one {
    margin-top: 10px;
}

.day a.film {
    font-weight: normal;
    color: black;
    text-decoration: none;
}

.day a.film:hover {
    text-decoration: none;
}

#ftmm-body .nav>li>a:hover {
    text-decoration: none;
    background-color: #A08A64;
    color: white;
}

#ftmm-body .nav>li>a:focus {
    text-decoration: none;
    background-color: #465ea3;
    /*#ec650b;*/
    color: white;
}

#ftmm-body .dropdown-menu>li>a:focus,
.dropdown-menu>li>a:hover {
    color: white;
    text-decoration: none;
    background-color: #A08A64;
    /*#ec650b*/
    ;
}

body#ftmm-body .footer {
    /*background-color: #035056;*/
    /*rgb(246, 246, 246);*/
    margin-top: 15px;
    padding: 20px;
    color: #999;
    color: #eeeeee;
    font-size: 11px;
    line-height: 150%;
    /* font-family:verdana; */
}

footer a {
    color: #eeeeee;
    font-weight: normal;
}

footer a:hover {
    color: #ccbc9c;
}

footer .btn {
    color: #fff;
    background: #2862A0;
    /*rgb(213, 0, 115);*/
    width: 80px;
    padding: 10px 2px;
    font-size: 13px;
    /*background: rgb(213, 0, 115);*/
    border: 1px solid white;
    ;
    color: white;
    text-decoration: none;
}

footer .btn:hover {
    color: white;
    background-color: #A08A64;
}

footer .btn i.fa {
    color: white;
    display: block;
    font-size: 28px;
    margin-bottom: 10px;
}

.carousel-control.left {
    background: none;
}

.carousel-control.right {
    background: none;
}

.carousel-caption {
    /*position: relative;
    left: auto;
    right: auto;
     max-height: 20%;*/
}

.carousel-indicators li {
    border-radius: 0px;
    border-color: #f4f6d4;
}

.carousel-indicators .active {
    background-color: #f4f6d4;
}


/*
  Bootstrap Carousel Fade Transition (for Bootstrap 3.3.x)
  CSS from:       http://codepen.io/transportedman/pen/NPWRGq
  and:            http://stackoverflow.com/questions/18548731/bootstrap-3-carousel-fading-to-new-slide-instead-of-sliding-to-new-slide
  Inspired from:  http://codepen.io/Rowno/pen/Afykb 
*/

.carousel-fade .carousel-inner .item {
    opacity: 0;
    transition-property: opacity;
}

.carousel-fade .carousel-inner .active {
    opacity: 1;
}

.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
    left: 0;
    opacity: 0;
    z-index: 1;
}

.carousel-fade .carousel-inner .next.left,
.carousel-fade .carousel-inner .prev.right {
    opacity: 1;
}

.carousel-fade .carousel-control {
    z-index: 2;
}


/*
  WHAT IS NEW IN 3.3: "Added transforms to improve carousel performance in modern browsers."
  Need to override the 3.3 new styles for modern browsers & apply opacity
*/

@media all and (transform-3d),
(-webkit-transform-3d) {
    .carousel-fade .carousel-inner>.item.next,
    .carousel-fade .carousel-inner>.item.active.right {
        opacity: 0;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    .carousel-fade .carousel-inner>.item.prev,
    .carousel-fade .carousel-inner>.item.active.left {
        opacity: 0;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
    .carousel-fade .carousel-inner>.item.next.left,
    .carousel-fade .carousel-inner>.item.prev.right,
    .carousel-fade .carousel-inner>.item.active {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }
}


/*

Filmdetail Seite

*/

.filmheader .filmtitel {
    font-size: 18px;
    line-height: 100%;
    padding-bottom: 4px;
}

.filmcredits p,
.filmcredits {
    font-size: 14px;
    line-height: 130%;
    color: #545454;
    background: #eae5dd;
    padding: 5px;
    margin-top: 10px;
    margin-bottom: 10px;
}

#spielplan-filme .filmcredits {
    font-size: 14px;
    line-height: 130%;
    color: #2e343e;
    background: #d4cbba;
    padding: 5px;
    margin-top: 5px;
    margin-bottom: 5px;
}

.termine {
    font-weight: bold;
    font-size: 14px;
    line-height: 130%;
}

#spielplan-filme .termine {
    float: right;
}

.reihe {
    padding-bottom: 4px;
    line-height: 100%;
    font-weight: bold;
}


/*
 Spielplan - Filter
*/

@media (max-width: 991px) {
    #filmfilter [class*="col-"] {
        margin-bottom: 0px;
    }
    #headermenu [class*="col-"] {
        margin-bottom: 0px;
    }
}

#filmfilter h5 {
    font-weight: bold;
    margin-bottom: 2px;
    font-size: 12px;
    text-transform: uppercase;
}

#filmfilter hr {
    margin-top: 4px;
    margin-bottom: 4px;
    border: 0;
    height: 2px;
    background: white;
}

#filmfilter {
    margin-left: 0px;
    margin-right: 0px;
    color: white;
    background: #2862a0;
}

#filmfilter ul {
    padding-left: 0px;
    list-style-type: none;
    padding-bottom: 25px;
}

#filterButton {
    width: 100%;
    border-radius: 0px;
    display: block;
    padding: 3px;
    display: block;
    color: white;
    background: #2862a0;
}

.filmfilter-checkbox-label {
    font-weight: normal;
}

.filmfilter-checkbox:checked+.filmfilter-checkbox-label {
    background: #ffa501;
}

.filterButtonText {
    background: #a08a64;
    padding: 0px 10px;
}

.filterButtonText.active {
    background: orange;
}

.film.active {
    background: orange;
}

[data-toggle="collapse"].collapsed .if-not-collapsed {
    display: none;
}

[data-toggle="collapse"]:not(.collapsed) .if-collapsed {
    display: none;
}

#spielplan-filter-beschreibung {
    margin-top: 5px;
    background: #2e333e;
    color: #ffa501;
    padding: 2px 4px;
}

.back-to-top {
    background: none;
    margin: 0px;
    position: fixed;
    bottom: 15px;
    right: 15px;
    width: 45px;
    height: 45px;
    vertical-align: middle;
    text-align: center;
    z-index: 1000;
    display: none;
    text-decoration: none;
    color: #ffffff;
    background-color: #2862a0;
}

.back-to-top i {
    font-size: 32px;
}

.back-to-top a {
    color: white;
    display: block;
    width: 45px;
    height: 45px;
    padding-top: 4px;
    vertical-align: middle;
    text-align: center;
}

.back-to-top:hover {
    color: white;
    background-color: #a08a64;
}

.trailerButtonImageWrap {
    display: inline-block;
    position: relative;
}

.trailerButton {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: none;
    border: 0;
    outline: none;
    cursor: pointer;
}

.trailerButton:after {
    content: '';
    position: absolute;
    bottom: 24px;
    right: 34px;
    width: 0;
    height: 0;
    margin: -16px 0px 0px 0px;
    border-left: 40px solid #fff;
    border-top: 24px solid transparent;
    border-bottom: 24px solid transparent;
    -webkit-transition: border-color 300ms;
    -moz-transition: border-color 300ms;
    transition: border-color 300ms;
}

.trailerButton:before {
    content: '';
    position: absolute;
    bottom: 10px;
    right: 20px;
    width: 80px;
    height: 80px;
    margin: -20px 0 0 -20px;
    border: 8px solid #fff;
    border-radius: 100%;
    -webkit-transition: border-color 300ms;
    -moz-transition: border-color 300ms;
    transition: border-color 300ms;
}

.trailerButton:hover:before,
.trailerButton:focus:before {
    border-color: #17a1ab;
    /* #ec650b;*/
}

.trailerButton:hover:after,
.trailerButton:focus:after {
    border-left-color: #17a1ab;
    /* #ec650b;*/
}

@media (max-width: 767px) {
    .container {
        padding: 0;
        margin: 0;
    }
    #body {
        padding: 0;
    }
    .container {
        overflow: hidden;
        overflow-y: auto;
    }
}

@media (max-width: 480px) {
    .container {
        padding: 0;
        margin: 0;
    }
    #body {
        padding: 0;
        font-size: 13px;
    }
}