﻿/*
    Author: Carolina Molina
    POP
*/

/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #0b0b0b;
  opacity: 0.8;
  filter: alpha(opacity=80); }

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden; }

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle; }

.mfp-align-top .mfp-container:before {
  display: none; }

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045; }

.mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto; }

.mfp-ajax-cur {
  cursor: progress; }

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: zoom-out; }

.mfp-zoom {
  cursor: pointer;
  cursor: -webkit-zoom-in;
  cursor: -moz-zoom-in;
  cursor: zoom-in; }

.mfp-auto-cursor .mfp-content {
  cursor: auto; }

.mfp-close, .mfp-arrow, .mfp-preloader, .mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none; }

.mfp-loading.mfp-figure {
  display: none; }

.mfp-hide {
  display: none !important; }

.mfp-preloader {
  color: #cccccc;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044; }
  .mfp-preloader a {
    color: #cccccc; }
    .mfp-preloader a:hover {
      color: white; }

.mfp-s-ready .mfp-preloader {
  display: none; }

.mfp-s-error .mfp-content {
  display: none; }

button.mfp-close, button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  -webkit-box-shadow: none;
  box-shadow: none; }
button::-moz-focus-inner {
  padding: 0;
  border: 0; }

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  color: white;
  font-style: normal;
  font-size: 28px;
  font-family: Arial, Baskerville, monospace; }
  .mfp-close:hover, .mfp-close:focus {
    opacity: 1; }
  .mfp-close:active {
    top: 1px; }

.mfp-close-btn-in .mfp-close {
  color: #333333; }

.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
  color: white;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%; }

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #cccccc;
  font-size: 12px;
  line-height: 18px; }

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
  .mfp-arrow:active {
    margin-top: -54px; }
  .mfp-arrow:hover, .mfp-arrow:focus {
    opacity: 1; }
  .mfp-arrow:before, .mfp-arrow:after, .mfp-arrow .mfp-b, .mfp-arrow .mfp-a {
    content: '';
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent; }
  .mfp-arrow:after, .mfp-arrow .mfp-a {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px; }
  .mfp-arrow:before, .mfp-arrow .mfp-b {
    border-top-width: 21px;
    border-bottom-width: 21px; }

.mfp-arrow-left {
  left: 0; }
  .mfp-arrow-left:after, .mfp-arrow-left .mfp-a {
    border-right: 17px solid white;
    margin-left: 31px; }
  .mfp-arrow-left:before, .mfp-arrow-left .mfp-b {
    margin-left: 25px;
    border-right: 27px solid #3f3f3f; }

.mfp-arrow-right {
  right: 0; }
  .mfp-arrow-right:after, .mfp-arrow-right .mfp-a {
    border-left: 17px solid white;
    margin-left: 39px; }
  .mfp-arrow-right:before, .mfp-arrow-right .mfp-b {
    border-left: 27px solid #3f3f3f; }

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px; }
  .mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
    max-width: 900px; }
  .mfp-iframe-holder .mfp-close {
    top: -40px; }

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%; }
  .mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: black; }

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto; }

/* The shadow behind the image */
.mfp-figure {
  line-height: 0; }
  .mfp-figure:after {
    content: '';
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #444444; }
  .mfp-figure small {
    color: #bdbdbd;
    display: block;
    font-size: 12px;
    line-height: 14px; }
  .mfp-figure figure {
    margin: 0; }

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto; }

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #f3f3f3;
  word-wrap: break-word;
  padding-right: 36px; }

.mfp-image-holder .mfp-content {
  max-width: 100%; }

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  /**
       * Remove all paddings around the image on small screen
       */
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0; }
  .mfp-img-mobile img.mfp-img {
    padding: 0; }
  .mfp-img-mobile .mfp-figure {
    /* The shadow behind the image */ }
    .mfp-img-mobile .mfp-figure:after {
      top: 0;
      bottom: 0; }
    .mfp-img-mobile .mfp-figure small {
      display: inline;
      margin-left: 5px; }
  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box; }
    .mfp-img-mobile .mfp-bottom-bar:empty {
      padding: 0; }
  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px; }
  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0; } }

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    transform: scale(0.75); }
  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    transform-origin: 0; }
  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    transform-origin: 100%; }
  .mfp-container {
    padding-left: 6px;
    padding-right: 6px; } }

.mfp-ie7 .mfp-img {
  padding: 0; }
.mfp-ie7 .mfp-bottom-bar {
  width: 600px;
  left: 50%;
  margin-left: -300px;
  margin-top: 5px;
  padding-bottom: 5px; }
.mfp-ie7 .mfp-container {
  padding: 0; }
.mfp-ie7 .mfp-content {
  padding-top: 44px; }
.mfp-ie7 .mfp-close {
  top: 0;
  right: 0;
  padding-top: 0; }





.cf:before,
.cf:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.cf:after {
    clear: both;
}

.cf {
    *zoom: 1;
}

main {
    padding:0px;
}
main .container {
    background-color:#fcfcfc;
    /*background-color:#c0c0c0;*/
    padding:30px 0;
    position:relative;
    overflow:hidden;
}
.container h1 {
    border-bottom:1px solid #e0e0e0;
    line-height:1.2em;
    padding-bottom:15px;
    width:100%;
}

