/*
 *  =============================================================================
 *  CONTAINERS ==================================================================
 *  =============================================================================
*/

section {
  width: 100%;
  display: block;
  padding: 80px 0px;
  box-sizing: border-box;
}
section#sponsorship {
  background: #FAFAFA;
}

/*
 *
 *  Content Slots
 *
*/
.content-slot {
  position: relative; 
  height: auto;
  overflow: hidden; 
  *zoom: 1;
  background-size: cover; 
  background-position: center center;
  box-sizing: border-box;
}
.content-slot.height-matches-window {
  min-height: auto;
}
.content-slot.fixed-height {
  min-height: 1200px;
}

#wrapper,
.content-asset,
.content-page,
.content-slot,
.content-slot img {
  max-width: 100%;
}


/*
 *  =============================================================================
 *  TEXT ========================================================================
 *  =============================================================================
*/

.page-title {
  width: 800px;
  position: absolute;
  top: 50%;
  left: 50%;
  -moz-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  box-sizing: border-box;
  /*padding: 0 40px;*/
}
  .page-title h1 {
    font-size: 56px;
    text-align: center;
    font-family: "Chronicle Display A","Chronicle Display B";
    font-style: normal;
    font-weight: 200;
    color: #fff;
    letter-spacing: 1px;
    line-height: 1;
    padding-bottom: 26px;
  }
  .page-title p {
    font-size: 21px;
    line-height: 1.7;
    font-family: "Chronicle Display A","Chronicle Display B";
    font-style: normal;
    font-weight: 200;
    color: #fff;
    text-align: center;
    margin-top: 0px;
  }


h3.section-name {
  width: 800px;
  font-size: 16px;
  color: #0E0E0E;
  font-family:'NHaasGroteskTXW01-65Md';
  text-align: center;
  text-transform: uppercase;
  margin: 0 auto 50px;
  letter-spacing: 1px;
}

h2.section-title {
  width: 800px;
  margin: 0 auto 22px;
  font-size: 56px;
  line-height: 1;
  color: #0E0E0E;
  text-align: center;
  font-family: "Chronicle Display A", "Chronicle Display B";
  font-weight: lighter;
}

p.section-description {
  width: 800px;
  font-size: 16px;
  line-height: 28px;
  color: #0E0E0E;
  text-align: center;
  /*font-family: 'NHaasGroteskTXStd-55Rg';*/
  font-family: 'NeueHaasGroteskText W01';
  margin: 0px auto 50px;
}




/*
 *  =============================================================================
 *  MODULES =====================================================================
 *  =============================================================================
*/


/*
 *
 *  Gallery Switch
 *
*/

#on-set .gallery-switch {
  box-sizing: border-box;
  height: 91px;
  margin: 0 auto;
  max-width: 1440px;
  min-width: 250px;
  position: relative;
  width: 100%;
  border-bottom: 1px solid #e0e0e0;
  border-top: 1px solid #e0e0e0;
}
  #on-set .gallery-switch ul {
    box-sizing: border-box;
    display: block;
    height: 100%;
    list-style: none;
    margin: 0 auto;
    width: 345px;
  }
    #on-set .gallery-switch ul li {
      display: table;
      float: left;
      height: 100%;
      position: relative;
      text-align: center;
      width: 40%;
    }
    #on-set .gallery-switch ul li:first-child {
      width: 60%;
    }
      #on-set .gallery-switch ul li a {
        display: table-cell;
        vertical-align: middle;
        color: #B0B0B0;
        text-transform: uppercase;
        font-size: 12px;
        letter-spacing: 1px;
        font-family:'NHaasGroteskTXW01-65Md';
      }
      #on-set .gallery-switch ul li a:hover,
      #on-set .gallery-switch ul li a.active {
        color: #0E0E0E;
      }
      #on-set .gallery-switch ul li a:focus {
        outline: none;
      }



/*
 *
 *  Gallery
 *
*/

.content-slot .gallery {
  display: none;
}

.content-slot #sponsorship-gallery.gallery {
  margin-top: 85px;
}







ul.sponsor-logos {
  margin: 93px auto 13px;
  min-width: 250px;
  width: 855px;
  height: 82px;
  list-style: none;
}
  ul.sponsor-logos li {
    float: left;
    box-sizing: border-box;
    position: relative;
    color: #C5C5C5;
    height: 100%;
    width: 33.33%;
  }
   /* ul.sponsor-logos li#ifb {
      width: 185px;
      margin-right: 70px;
    }
    ul.sponsor-logos li#sundance {
      width: 90px;
      margin-right: 70px;
    }
    ul.sponsor-logos li#tiff {
      width: 95px;
      margin-right: 70px;
    }
    ul.sponsor-logos li#busan {
      width: 273px;
      margin-right: 0px;
    }*/
    /*ul.sponsor-logos li a {
      display: block;
      width: 100%;
      height: 100%;
      position: relative;
    }*/
      ul.sponsor-logos li img {
        max-width: 100%!important;
        display: block;
        position: absolute;
        left: 50%;
        top: 50%;
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        opacity: 0.3;
        mix-blend-mode: luminosity;
        fill: currentColor;
        /*transition: opacity 0.2s, cubic-bezier(0.39, 0.575, 0.565, 1);*/
      }
      /*ul.sponsor-logos li a:hover img {
        opacity: 0.5;
        transition: opacity 0.2s, cubic-bezier(0.39, 0.575, 0.565, 1);
      }*/



/*
 *  =============================================================================
 *  BREAKPOINTS =================================================================
 *  =============================================================================
*/