.container .alert-error {
    color:#cc0000;
    padding:10px 0;
}
.container h4.alert-error {
    margin:0px;
    padding:0px;
}
.container input[type="text"],
.container input[type="password"],
.container input[type="tel"],
.container input[type="number"] {
    max-width:270px;
    width:auto;
}
.container select {
    padding:0px;
    min-width:50px;
    width:auto;
}
.container .card-label {
    margin-bottom:0px;
}
.container .card-exp select {
    display:inline-block;
}
.container input[type=submit] {
    min-width:125px;
    width:auto;
}
.container input[type=checkbox] {
    margin-right:5px;
}
.container textarea {
    max-width:300px;
    width:auto;
}
.container table.checkBoxList {
    margin-bottom:10px;
    width:100%
}
    .container table.checkBoxList td {
        display:inline-block;
        margin:0 0 5px 0;
        width:49%;
    }

/*
    Payment Overlay
    */
.container #overlay {
	background-color: #000;
	min-height: 100%;
	left: 0;
	opacity: .5;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 999998;
}
.container #progress {
    background-color: #fff;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
	top: 50%;
	left: 50%;
	margin-left: -150px;
    margin-top: -150px;
	padding: 30px;
	position: fixed;
	text-align: center;
	width: 300px;
	z-index: 999999;
}
    .container #progress h4 {
	    color: #666b6e;
    }
/*
    Cart Styles
 */

.container ul.cart-detail h2 {
    float:left;
    margin-top:20px;
    width:100%;
}

.cartEmptyBg .add-donation {
    float:left;
    border-bottom:1px solid #e0e0e0;
    margin-bottom: 20px;
    padding-bottom:30px;
    width:100%;
}
    .cartEmptyBg .add-donation p {
        margin:0px;
    }
    .cartEmptyBg .add-donation .amount {
        margin-top:15px;
        padding-left:0px;
        text-align:right;
    }
        .cartEmptyBg .add-donation .amount input {
            display:inline-block;
            margin-right:30px;
            min-width:100px;
        }

.container .payments {
    background-color:#fff;
    border:1px solid #e0e0e0;
    margin:20px -15px 10px 0;
    padding:12px;
}
    .container .payments p {
        font-weight:bold;
        margin:0 0 10px;
        width:100%;
    }
        .container .payments p span {
            display:inline-block;
            text-align:right;
            width:49%;
        }
        .container .payments p span.detail {
            text-align:left;
        }

.cartEmptyBg .clickMeFake {
    border-bottom:1px solid #e0e0e0;
    float:left;
    padding:10px 0 20px;
    width:100%;
}
    .cartEmptyBg .clickMeFake a {
        background-color:#585858;
        color:#fff;
        float:right;
        text-transform:uppercase;
        margin: 0 0 20px 20px;
        padding:5px 20px;
    }

.container ul.cart-detail {
    color: #000000;
    float:left;
    margin-left:0px;
    list-style:none;
    width:100%;
}
    .container ul.cart-detail div {
        background-color:#000000;
        float:left;
        width:100%;
    }
    .container ul.cart-detail .header {
        color: #FFF;
    }
    .container ul.cart-detail div p {
        color: #f6f6f6;
        display:inline-block;
        font-weight:bold;
        margin:0px;
        padding:5px 0;
        text-transform:uppercase;
        width:13%;
    }
    .container ul.cart-detail a {
        display: inline-block;
        color: #000;
        padding-bottom: 0px;
        font-weight: bold;
        border-bottom: 2px solid #ee3342;
    }

    .container ul.cart-detail .qty, .container ul.cart-detail p.qty-data, .container ul.cart-detail p.btn-data {
        width:10%;
    }
    .container ul.cart-detail p.item, .container ul.cart-detail p.item-data {
        padding-left:2%;
        width:18%;
    }
    .container ul.cart-detail p.desc, .container ul.cart-detail p.desc-data {
        width:30%;
    }
        .container ul.cart-detail p.desc-data span {
            display:inline-block;
            width:90%;
        }
    .container ul.cart-detail p.total {
        width:25%;
    }
    .container ul.cart-detail li {
        border-bottom:1px solid #e0e0e0;
        list-style:none;
        display:inline-block;
        margin:0px;
        padding:10px 0 20px;
        width:100%;
    }
        .container ul.cart-detail li p {
            display:inline-block;
            margin:0px;
            vertical-align:top;
            width:13%;
        }
.container p.pull-right input {
    float:right;
    margin-top:15px;
}

/*
    Ticket Buy Page
*/

.container .price-box {
    background-color:#fff;
    border:1px solid #e0e0e0;
    margin-bottom:20px;
    padding:0 15px 10px;
}
    .container .price-box h4 {
        margin:20px 0 10px;
    }
    .container h2.tickets-detail {
        margin:0px;
    }
    .container .content_block ul {
        margin-left: 20px;
    }


/*
    Login Page
    */

.container .loginP {

}
    .container .loginP .formLabel {
        display:block;
        margin-bottom:10px;
    }
    .container .loginP .price-box {
        margin:0 10px;
    }
        .container .loginP .price-box h3 {
            padding:20px 0 10px;
        }

    .container .loginP .content_block {
        border-top:1px solid #e0e0e0;
        margin-top:30px;
        padding-top:30px;
    }
        .container .loginP .content_block h4:first-child {
            color:#8dd0b8;
        }

/*
   Package Redeem Page
    */

.container #shop_search h3, .container #shop_search_pkgs h3 {
    color:#676f72;
    float:left;
    margin-top:20px;
    width:100%;
}
.container #shop_search input[type=submit], .container #shop_search_pkgs_foot input[type=submit] {
    margin-top:10px;
}
.container #shop_search #shop_pkg_search_results, .container #shop_search_pkgs #pkg_cart {
    float:left;
    list-style:none;
    margin:0px;
    padding:0px;
    width:100%;
}
    .container #shop_search_pkgs #pkg_cart ul, .container #shop_search_pkgs #pkg_cart ul li {
        list-style:none;
        margin:0px;
        padding:0px;
    }
    .container #shop_search #shop_pkg_search_results li, .container #shop_search_pkgs #pkg_cart > li {
        border-top:1px solid #e0e0e0;
        float:left;
        list-style:none;
        padding-top:5px;
        width:100%;
    }
.container #shop_search #shop_pkg_search_results {
    margin-top:15px;
}
.container #shop_search_pkgs {
    float:left;
    width:100%;
}
.container #shop_pkg_info p {
    margin-bottom:10px;
}
    .container #shop_search_pkgs #pkg_cart > li {
        border-top:none;
        border-bottom:1px solid #e0e0e0;
    }

/*
    Festival Page
    */

.container #ctl00_BodyContent_pl_Festivals {
    border-bottom:1px solid #e0e0e0;
    padding-bottom:20px;
    margin-bottom:10px;
}
    .container #ctl00_BodyContent_pl_Festivals input[type=submit] {
        margin-top:10px;
    }
    .container .side-nav {
        float:left;
        margin-top:0px;
        width:100%;
    }
        .container .side-nav li {
            margin:0 0 15px 0;
        }





.price-box h4 {
    padding: 0.625rem;
}

.price-box table {
    border: 0 none;
    margin-bottom: 0;
}
@media (max-width: 641px) {
    .price-box .price-table {

        table-layout: fixed;
        width: 100%;
    }
    .price-box .price-table td {
        width: 33%;
    }
    .price-box .price-table > tbody > tr > td {
        padding: 0;
    }
    .price-box .price-table td:nth-child(2) {
        display: none;
    }
}

@media (min-width: 768px) {
    .price-box .field-inline {
        display: inline-block;
        margin-right: 10px;
    }

}
.price-box .price-box-select {
    padding: 5px 10px;
    margin-bottom: 0;
}
.row-space {
    padding: 20px  0.625rem 0;
}
.price-box .row-btn {
    background-color: transparent;
}

.btn-accent {
    color: #fff;
    background: #B3008C;
    position: relative;
    display: inline-block;
    padding: 6px 30px 5px;
    line-height: 2;
    transition: color .25s;
    text-decoration: none;
    font-family: 'Abril Fatface', sans-serif;
}
    .btn-accent:hover {
        background-color: #ee3342;
        color: #FFF;


    }
/*
.btn-accent {
   border: 2px solid #ffd80b;
   background-color: transparent;
   transition: all 0.3s ease-in-out;
   color: #000000;
   position: relative;
   display: inline-block;
   padding: 7px 20px;
   transition: color .25s;
   font-weight: 600;
   font-family: "Source Sans Pro", sans-serif;
   text-transform: uppercase;
   font-size: 16px;
}
    .btn-accent:hover {
        background-color: #ffd80b;
        color: #FFF;


    }
*/

.section-gray {
    background-color: #f6f6f6;
    padding: 60px 0;
}

.container-medium {
    padding: 60px 20px;
}

.container-medium-white {
    background-color: #FFF;
}
@media (min-width: 768px) {
    .container-medium {
        max-width: 80%;
        margin: 0 auto;
        padding: 60px 8 0px;
    }
}


.space-bottom-sm {
    margin-bottom: 20px;
}

.space-bottom-md {
    margin-bottom: 40px;
}
.space-bottom {
    margin-bottom: 60px;
}

.ctas-row {
    float: left;
    border-bottom: 1px solid #e0e0e0;
    padding: 10px 0 20px;
    margin-bottom: 20px;
    width: 100%;
}
.ctas-row .btn-accent {
    margin-left: 15px;
    margin-bottom: 20px;
}
.cartEmptyBg .payments {
    margin-top:0;
}
@media (max-width: 768px) {
    .cartEmptyBg .payments {
        margin: 20px -15px 10px;
    }
}



.form-register select {
    padding-left: 0.5rem;
}

.form-register input[type="text"],
.form-register input[type="password"],
.form-register input[type="number"],
.form-register input[type="tel"],
.form-register textarea,
.form-register select {
    max-width: 100%;
    width: 100%;
}

.form-register input[type="text"] + input[type="text"] {

}
.space-bottom-none {
    margin-bottom: 0;
}
@media (min-width: 768px) {
    .form-register input[type="text"],
    .form-register input[type="password"],
    .form-register input[type="number"],
    .form-register input[type="tel"],
    .form-register textarea,
    .form-register select {
        max-width: 435px;
    }
}