/*
 *
 *  extra-large up to infinity
 *
*/
@media all and (min-width: 1441px) {}


/*
 *
 *  large down to infinity 
 *
*/
@media all and (max-width: 1440px) {}


/*
 *
 *  large
 *
*/
@media all and (min-width: 1025px)  and (max-width: 1440px) {}


/*
 *
 *  medium up to infinity
 *
*/
@media all and (min-width: 1025px) {
  .content-slot {
    padding-left: 15px;
    padding-right: 15px;
  }
}


/*
 *
 *  medium down to infinity
 *
*/
@media all and (max-width: 1024px) {

  .page-title {
    width: 100%;
    max-width: 700px;
  }
    .page-title h1 {
      font-size: 48px;
      padding-bottom: 15px;
    }
    .page-title p {
      font-size: 21px;
      line-height: 1.4;
    }
  section {
    padding: 120px 40px;
  }
  h2.section-title {
    width: 100%;
    max-width: 700px;
    font-size: 48px;
    margin: 0 auto 34px;
  }
  h3.section-name { 
    width: 100%;
    max-width: 700px;
    margin: 0px auto 30px;
  }
  p.section-description {
    width: 100%;
    max-width: 700px;
    margin: 0px auto 45px;
  }
  #on-set .gallery-switch ul {
    width: 275px;
  }
  .content-slot .gallery {
    padding-left: 0%;
    padding-right: 0%;
  }
  .content-slot #sponsorship-gallery.gallery {
    margin-top: 80px;
  }

  ul.sponsor-logos {
    width: 655px;
    height: 65px;
    margin: 75px auto 0px;
  }
  
}


/*
 *
 *  medium
 *
*/
@media all and (min-width: 769px) and (max-width: 1024px) {}


/*
 *
 *  small down to infinity
 *
*/
@media all and (max-width: 768px) {
  .main-slot.content-slot {
    background-position: 25% 0;
  }

  .page-title {
    width: 100%;
    max-width: 640px;
    padding: 0 24px;
  }
    .page-title h1 {
      padding-bottom: 20px;
    }
  section {
    padding-top: 100px;
    padding-bottom: 100px;
  }
  h3.section-name { 
    width: 100%;
    max-width: 640px;
    margin: 0px auto 30px;
  }
  h2.section-title {
    width: 100%;
    max-width: 640px;
  }
  p.section-description {
    width: 100%;
    max-width: 640px;
  }

  #on-set .gallery-switch {
    padding-left: 0%;
    padding-right: 0%;
  }
    #on-set .gallery-switch ul {
      
    }
      #on-set .gallery-switch ul li {

      }
  .content-slot .gallery {
    padding-bottom: 30px;
    margin: 80px auto 10px;
  }
  .content-slot #sponsorship-gallery.gallery {
    margin-top: 60px;
  }
  .content-slot .gallery ul.gallery-images li .description p {
    max-width: 640px;
    width: 90%;
  }
  .content-slot .gallery ul.gallery-control {
    bottom: -10px;
  }

  ul.sponsor-logos {
    width: 80.9%;
    height: 50px;
    max-width: 555px;
    margin: 55px auto 0px;
  }
}


@media all and (max-width: 650px) {
  #on-set .gallery-switch ul {
    
  }
  .content-slot .gallery ul.gallery-images li .description p {
    bottom: 20px;
  }
}

/*
 *
 *  extra small down to infinity
 *
*/
@media all and (max-width: 480px) {
  ul.sponsor-logos {
    width: 100%;
    height: 34px;
    margin: 0px auto;
  }
  ul.sponsor-logos li {
    width: 27%;
    margin: 0 3%;
  }

}

@media all and (max-width: 375px) {
  section {
    padding: 80px 24px;
  }
  #film-main-slot {
    padding-left: 24px;
    padding-right: 24px;
  }
  .page-title {
    width: 100%;
    max-width: 100%;
    padding: 0px 24px;
  }
  .page-title h1 {
    font-size: 32px;
    line-height: 1.2;
    padding-bottom: 7px;
  }
  .page-title p {
    font-size: 17px;
    line-height: 1.55;
  }
  
  h2.section-title {
    width: 100%;
    max-width: 100%;
    font-size: 36px;
    margin: 0 auto 20px;
  }
  h3.section-name { 
    max-width: 100%;
    width: 100%;
    margin: 0px auto 30px;
  }
  p.section-description {
    width: 100%;
    max-width: 100%;
    font-size: 14px;
    margin: 0 auto 35px;
  }
  #on-set .gallery-switch ul {
    width: 260px;
  }
    #on-set .gallery-switch ul li {

    }
  .content-slot .gallery {
    
  }
  .content-slot #sponsorship-gallery.gallery {
    margin-top: 40px;
  }
  .content-slot .gallery ul.gallery-images {
    overflow: visible;
  }
  .content-slot .gallery ul.gallery-images li {

  }
  .content-slot .gallery ul.gallery-images li.active {
    height: auto;
    padding-bottom: 70px;
  }
  .content-slot .gallery ul.gallery-images li .description {
    background: none;
    max-width: 280px;
    height: auto;
    position: absolute;
    top: 112%;
    bottom: auto; 
    left: 50%;
    -moz-transform: translate(-50%, 0%);
    -ms-transform: translate(-50%, 0%);
    -webkit-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
  }
    .content-slot .gallery ul.gallery-images li .description p {
      /*font-size: 12px;*/
      font-size: 0.9em;
      color: #999999;
      top: 0px;
      margin-top: 0px;
      bottom: auto;
      position: relative;
    }
}