.container .select-inline {
    display: inline-block;
    padding: 0 20px 0 10px;
}
@media (max-width: 641px) {
    .container .select-inline.full-mobile {
        width: 100% !important;
    }
}
.container .select-inline-full {
    display: inline-block;
    padding: 0 20px 0 10px;
    width: 100%;
}


/* Sidebar */
.sidebar {
    background-color: #676f72;
    margin: 0 0 20px;
}
@media (min-width: 768px) {
    .sidebar {
        margin: 0 20px 0 0;
    }
}
    .container .sidebar li {
        margin-bottom: 0;
        list-style: none;
    }
    .sidebar li a {
        padding: 10px 20px;
        display: block;
        color: #FFF;
        width: 100%;
        -webkit-transition:all 0.3s ease-in-out;
        -moz-transition: all 0.3s ease-in-out;
        -ms-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out;
    }
        .sidebar li a:hover {
            background-color: #7f878a;
        }
        .sidebar li a.is-active {
            background-color: #4f585b;
        }


.btn-secondary {
    position: relative;
}

.btn-secondary::before,
.btn-secondary::after {
    content: '';
    display: block;
    position: absolute;
    width: 15px;
    height: 15px;
}

.btn-secondary::before {
    background: url("../img/borderSmallTopLeft.png") no-repeat center center;
    top: 0px;
    left: 0px;
}
.btn-secondary::after {
    background: url("../img/borderSmallBottomRight.png") no-repeat center center;
    bottom: 0px;
    right: 0px;
}

.btn-secondary-gray {
    position: relative;
    display: inline-block;
    padding: 7px 15px;
    color: #5e6366;
    font: 16px "Source Sans Pro", sans-serif;
    -webkit-transition:all 0.3s ease-in-out;
    -moz-transition: all 0.3s ease-in-out;
    -ms-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
}

    .btn-secondary-gray:focus,
    .btn-secondary-gray:hover {
        color: #FFF;
        background-color: #5e6366
    }
.btn-secondary-gray::before,
.btn-secondary-gray::after {
    content: '';
    display: block;
    position: absolute;
    width: 15px;
    height: 15px;
}

.btn-secondary-gray::before {
    background: url("../img/borderSmallTopLeft-gray.png") no-repeat center center;
    top: 0px;
    left: 0px;
}
.btn-secondary-gray::after {
    background: url("../img/borderSmallBottomRight-gray.png") no-repeat center center;
    bottom: 0px;
    right: 0px;
}


.nav-schedule {
    display: block!important;
    list-style: none;
    text-align: center;
    background-color: #000000;
    padding: 10px;
    margin: 0 0 20px;
    position: relative;
}
.nav-schedule li {
    display: inline-block;
}
@media (max-width: 500px) {
   .nav-schedule {
       padding-top: 60px;
   }
   .nav-schedule li:nth-child(2) {
       position: absolute;
       top: 10px;
       right: 0;
       left: 0;
       margin: 0 auto;
   }
}



.nav-schedule h2 {
    color: #FFF;
    font-size: 20px;
    font-family: "Noto Serif", serif;
    margin: 0;
}
    .nav-schedule a {
        background-color: #000000;
        color: #FFF;
        text-align: center;
        font-family: "Source Sans Pro", sans-serif;
        display: inline-block;
        padding: 5px 10px;
    }
.nav-schedule .back {
    float: left;
}
.nav-schedule .next {
    float: right;
}

.film_list {
    list-style: none;
}


.search-inline input[type="text"] {
    display: inline-block;
    margin-right: 0;
    max-width: 100%;
    width: 100%;
}

.search-inline input[type=submit].btn-accent {
    min-width: auto;
    width: 100%;
}
@media (min-width: 768px) {
    .search-inline input[type="text"] {
        display: inline-block;
        margin-right: 2%;
        max-width: calc(98% - 110px);

    }
    .search-inline input[type=submit].btn-accent {
        min-width: auto;
        padding: 7px 10px;
        width: 100px;
    }
}

.calendar table {
    table-layout: fixed;

    width: 100%;
}
.calendar caption {
    padding: 10px 0 5px;
    position: relative;
}
    .calendar caption a {
        background-color: #000000;
        color: #FFF;
        padding: 5px 10px;
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
    }
    .calendar caption .capt {
        padding-bottom:5px;
    }
.calendar .available a {
    display: block;
}

.calendar .arrow_left {
    left: 0;
}
.calendar .arrow_right {
    right: 0;
}
@media (max-width: 768px) {
    .calendar table {
        margin: 0 auto 40px;
    }
}


.filter-pills {
    list-style: none;
    margin: 0 0 20px;
}
    .filter-pills li {
        display: inline-block;
    }
    .filter-pills li a {
        display: block;
        border: 2px solid #4f585b;
        color: #4f585b;
        font: 18px  "Source Sans Pro", sans-serif;
        padding: 4px 10px;
    }
        .filter-pills li.on a {
            background-color: #4f585b;
            color: #FFF;
        }

.link-list {
    list-style: none;
    margin: 0;
}
    .link-list li {
        margin-bottom: 5px;
    }
    .link-list a {
        display: block;
        text-decoration: underline;
    }

.container .gsc-control-cse {
    padding: 0;
}

form.gsc-search-box {
    background: #4f585b;
    border: 0 none;
    padding: 20px;
}

form.gsc-search-box .table.gsc-search-box {

}

form.gsc-search-box .gsc-input {
    padding: 0;
}
form.gsc-search-box .gsc-input input[type="text"]{
    margin: 0;
    padding: 10px 20px;
    font-size: 18px;
    font-weight: bold;
    width: 100%;
    border: 0 none;
    border-left: 3px solid #ffd80b;
    max-width: 100%;
    height: auto;
    box-shadow: none;
}
form.gsc-search-box .gsc-clear-button {
    padding: 0;
}
form.gsc-search-box table.gsc-search-box td.gsc-input  {
    padding:0;
}
form.gsc-search-box div.gsc-clear-button {
    padding: 0;
    display: inline-block;
    height: 20px;
    width: 20px;
}
form.gsc-search-box .gsc-search-button {
    padding: 0;
}

form.gsc-search-box .gsc-search-button input[type="button"]{
    height: 45px;
    border-radius: 0;
    padding: 0 20px;
    font-size: 14px;
    border: 2px solid #ffd80b;
   background-color: #ffd80b;
   transition: all 0.3s ease-in-out;
   color: #FFF;
   position: relative;
   display: inline-block;
   text-transform: uppercase;
   font: 600 16px "Source Sans Pro", sans-serif;
}

form.gsc-search-box .gsc-search-button input[type="button"]:hover{
    background-color: #000;
    border: 2px solid #000;
    color: #FFF;
}

.gsc-wrapper .gsc-webResult.gsc-result:hover {
    background: #FFF;
    box-shadow: none;
}

.gsc-control-cse .gsc-results .gsc-cursor-box .gsc-cursor {
    text-align: center;
    display: block;
    width: 100%;
}
.gsc-control-cse .gsc-results .gsc-cursor-box .gsc-cursor-page {
    display: inline-block;
    border: 2px solid #4f585b;
    padding: 3px 7px;
    color: #4f585b;
}
.gsc-control-cse .gsc-results .gsc-cursor-box .gsc-cursor-current-page {
    background-color: #4f585b;
    color: #FFF;
}

.container .gsc-results .gs-webResult.gs-result a.gs-title {
    color: #000;
}
.container .gs-webResult div.gs-visibleUrl {
    color: #4f585b;
}

.container .gs-webResult.gs-result a.gs-title:link b {
    color: #000;
}

/* Festival Calendar */

body {}
	div#schedule {
		font-size:0.8em;
	}
		div#shcedule div#primary {
			padding:0 0 2em 0;
		}
			div#schedule dl,
			div#schedule ul#schedule_nav,
			div#schedule div.alert {
				display:none;
			}

		div#schedule_wrapper {
			border-top:1px solid #000;
			width:auto;
			margin:2em 0 1em 0;
			padding:0em 0 0 0;
		}
			div#schedule_content {
				font-size:0.9em;
			}
				div#schedule_content h3 {
					height:24px;
					display:block;
					margin:0;
					padding:5px 0 0 0;
					font-size:1.2em;
					text-align:center;
					text-transform:none;
					color:#000;
					border-bottom:2px solid #676f72;
				}
					div#schedule_content h3 a {
						color:#000;
						text-decoration:none;
					}
				div#time_column {
					width:66px;
					float:left;
					border-right:1px solid #676f72;
					border-bottom:1px solid #676f72;
				}
					ul#time_list {
						list-style:none;
						margin:1px 0 0 0;
						padding:0;
						border-left:1px solid #676f72;
					}
						ul#time_list li {
							margin:0;
							padding:0 0 0 5px;
							height:90px;
							font-weight:bold;
						}
				div.venue_column {
					float:left;
					border-right:1px solid #676f72;
					border-bottom:1px solid #676f72;
				}
					ul.venue_screening_list {
						list-style:none;
						margin:0;
						padding:0;
						position:relative;
						border-top:1px solid #FFF;

						position:relative;
					}
						ul.venue_screening_list li {
							padding:5px 5px 0 5px;
							border-top:1px solid #676f72;
							border-bottom:1px solid #676f72;

							position:absolute;
							left:0;
							overflow-y:auto;
							overflow-x:hidden;
							_overflow:hidden;
						}
							ul.venue_screening_list li:hover {
								z-index:400;
							}
							ul.venue_screening_list li.selected {
								border-top:5px solid #000;
							}
							ul.venue_screening_list li ul {
								display:none;
							}
							ul.venue_screening_list li a {
								font-weight:bold;
								font-size:1.1em;
								text-decoration:none;
								color:#000;
							}
								ul.venue_screening_list li.selected a {
									border-bottom:2px solid #000;
								}
								ul.venue_screening_list li a.myfest,
								ul.venue_screening_list li a.buy {
									display:none;
								}



/*
 * TEMPLATE STRUCTURAL ELEMENTS AND ITEMS
 * Elements which define the overall layout of the site.
 * ------------------------------------------------------------------------- */
 div#page {
	width:968px;
}

div#header ul#nav_utility {
	width:958px;
}

div#header_main {
	width:948px;
	border:10px solid #fff;
	border-bottom:0;
}

div#header ul#nav_primary {
	width:948px;
	left:0;
	top:145px;
}
	div#header ul#nav_primary li#nav_main_schedule_fill {
		background-image:url('../../_img/nav/schedule_fill.gif');
		width:200px;
	}


div#header ul#nav_secondary {
	background:#6595B2 none repeat scroll 0%;
	float:left;
	font-size:0.9em;
	padding:20px 0pt 0pt;
	position:relative;
	top:-35px;
	width:948px;
	margin-top:-2px;
	border-top: solid 1px #fff;
}

div#header div#sub_nav {
	border-top: solid 1px #fff;
}

div#content div#primary {
				float:left;
				width:738px;
				padding:0 0 0 17px;
			}

/*
 * SCHEDULE
 * ------------------------------------------------------------------------- */
	div#schedule_wrapper {
        border: 0 none;
		width:1250px;
		margin:0 auto 1em auto;
	}


.list-detail {
    list-style: none;
    margin: 0;
}


.list-detail li {

    padding: 25px 20px;
    position: relative;
    border-bottom: 1px solid #ccc;
}
.list-detail--info {
    margin-bottom: 20px;
}
.list-detail li:nth-child(odd) {
    background-color: #FFF;
}
@media only screen and (min-width: 40.0625em) {
    .list-detail li .btn-accent {
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
        -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        right: 20px;
    }
    .list-detail--info {
        float: left;
        margin: 0;
    }
    .space-col-top {
        margin-top:48px;
    }
}

#schedule .links {
    float: right;
}

ul.venue_screening_list li .link-remove {
    text-decoration: underline;
    color: #008CBA;
    font-size: 12px;
    display: block;
}
ul.venue_screening_list li .info {
}
ul.venue_screening_list li h2 {
    line-height: 1;
    margin: 0;
}
ul#time_list {
    margin: 0;
}
ul#time_list li {
    text-align: center;
    line-height: 60px;
    color: #303030;
}
ul#time_list li:nth-child(odd) {
    background-color: #eaeaea;

}
ul.venue_screening_list li {
    width: 100% !important;
}
ul.venue_screening_list li h2 a {
    display: block;
    font-size: 12px;
    color: #303030;
    text-decoration: underline;
}
ul.venue_screening_list li .time {
    font-size: 12px;
}
ul.venue_screening_list li .cta {
    display: inline-block;
    background-color: #676f72;
    color: #FFF;
    padding: 2px 5px;
    margin-top: 0;
}
ul.venue_screening_list li a {
    text-decoration: underline;
    font-size: 12px;
}
ul.venue_screening_list li {
    font-size: 16px;
}

div#schedule_content h3 {
    background-color: #676f72;
    color: #FFF;
    border-color: #676f72;
    height: 60px;
    position: relative;
}
div#schedule_content h3 span {
    display: block;
    position: absolute;
    text-align: center;
    top: 50%;
    width: 100%;
    -webkit-transform: translateY(-50%);
    -moz-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
div.venue_column {
    border-color:  #676f72;
}
div#time_column {
    border-color:  #676f72;
}

.calendar-full {
    table-layout: fixed;
    width: 100%;
}
.calendar-full td {
    width: 14%;
    border-right:1px solid #DDD;
    word-break: break-all;
    position: relative;
    padding-top: 25px;

}
.calendar-full th {
    text-align: center;
}
.calendar-full td:last-child  {
    border-right: 0 none;
}
.calendar-full td a {
    display: inline-block;
    font-size: 16px;
}
.calendar-full td ul {
    list-style: none;
    margin: 0;
}
.calendar-full .date {
    position: absolute;
    top: 6px;
    left: 6px;
}
.calendar-full td h2 {
    line-height: 1;
    margin: 0;
}
.calendar-full td p {
    font-size: 13px;
}


/*
 * FESTIVAL CALENDAR GRID
 * ------------------------------------------------------------------------- */
div.schedule-locations{
	border-bottom:1px solid #d4d4d4;
	border-left:1px solid #d4d4d4;
	float:left;
	width:180px;
}
div.schedule-locations h3{font-size:14px;font-weight:bold;margin:0;}
div.schedule-locations div.venue h3{text-transform:uppercase;}
div.schedule-locations div.venue{border-top:1px solid #d4d4d4;display:table;height:50px;width:100%;}
div.schedule-locations div.location{border-top:1px solid #d4d4d4;display:table;height:81px;width:100%;}
div.schedule-locations div.venue h3,
div.schedule-locations div.location h3{display:table-cell;padding:0 15px;vertical-align:middle;}
div.schedule-locations div.location.tall{height:243px;}
div.schedule-locations div.location h3 a{color:#000;}
div.schedule-locations div.location h3 a:hover,
div.schedule-locations div.location h3 a:focus{color:#8dd0b8;}

div.schedule-frame{
	border-left:1px solid #d4d4d4;
	border-right:1px solid #d4d4d4;
	border-bottom:1px solid #d4d4d4;
	overflow:hidden;
	position:relative;
	margin:0 0 30px;
}
div.schedule-frame div.pager{border-bottom:0;border-top:0;margin:0;width:auto}
div.schedule-frame div.pager.bottom a.next{bottom:-1px;top:auto;}
div.schedule-frame div.pager.bottom a.prev{bottom:-1px;top:auto;}
div.schedule-frame div.pager a.prev,
div.schedule-frame div.pager a.next{
	background:#fff;
	border:none;
	display:block;
	font-size:30px;
	height:50px;
	line-height:40px;
	margin:0;
	position:absolute;
	text-align:center;
	top:1px;
	width:36px;
}
div.schedule-frame div.pager a.prev{border-right:1px solid #d4d4d4;left:0;}
div.schedule-frame div.pager a.next{border-left:1px solid #d4d4d4;right:0;}

div.schedule-frame div.schedule-table{width:2500px;}

div.schedule-frame div.timebar{
	border-top:1px solid #d4d4d4;
	height:50px;
	line-height:50px;
	overflow:hidden;
	padding-left:40px;
}
div.schedule-frame div.timebar span{
	float:left;
	display:block;
	margin:0 10px;
	font-weight:bold;
	width:100px;
}
div.schedule-frame div.row{
	border-top:1px solid #d4d4d4;
	height:81px;
	margin:0;
	overflow:hidden;
	position:relative;
}
div.schedule-frame div.row div.film{
	background:#f0f0f0;
	top:10px;
	padding:5px;
	position:absolute;
}

div.schedule-frame div.row div.film h3{font-size:12px;margin:0;white-space:nowrap;}
div.schedule-frame div.row div.film h3 a{color:#1c1c1c;}
div.schedule-frame div.row div.film p{font-size:11px;margin:0;}



div.schedule-frame div.row div.film.limited{background:#C9F5E6;}
div.schedule-frame div.row div.film.notavailable{background:#CDE693;}
div.schedule-frame div.row div.film.wishlist{background:#FDE6B2;}

div.schedule-key{font-size:14px;margin:0 0 15px;}
div.schedule-key span:first-child{margin-left:0;}
div.schedule-key span{margin:0 0 10px;position:relative;white-space:nowrap;}

div.schedule-key span.limited{border-left:5px solid #C9F5E6;padding-left:5px;}
div.schedule-key span.notavailable{border-left:5px solid #CDE693;padding-left:5px;}
div.schedule-key span.wishlist{border-left:5px solid #FDE6B2;padding-left:5px;}






/* Film detail Page */
.content-inner {
    padding: 40px 0;
}
@media (min-width: 768px) {
    .content-inner {
        padding: 60px 0;
    }
}
.hero {
    position: relative;
}
.play-btn {
    background: url('../img/play-btn.png') no-repeat center center transparent;
    background-size: cover;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    height: 50px;
    width: 50px;
}
.social-share {
    position: absolute;
    height: 55px;
    padding: 10px 0 10px 20px;
    bottom:  0;
    right: 15px;
    background-color: #f6f6f6;
    border: 1px solid #c9c9c9;
}
@media only screen and (min-width: 40.0625em) {
    .social-share {
        right: 25px;
    }
}
@media only screen and (min-width: 64.0625em) {
    .social-share {
        right: 50px;
        bottom:  -55px;
    }
}
@media only screen and (min-width: 90.0625em) {
    .social-share {
        right: 100px;
    }
}
.social-share > span {
    display: inline-block;
    vertical-align: middle;
    font-size: 14px;
    margin-right: 10px;
}
.titleBox {
    position: relative;
}
.heading-single {
    background-color: #FFF;
}
.heading-single h3 {
   padding: 0 20px;
}
@media only screen and (min-width: 64.0625em) {
    .heading-single h3 {
       width: calc(100% - 550px);
    }
}
@media only screen and (min-width: 90.0625em) {
    .heading-single h3 {
       width: calc(100% - 700px);
    }
}
@media only screen and (max-width: 40.0625em) {
    .space-top-mobile {
        padding-top: 100px;
    }
}

.heading-single h3::after{
    display: none;
}

.heading-single p {
    font-size: 14px;
    margin-bottom: 10px;
    color: #9da1a4;
}
.heading-single .directors {
    background: url("../img/icon-film.jpg") no-repeat 0 0;
    display: inline-block;
    padding: 0 30px;
}
.heading-single .categories {
    background: url("../img/icon-tags.jpg") no-repeat 0 0;
    display: inline-block;
    padding: 0 30px;
    position:relative;
    margin-bottom: 30px;
}
.heading-single .categories::after {
    width: 100%;
    background-color: #CCC;
    display: inline-block;
    height: 1px;
    content: '';
    position: absolute;
    bottom: -20px;
    right: 0;
    left: 0;
    margin: 0 auto;
    max-width: 350px;
}
.heading-single .categories a {
    color: #9da1a4;
}
.heading-single .categories a:hover {
    text-decoration: underline;
}
.heading-single .tags {
    color: #585c5d;
}
.heading-single .tags span {
    padding-right: 10px;
    display: inline-block;
    border-right: 1px solid #ee3342;
    margin-right: 10px;
    color: #585c5d;
    font-size: 14px;
}
.heading-single .tags span:last-child {
    border-right: 0 none;
}
.heading-single .tags a{
    font-size: 14px;
    margin-bottom: 10px;
    color: #585c5d;
}
.film-col-sidebar {
    background-color: #000000;
    color: #FFF;
    padding: 20px ;
}
.film-col-sidebar ul,
.film-col-sidebar li {
    list-style: none;
    margin: 0;
    font-size: 14px;
}
.film-col-sidebar li {
    margin-bottom: 15px;
}
.film-col-sidebar a {
    border-bottom: 2px solid #ee3342;
    color: #FFF;
    margin-left: 10px;
    display: inline-block;
}
.film-col-sidebar h4 {
    color: #98a0a3;
    margin-bottom: 20px;
}
.film-col-sidebar p {
    color: #f6f6f6;
}
.film-info {
    border: 1px solid #d3d3d3;
    padding: 30px 20px;
}
.white-popup {
    background-color: #FFF;
    margin: 0 auto;
    max-width: 768px;
    position: relative;
    padding: 0;
}
@media (min-width: 641px) {
    .white-popup {
        padding: 40px;
    }
}

.white-popup-content{
    position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
	height: 0;
}
.white-popup iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.card-horizontal {
    background-color: #FFF;
    border: 1px solid #d3d3d3;
    padding: 10px;
    margin-bottom: 20px;
}
    .card-horizontal .thumb {

        max-width: 170px;
        margin-right: 10px;


    }
    @media (min-width: 641px) {
        .card-horizontal .thumb {

            float: left;
        }
        .card-horizontal .text {
            float: left;
            width: calc(100% - 170px);
        }
    }
    @media (max-width: 640px) {
         .card-horizontal .thumb {
             max-width: 100%;
         }
        .card-horizontal .thumb a,
        .card-horizontal .thumb a img {
            display: block;
            width: 100%;
        }
    }


.card-horizontal .text .title {
    margin-bottom: 5px;
}
.card-horizontal .text .title a {
    font: 18px "Source Sans Pro", sans-serif;
    color: #000;
}
.card-horizontal .text p {
    font-size: 14px;
    margin-bottom: 0;
}
.card-horizontal .tags {
    font-size: 13px;
    margin-bottom: 10px;
}
.card-horizontal .tags span {
    padding-right: 10px;
    display: inline-block;
    border-right: 1px solid #ffd80b;
    margin-right: 10px;
}
.card-horizontal .tags span:last-child {
    border-right: 0 none;
}
@media (min-width: 768px) {
}


.feature-review {
    background-color: #f6f6f6;
    padding: 40px 0;
}
.feature-review figure {
    padding: 10px;
    border: 1px solid #d3d3d3;
    background-color: #FFF;
}
.feature-review blockquote {
    position: relative;
    border: 0 none;
    padding-left: 60px;
}
.feature-review blockquote::after {
    content: '“';
    display: block;
    position: absolute;
    top: -30px;
    color: #ffd80b;
    font-size: 120px;
    left: 0px;
    line-height: 1;
    height: 60px;
    width: 60px;
}
.feature-review blockquote p {
    font-size: 20px;
    font-style: italic;
    line-height: 1.6;
}
.feature-review cite {
    font-style: normal;
    font-size: 16px;
}
.feature-review cite span {
    border-right: 2px solid #ffd80b;
    padding-right: 10px;
    margin-right: 10px;
    display: inline-block;
}


.card {
    padding: 10px;
    background-color: #FFF;
    border: 1px solid #d4d4d4;
    margin-bottom: 20px;
}
.columns + .columns:last-child {
    float: left;
}
@media (min-width: 641px) {
    .wrapper-cards .columns:nth-child(3n+1) {
        clear: both;
    }

}
.card img {
    width: 100%;
    margin-bottom: 20px;
}

.card h2 {
    margin:0 0 10px;
    line-height: 1;
    font-size: 14px;
}
.card h2 a {
    font: 20px "Source Sans Pro", sans-serif;
    color: #000;
}

.card p {
    font-size: 14px;
    margin-bottom: 10px;
}
.card .tags {
    margin-bottom: 10px;
    font-size: 14px;
}

.card .tags span {
    display: inline-block;
    padding-right: 10px;
    margin-right: 10px;
    border-right: 2px solid #ffd80b;
}
.card .tags span:last-child {
    margin-right: 0;
    border: 0 none;
    padding-right: 0;
}
.card .genres {
    background: url("../img/icon-tags.jpg") no-repeat 0 0;
    font-size: 14px;
    padding-left: 25px;
    margin-bottom: 20px;
}

.pop_tooltip_content {
    background:	url(../../assets/img/header_bg.gif);
    border: 4px solid #FFF;
    color: #666;
    left: 0;
    padding: 10px;
    position: fixed;
    top: 0;
    white-space: normal;
    width: 380px;
    z-index: 501;
}

@media print {
    header,
    footer,
    .no-print {
        display: none;
    }
    .calendar-full {
        margin: 0;
    }
    .calendar-full td a {
        font-size: 13px;
    }
    .calendar-full
    a[href]:after {
        content: none !important;
    }

     @page { margin: 0; }
}
