/*
   SPACERS
*/
.verticalSpacer10{ height: 10px; }

.verticalSpacer30{ height: 30px; }

.verticalSpacer60{ height: 60px; }

.verticalSpacer90{ height: 90px; }



/*
   ANIMATIONS
*/
.opacityAnimation{
   opacity: 0;
   -webkit-transition: opacity 0.25s ease-out;
   transition: opacity 0.25s ease-out;
}



/*
   PAGE TITLE
*/
.pageTitle{
   text-align: center;
   font-family: 'FreeSans';
   font-weight: normal;
   font-style: normal;
   font-size: 25px;
   text-transform: uppercase;
}

.pageTitle span{
   display: inline-block;
   padding: 0 8px 8px 8px;
   border-bottom: #000000 1px solid;
}
.OFF .pageTitle span{ border-bottom: #ffffff 1px solid; }
.pageTitle span.red{ color: #ff1f1f; }

.pageTitleDate{
   text-align: center;
   font-family: 'FreeSans';
   font-weight: normal;
   font-style: normal;
   font-size: 25px;
   text-transform: uppercase;
}

.pageTitleAuthor{
   text-align: center;
   font-family: 'FreeSans';
   font-weight: normal;
   font-style: normal;
   font-size: 25px;
   text-transform: none;
}

.pageTitleAuthor span{
   display: inline-block;
   padding: 15px 8px 8px 8px;
}

.pageSubTitle{
   font-family: 'FreeSans';
   font-weight: normal;
   font-style: normal;
   font-size: 20px;
   color: #000000;
   text-transform: uppercase;
   padding: 20px 0 20px 0;
}
.OFF .pageSubTitle{ color: #ffffff; }
.pageSubTitle.red{ color: #ff1f1f; }



/*
   MULTI LINE TEXT
*/
.multiLineText{
}

.multiLineText a{
   text-decoration: underline;
   cursor: pointer;
}

.multiLineText .underline{ text-decoration: underline }
.multiLineText .red{ color: #ff1f1f; }



/*
   CALENDAR
*/
.calendar{
   position: relative;
   width: 100%;
   max-width: 360px;
   border: #000000 1px solid;
   font-family: 'FreeSans';
   font-weight: normal;
   font-style: normal;
   font-size: 20px;
   margin: auto;
}
.OFF .calendar{ border: #ffffff 1px solid; }

.calendar .content{
   position: relative;
   width: 270px;
   padding: 0 0 12px 0;
   margin: auto;
}

.calendar .topLine{
   position: relative;
   height: 55px;
   width: 100%;
   text-align: center;
   line-height: 55px;
   text-transform: uppercase;
}

.calendar .topLine .arrow{
   position: absolute;
   top: 0;
   bottom: 0;
   width: 47px;
   cursor: pointer;
   background-size: contain;
   background-repeat: no-repeat;
}

.calendar .topLine .arrow.leftArrow{
   left: 0;
   background-position: left center;
   background-image: url("../images/left_arrow_black.svg");
}
.OFF .calendar .topLine .arrow.leftArrow{ background-image: url("../images/left_arrow_white.svg") }

.calendar .topLine .arrow.rightArrow{
   right: 0;
   background-position: right center;
   background-image: url("../images/right_arrow_black.svg");
}
.OFF .calendar .topLine .arrow.rightArrow{ background-image: url("../images/right_arrow_white.svg") }

.calendar .dayContainer{
   position: relative;
   width: 100%;
   line-height: 28px;
}

.calendar .dayContainer span{
   display: inline-block;
   width: 41px;
   text-align: center;
}
.calendar .dayContainer span.first{
   text-align: left;
   width: 32px;
}
.calendar .dayContainer span.last{
   font-weight: bold;
   text-align: right;
   width: 32px;
}



/*
   CALENDAR LIST
*/
.calenderList{
   position: relative;
   width: 100%;
}

/* ITEM */
.calenderList .calendarItem{
   position: relative;
   color: #000000;
   text-transform: uppercase;
   border-bottom: #000000 1px solid;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
}
.calenderList .calendarItem.black,
.OFF .calenderList .calendarItem{
   color: #ffffff;
   background: #000000;
   border-bottom: #ffffff 1px solid;
}

.calenderList .calendarItem .dayInWeek{
   position: absolute;
   top: 8px;
   left: 10px;
   font-size: 11px;
   line-height: 10px;
}

.calenderList .calendarItem .dayInMonth{
   position: absolute;
   top: 0;
   left: 35px;
   font-size: 60px;
   line-height: 60px;
}
.EXTRA_SMALL .calenderList .calendarItem .dayInMonth{
   font-size: 50px;
   line-height: 50px;
}

.calenderList .calendarItem .month{
   position: absolute;
   top: 8px;
   left: 111px;
   font-size: 11px;
   line-height: 11px;
   text-transform: none;
}
.calenderList .calendarItem .month:first-letter{ text-transform: uppercase; }

.calenderList .calendarItem .time{
   position: absolute;
   top: 25px;
   left: 111px;
   font-size: 11px;
   line-height: 11px;
}

.calenderList .calendarItem .name{
   font-size: 20px;
   padding-top: 6px;
   padding-right: 105px;
   padding-bottom: 5px;
   padding-left: 165px;
   min-height: 61px;
}
.EXTRA_SMALL .calenderList .calendarItem .name{
   padding-top: 60px;
   padding-right: 10px;
   padding-left: 10px;
}

.calenderList .calendarItem .name a,
.calenderList .calendarItem .name .title{
   font-size: 20px;
   color: #000000;
   display: block;
   padding-bottom: 3px;
}
.calenderList .calendarItem.black .name a,
.OFF .calenderList .calendarItem .name a,
.OFF .calenderList .calendarItem .name .title{ color: #ffffff }
.calenderList .calendarItem .name a.red{ color: #FF0302; }

.calenderList .calendarItem .name .author{
   text-transform: none;
   display: block;
}

.calenderList .calendarItem .name .note{
   text-transform: none;
   font-size: 11px;
   display: block;
}

.calenderList .calendarItem .tickets{
   position: absolute;
   top: 5px;
   right: 5px;
   text-align: right;
   line-height: 11px;
}
.calenderList .calendarItem .tickets a{
   color: #000000;
   font-size: 14px;
   line-height: 14px;
   display: inline-block;
   padding: 8px 8px 6px 8px;
   background: #FFF2BD;
   text-decoration: none;
}
.calenderList .calendarItem .tickets a:hover{
   background: #000000;
   color: #FFF2BD;
   text-decoration: none;
}
.calenderList .calendarItem .tickets.full a{
   color: #ff1f1f;
   font-size: 11px;
   background: none;
}

.calenderList .calendarItem .tickets .freeNote{
   color: #ff1f1f;
   font-size: 11px;
   padding: 8px 8px 6px 8px;
}

/* COMPLETE LINK */
.calenderList .completeProgram{
   text-align: center;
   padding-top: 30px;
   padding-right: 15px;
   padding-bottom: 20px;
   padding-left: 15px;
   border-bottom: #000000 1px solid;
}
.OFF .calenderList .completeProgram{ border-bottom: #ffffff 1px solid; }



/*
   CALENDAR SUB-INFO
*/
.calendarSubInfo{
   text-align: center;
   padding: 20px 0 0 0;
   display: none;
   font-weight: bold;
   text-transform: uppercase;
}
.calendarSubInfo.visible{ display: block }



/*
   SUB-MENU VERTICAL
*/
.submenuVertical{
   position: relative;
   width: 100%;
   text-align: center;
}
.submenuVertical .item {
   padding-bottom: 12px;
}

.submenuVertical a{
   display: inline-block;
   text-transform: uppercase;
   font-size: 20px;
   line-height: 22px;
   font-weight: normal;
   font-style: normal;
   padding: 0 5px 4px 5px;
   text-decoration: none;
   cursor: pointer;
   border-bottom: #ffffff 1px solid;
}
.OFF .submenuVertical a{ border-bottom: #000000 1px solid; }
.submenuVertical a:hover,
.submenuVertical a.selected{
   border-bottom: #000000 1px solid;
   text-decoration: none;
}
.OFF .submenuVertical a:hover,
.OFF .submenuVertical a.selected{ border-bottom: #ffffff 1px solid; }



/*
   SUB-MENU 3
*/
.submenu3{
   position: relative;
   width: 100%;
   height: 36px;
}
.MOBILE .submenu3{ height: auto; }

.submenu3 .item{
   position: absolute;
   top: 4px;
   display: block;
}
.submenu3 .item.item1{ left: 15%; }
.submenu3 .item.item2{
   left: 50%;
   -ms-transform: translateX(-50%);
   -webkit-transform: translateX(-50%);
   transform: translateX(-50%);
}
.submenu3 .item.item3{ right: 15%; }
.MOBILE .submenu3 .item{
   top: 0;
   left: 0;
   position: relative;
   -ms-transform: none;
   -webkit-transform: none;
   transform: none;
   margin: 0 0 15px 0;
}

.submenu3 a{
   display: inline-block;
   text-transform: uppercase;
   font-size: 20px;
   line-height: 22px;
   font-weight: normal;
   font-style: normal;
   padding: 0 5px 4px 5px;
   text-decoration: none;
   cursor: pointer;
   border-bottom: #ffffff 1px solid;
}
.OFF .submenu3 a{ border-bottom: #000000 1px solid; }
.submenu3 a:hover,
.submenu3 a.selected{
   border-bottom: #000000 1px solid;
   text-decoration: none;
}
.OFF .submenu3 a:hover,
.OFF .submenu3 a.selected{ border-bottom: #ffffff 1px solid; }



/*
   SUB-MENU 4
*/
.submenu4{
   position: relative;
   width: 100%;
   height: 36px;
}
.MOBILE .submenu4{ height: auto; }

.submenu4 .item{
   position: absolute;
   top: 4px;
   display: block;
}
.submenu4 .item.item1{ left: 5%; }
.submenu4 .item.item2{
   left: 35%;
   -ms-transform: translateX(-50%);
   -webkit-transform: translateX(-50%);
   transform: translateX(-50%);
}
.submenu4 .item.item3{
   right: 35%;
   -ms-transform: translateX(-50%);
   -webkit-transform: translateX(-50%);
   transform: translateX(-50%);
}
.submenu4 .item.item4{ right: 5%; }
.MOBILE .submenu4 .item{
   top: 0;
   left: 0;
   position: relative;
   -ms-transform: none;
   -webkit-transform: none;
   transform: none;
   margin: 0 0 15px 0;
}

.submenu4 a{
   display: inline-block;
   text-transform: uppercase;
   font-size: 20px;
   line-height: 22px;
   font-weight: normal;
   font-style: normal;
   padding: 0 5px 4px 5px;
   text-decoration: none;
   cursor: pointer;
   border-bottom: #ffffff 1px solid;
}
.OFF .submenu4 a{ border-bottom: #000000 1px solid; }
.submenu4 a:hover,
.submenu4 a.selected{
   border-bottom: #000000 1px solid;
   text-decoration: none;
}
.OFF .submenu4 a:hover,
.OFF .submenu4 a.selected{ border-bottom: #ffffff 1px solid; }



/*
   SUB-MENU 5
*/
.submenu5{
   position: relative;
   width: 100%;
   height: 36px;
}
.MOBILE .submenu5{ height: auto; }

.submenu5 .item{
   position: absolute;
   top: 4px;
   display: block;
}
.submenu5 .item.item1{ left: 5%; }
.submenu5 .item.item2{
   left: 30%;
   -ms-transform: translateX(-50%);
   -webkit-transform: translateX(-50%);
   transform: translateX(-50%);
}
.submenu5 .item.item3{
   left: 50%;
   -ms-transform: translateX(-50%);
   -webkit-transform: translateX(-50%);
   transform: translateX(-50%);
}
.submenu5 .item.item4{
   right: 30%;
   -ms-transform: translateX(50%);
   -webkit-transform: translateX(50%);
   transform: translateX(50%);
}
.submenu5 .item.item5{ right: 5%; }
.MOBILE .submenu5 .item{
   top: 0;
   left: 0;
   position: relative;
   -ms-transform: none;
   -webkit-transform: none;
   transform: none;
   margin: 0 0 15px 0;
}

.submenu5 a{
   display: inline-block;
   text-transform: uppercase;
   font-size: 20px;
   line-height: 22px;
   font-weight: normal;
   font-style: normal;
   padding: 0 5px 4px 5px;
   text-decoration: none;
   cursor: pointer;
   border-bottom: #ffffff 1px solid;
}
.OFF .submenu5 a{ border-bottom: #000000 1px solid; }
.submenu5 a:hover,
.submenu5 a.selected{
   border-bottom: #000000 1px solid;
   text-decoration: none;
}
.OFF .submenu5 a:hover,
.OFF .submenu5 a.selected{ border-bottom: #ffffff 1px solid; }



/*
   SUB-MENU 6
*/
.submenu6{
   position: relative;
   width: 100%;
   height: 36px;
}
.MOBILE .submenu6{ height: auto; }

.submenu6 .item{
   position: absolute;
   top: 4px;
   display: block;
}
.submenu6 .item.item1{ left: 0; }
.submenu6 .item.item2{
   left: 22%;
   -ms-transform: translateX(-50%);
   -webkit-transform: translateX(-50%);
   transform: translateX(-50%);
}
.submenu6 .item.item3{
   left: 42%;
   -ms-transform: translateX(-50%);
   -webkit-transform: translateX(-50%);
   transform: translateX(-50%);
}
.submenu6 .item.item4{
   right: 42%;
   -ms-transform: translateX(50%);
   -webkit-transform: translateX(50%);
   transform: translateX(50%);
}
.submenu6 .item.item5{
   right: 22%;
   -ms-transform: translateX(50%);
   -webkit-transform: translateX(50%);
   transform: translateX(50%);
}
.submenu6 .item.item6{ right: 0; }
.MOBILE .submenu6 .item{
   top: 0;
   left: 0;
   position: relative;
   -ms-transform: none;
   -webkit-transform: none;
   transform: none;
   margin: 0 0 15px 0;
}

.submenu6 a{
   display: inline-block;
   text-transform: uppercase;
   font-size: 20px;
   line-height: 22px;
   font-weight: normal;
   font-style: normal;
   padding: 0 5px 4px 5px;
   text-decoration: none;
   cursor: pointer;
   border-bottom: #ffffff 1px solid;
}
.OFF .submenu6 a{ border-bottom: #000000 1px solid; }
.submenu6 a:hover,
.submenu6 a.selected{
   border-bottom: #000000 1px solid;
   text-decoration: none;
}
.OFF .submenu6 a:hover,
.OFF .submenu6 a.selected{ border-bottom: #ffffff 1px solid; }



/*
   HORIZONTAL BANNER LIST
*/
.horizontalBannerList{
   position: relative;
   width: 100%;
   padding-top: 56%;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
}

.horizontalBannerList .arrow{
   position: absolute;
   top: 0;
   bottom: 0;
   width: 10%;
   max-width: 30px;
   cursor: pointer;
   background-repeat: no-repeat;
   background-size: contain;
}
.horizontalBannerList .arrow.left{
   left: 0;
   width: 10%;
   -ms-transform: translateX(-115%);
   -webkit-transform: translateX(-115%);
   transform: translateX(-115%);
   background-position: left center;
   background-image: url("../images/left_arrow_big_black.svg");
}
.OFF .horizontalBannerList .arrow.left{ background-image: url("../images/left_arrow_big_white.svg"); }
.horizontalBannerList .arrow.right{
   right: 0;
   -ms-transform: translateX(115%);
   -webkit-transform: translateX(115%);
   transform: translateX(115%);
   background-position: right center;
   background-image: url("../images/right_arrow_big_black.svg");
}
.OFF .horizontalBannerList .arrow.right{ background-image: url("../images/right_arrow_big_white.svg"); }

.horizontalBannerList .bannersContainer{
   position: absolute;
   overflow: hidden;
   top: 0;
   bottom: 0;
   left: 0;
   right: 0;
}



/*
   BANNER
*/
.banner{
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   background-position: center center;
   background-repeat: no-repeat;
   background-size: cover;
   background-color: #000000;
   -webkit-transition: -webkit-transform 0.35s ease-out;
   transition: transform 0.35s ease-out;
}
.banner.youtube{ cursor: pointer; }

.banner.youtube::after{
   content: "";
   position: absolute;
   background: url('../images/play.svg') no-repeat center center;
   width: 82px;
   height: 82px;
   margin: auto;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   opacity: 0.95;
}

.banner.youtube iframe{
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   z-index: 10;
}

.banner.link{ cursor: pointer; }



/*
   VERTICAL LIST
*/
.verticalList{ }

.verticalList .listItem{
   padding: 0 0 6px 0;
}

.verticalList .listItem a,
.verticalList .listItem span{
   display: inline-block;
   text-transform: uppercase;
   font-size: 20px;
   line-height: 22px;
   font-weight: normal;
   font-style: normal;
   padding: 0 5px 0 5px;
   text-decoration: none;
   cursor: pointer;
   border-bottom: #ffffff 1px solid;
}
.OFF .verticalList .listItem span{ border-bottom: #000000 1px solid; }
.verticalList .listItem a:hover{
   border-bottom: #000000 1px solid;
   text-decoration: none;
}
.OFF .verticalList .listItem a:hover{ border-bottom: #ffffff 1px solid }
.verticalList .listItem span{ cursor: default; }



/*
   LOGOS LINE
*/
.logosLine {
   position: relative;
   width: 100%;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   display: -webkit-flex;
   display: flex;
   -webkit-flex-direction: row;
   flex-direction: row;
   -webkit-flex-wrap: wrap;
   flex-wrap: wrap;
   -webkit-align-items: center;
   align-items: center;
   align-content: flex-start;
   -webkit-align-content: flex-start;
}
.logosLine .logo{
   position: relative;
   width: 120px;
   height: 120px;
   background-position: center center;
   background-repeat: no-repeat;
   background-size: 90%;
   margin: 8px;
   border: 1px solid #eeeeee;
   cursor: pointer;
}



/*
   PHOTO PREVIEW
*/
.photoPreviewContainer{
   position: relative;
   width: 100%;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
}

.photoPreviewContainer .photoPreview{
   position: relative;
   width: 100%;
   overflow: hidden;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   line-height: 0;
   text-align: right;
}
.photoPreviewContainer .photoPreview.youtube{ cursor: pointer; }

.photoPreviewContainer .photoPreview .photoPreviewImageContainer{
   position: relative;
   display: inline-block;
   max-width: 100%;
}

.photoPreviewContainer .photoPreview.youtube .photoPreviewImageContainer::after{
   content: "";
   position: absolute;
   background: url('../images/play.svg') no-repeat center center;
   width: 82px;
   height: 82px;
   margin: auto;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   opacity: 0.95;
}

.photoPreviewContainer .photoPreview .photoPreviewImageContainer img.photoPreviewImage{
   position: relative;
   max-width: 100%;
}

.photoPreviewContainer .photoPreview.youtube iframe{
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   z-index: 10;
}

.photoPreviewContainer .photoPreview.link{ cursor: pointer; }

.photoPreviewContainer .photoDescription{
   position: relative;
   width: 100%;
   text-align: right;
   font-size: 10px;
   color: #707070;
}

.photoPreviewContainer .photoTitle{
   position: relative;
   width: 100%;
   text-align: center;
   color: #000000;
   padding: 10px 0 0 0;
   font-size: 20px;
   text-transform: uppercase;
}
.OFF .photoPreviewContainer .photoTitle{ color: #ffffff; }



/*
   PRODUCTION PREVIEW
*/
.productionPreview{
   padding-top: 30px;
   padding-right: 10px;
   padding-bottom: 30px;
   padding-left: 10px;
   border-bottom: #000000 1px solid;
}
.OFF .productionPreview{ border-bottom: #ffffff 1px solid; }
.productionPreview:last-child{ border-bottom: none; }

.productionPreview .ts_subTitle{ max-width: 75%; }

.productionPreview .ts_multiLineFreeText{ padding-top: 25px; }
.MOBILE .productionPreview .ts_multiLineFreeText{ padding-bottom: 25px; }

.productionPreview .moreLink{ padding-top: 25px; }
.MOBILE .productionPreview .moreLink{
   padding-top: 0;
   padding-bottom: 25px;
}

/* TEMP */
.productionPreview .preview{
   position: relative;
   width: 100%;
   padding-top: 56%;
   background: #000000;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
}



/*
   BACK BUTTON
*/
.backButton{
   text-align: center;
   font-size: 20px;
}



/*
   SCROLL TO BUTTON
*/
.scrollToButton{
   text-align: center;
   font-size: 20px;
}



/*
   ENUM LIST
*/
.enumList{
   width: 100%;
   padding: 50px 0 0 0;
   position: relative;
}
.enumList.noTopSpace{ padding: 0; }

.enumList .title{
   position: relative;
   font-size: 15px;
   text-align: center;
   text-transform: uppercase;
   padding: 0 0 15px 0;
   border-bottom: #000000 1px solid;
}
.OFF .enumList .title{ border-bottom: #ffffff 1px solid; }

.enumList .title .basketIcon{
   position: absolute;
   right: 10px;
   top: -7px;
   width: 40px;
   height: 27px;
   background: url("../images/basket_black.svg") no-repeat center center;
   background-size: contain;
}
.OFF .enumList .title .basketIcon{ background: url("../images/basket_white.svg") no-repeat center center; }

.enumList .line{
   border-bottom: #000000 1px solid;
   padding: 3px 10px 3px 10px;
   text-transform: uppercase;
   font-size: 15px;
   text-align: left;
}
.OFF .enumList .line{ border-bottom: #ffffff 1px solid; }
.enumList .line.double{ }
.enumList .line.double.leftBigger{ }
.enumList .line.double::after{
   content: "";
   display: block;
   clear: both;
}

.enumList .line a{
   color: #000000;
   text-transform: uppercase;
   font-size: 15px;
   text-decoration: none;
}
.OFF .enumList .line a{ color: #ffffff }
.enumList .line a.yelow{
   position: relative;
   color: #000000;
   padding: 8px 8px 6px 8px;
   font-size: 14px;
   background: #FFF2BD;
   display: inline-block;
   text-decoration: none;
}
.enumList .line a.red{
   position: relative;
   display: inline-block;
   color: #ff1f1f;
   padding: 8px 8px 6px 8px;
   font-size: 11px;
   cursor: default;
}
.enumList .line a:hover{ text-decoration: underline; }
.enumList .line a.red:hover{ text-decoration: none; }
.enumList .line a.yelow:hover{
   text-decoration: none;
   background: #000000;
   color: #FFF2BD;
}

.enumList .line.double .lineLeft{
   position: relative;
   top: 0;
   vertical-align: top;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   width: 47%;
   float: left;
   text-align: left;
}
.enumList .line.double .lineLeft .note{
   text-transform: none;
   font-size: 11px;
   line-height: 14px;
}
.enumList .line.double.leftBigger .lineLeft{ width: 72%; }

.enumList .line.double .lineRight{
   position: relative;
   top: 0;
   vertical-align: top;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   width: 47%;
   float: right;
   text-align: right;
}
.enumList .line.double .lineRight.ticketsLink{ line-height: 11px; }
.enumList .line.double.leftBigger .lineRight { width: 22%; }



/*
   FILE GALLERY
*/
.fileGallery{
   position: relative;
   width: 100%;
}

.fileGallery .title{
   font-size: 15px;
   text-align: left;
   text-transform: uppercase;
   padding: 0 0 30px 0;
}

.fileGallery .filesContainer{
   position: relative;
}


/*
   DOWNLOAD LINK
 */
.downloadLinkContainer{
   text-align: center;
   padding: 35px 0 0 0;
}

.downloadLinkContainer .downloadLink{
   font-size: 20px;
   text-transform: uppercase;
   display: inline-block;
   padding: 5px 6px 1px 32px;
   cursor: pointer;
   background-image: url('../images/download.svg');
   background-position: 6px center;
   background-repeat: no-repeat;
   background-size: 16px auto;
   background-color: #FFF2BD;
   color: #000000;
}
.downloadLinkContainer .downloadLink:hover{
   background-color: #000000;
   background-image: url('../images/download-yellow.svg');
   color: #FFF2BD;
}



/*
   PHOTO GALLERY
*/
.photoGallery{
   position: relative;
   width: 100%;
}

.photoGallery .title{
   font-size: 15px;
   text-align: left;
   text-transform: uppercase;
   padding: 0 0 30px 0;
}

.photoGallery .downloadLinkContainer{
   text-align: left;
   padding: 25px 0 0 0;
}

.photoGallery .downloadLinkContainer .downloadLink{
   font-size: 15px;
   text-transform: uppercase;
   display: inline-block;
   padding: 0 0 0 25px;
   cursor: pointer;
   background: url('../images/download.svg') no-repeat left top;
   background-size: 16px auto;
}
.photoGallery .downloadLinkContainer .downloadLink:hover{ text-decoration: underline }

.photoGallery .photosContainer{
   position: relative;
}

.photoGallery .photosContainer::after{
   content: "";
   display: block;
   clear: both;
}

.photoGallery .photosContainer .photoContainer{
   position: relative;
   float: left;
   width: 24%;
   margin: 0.5%;
}

.photoGallery .photosContainer .photoContainer .photo{
   position: relative;
   cursor: pointer;
   background-repeat: no-repeat;
   background-size: cover;
   background-position: center center;
   width: 100%;
}
.photoGallery .photosContainer .photoContainer .photo::after{
   content: "";
   display: block;
   padding-top: 75%;
}

.photoGallery .photosContainer .photoContainer .description{
   position: relative;
   width: 100%;
   text-align: right;
   font-size: 10px;
   line-height: 23px;
   height: 23px;
   color: #707070;
   white-space: nowrap;
   overflow: hidden;
   text-overflow: ellipsis;
}

/* DETAIL */
.photoGalleryDetail{
   position: fixed;
   top: 0;
   left: 0;
   bottom: 0;
   right: 0;
   background: rgba(0,0,0,0.85);
   z-index: 1000;
}

.photoGalleryDetail .photoContainer{
   position: absolute;
   top: 60px;
   bottom: 60px;
   left: 100px;
   right: 100px;
   background-position: center center;
   background-size: contain;
   background-repeat: no-repeat;
   cursor: pointer;
}


.photoGalleryDetail .photoContainer.youtube::after{
   content: "";
   position: absolute;
   background: url('../images/play.svg') no-repeat center center;
   width: 82px;
   height: 82px;
   margin: auto;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   opacity: 0.95;
   cursor: pointer;
}

.photoGalleryDetail .photoContainer.youtube iframe{
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: 100%;
   z-index: 10;
}


.photoGalleryDetail .description{
   font-size: 16px;
   color: #ffffff;
   text-align: center;
   position: absolute;
   bottom: 22px;
   left: 0;
   right: 0;
}

.photoGalleryDetail .close{
   position: absolute;
   top: 15px;
   right: 15px;
   width: 40px;
   height: 40px;
   cursor: pointer;
   background: url('../images/close_white.svg') no-repeat center center;
   background-size: contain;
}

.photoGalleryDetail .arrow{
   position: absolute;
   cursor: pointer;
   width: 60px;
   height: 100px;
   top: 50%;
   -ms-transform: translateY(-50%);
   -webkit-transform: translateY(-50%);
   transform: translateY(-50%);
}
.photoGalleryDetail .arrow.left{
   left: 0;
   background: url('../images/left_arrow_big_white.svg') no-repeat center center;
   background-size: contain;
}
.photoGalleryDetail .arrow.right{
   right: 0;
   background: url('../images/right_arrow_big_white.svg') no-repeat center center;
   background-size: contain;
}



/*
   CONTACT FORM
*/
.contactForm{
   position: fixed;
   top: 0;
   left: 0;
   bottom: 0;
   right: 0;
   background: rgba(250,249,249,0.95);
   z-index: 1000;
}
.OFF .contactForm{ background: rgba(20,20,20,0.95); }

.contactForm .content{
   position: absolute;
   top: 10%;
   bottom: 10%;
   left: 10%;
   right: 10%;
}

.contactForm .content .closeBtn{
   position: absolute;
   top: 0;
   right: 0;
   width: 110px;
   height: 110px;
   background-image: url("../images/close_black.svg");
   background-repeat: no-repeat;
   background-position: center center;
   background-size: cover;
   cursor: pointer;
}
.OFF .contactForm .content .closeBtn{ background-image: url("../images/close_white.svg"); }

.contactForm .content input{
   background: #ffffff;
   border: #000000 1px solid;
   font-size: 15px;
   margin: 0 0 20px 0;
   font-family: 'FreeSans';
   font-weight: normal;
   font-style: normal;
   height: 48px;
   line-height: 48px;
   color: #000000;
   width: 50%;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   padding: 0 20px 0 20px;
   display: block;
}
.OFF .contactForm .content input{
   background: #000000;
   border: #ffffff 1px solid;
   color: #ffffff;
}
.contactForm .content input::-webkit-input-placeholder{ text-transform: uppercase; color: #a5a5a5; }
.contactForm .content input::-moz-placeholder         { text-transform: uppercase; color: #a5a5a5; }
.contactForm .content input::-moz-placeholder         { text-transform: uppercase; color: #a5a5a5; }
.contactForm .content input:-ms-input-placeholder     { text-transform: uppercase; color: #a5a5a5; }

.contactForm .content textarea{
   position: absolute;
   top: 137px;
   bottom: 68px;
   left: 0;
   background: #ffffff;
   border: #000000 1px solid;
   font-size: 15px;
   font-family: 'FreeSans';
   font-weight: normal;
   font-style: normal;
   color: #000000;
   width: 100%;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   padding: 20px;
   resize: none;
}
.OFF .contactForm .content textarea{
   background: #000000;
   border: #ffffff 1px solid;
   color: #ffffff;
}
.contactForm .content textarea::-webkit-input-placeholder{ text-transform: uppercase; color: #a5a5a5; }
.contactForm .content textarea::-moz-placeholder         { text-transform: uppercase; color: #a5a5a5; }
.contactForm .content textarea::-moz-placeholder         { text-transform: uppercase; color: #a5a5a5; }
.contactForm .content textarea:-ms-input-placeholder     { text-transform: uppercase; color: #a5a5a5; }

.contactForm .content .submitBtn{
   position: absolute;
   right: 0;
   bottom: 0;
   cursor: pointer;
   background: #000000;
   text-align: center;
   height: 45px;
   line-height: 45px;
   width: 50%;
   font-size: 15px;
   text-transform: uppercase;
   color: #ffffff;
}
.OFF .contactForm .content .submitBtn{
   color: #000000;
   background: #ffffff;
}
.contactForm .content .submitBtn.disabled{
   cursor: default;
   background: #a5a5a5;
}



/*
   LOGIN FORM
*/
.loginForm{
   position: fixed;
   top: 0;
   left: 0;
   bottom: 0;
   right: 0;
   background: rgba(250,249,249,0.95);
   z-index: 1000;
}

.loginForm .content{
   position: absolute;
   left: 10%;
   right: 10%;
   top: 50%;
   -ms-transform: translateY(-50%);
   -webkit-transform: translateY(-50%);
   transform: translateY(-50%);
}

.loginForm .content .closeBtn{
   position: absolute;
   top: 0;
   right: 0;
   width: 110px;
   height: 110px;
   background-image: url("../images/close_black.svg");
   background-repeat: no-repeat;
   background-position: center center;
   background-size: cover;
   cursor: pointer;
}

.loginForm .content input{
   background: #ffffff;
   border: #000000 1px solid;
   font-size: 15px;
   margin: 0 0 20px 0;
   font-family: 'FreeSans';
   font-weight: normal;
   font-style: normal;
   height: 48px;
   line-height: 48px;
   color: #000000;
   width: 50%;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   padding: 0 20px 0 20px;
   display: block;
}
.contactForm .content input::-webkit-input-placeholder{ text-transform: uppercase; color: #a5a5a5; }
.contactForm .content input::-moz-placeholder         { text-transform: uppercase; color: #a5a5a5; }
.contactForm .content input::-moz-placeholder         { text-transform: uppercase; color: #a5a5a5; }
.contactForm .content input:-ms-input-placeholder     { text-transform: uppercase; color: #a5a5a5; }

.loginForm .content .submitBtn{
   cursor: pointer;
   background: #000000;
   text-align: center;
   height: 45px;
   line-height: 45px;
   width: 50%;
   font-size: 15px;
   text-transform: uppercase;
   color: #ffffff;
   margin: auto;
}
.loginForm .content .submitBtn.disabled{
   cursor: default;
   background: #a5a5a5;
}



/*
   CONTACT FORM LINK
*/
.contactFormLink{
   display: inline-block;
   margin: 30px auto 0 auto;
   background: url("../images/icon_envelope_thin_black.svg") no-repeat center top;
   background-size: 80px;
   text-transform: uppercase;
   padding: 50px 0 0 0;
   cursor: pointer;
}
.OFF .contactFormLink{
   background: url("../images/icon_envelope_thin_white.svg") no-repeat center top;
   background-size: 80px;
}
.MOBILE .contactFormLink{
   margin: 50px auto 0 auto;
   display: block;
   text-align: center;
}



/*
   SUBSCRIPTION FORM
*/
.subscriptionForm{
   position: fixed;
   top: 0;
   left: 0;
   bottom: 0;
   right: 0;
   background: rgba(250,249,249,0.95);
   z-index: 1000;
   overflow-x: hidden;
   overflow-y: auto;
   -webkit-overflow-scrolling: touch;
}
.OFF .subscriptionForm{ background: rgba(20,20,20,0.95); }

.subscriptionForm .content{
   position: relative;
   margin: 5% 10% 5% 10%;
}

.subscriptionForm .content .formTitle{
   margin: 0 0 20px 0;
   text-align: left;
   line-height: 48px;
   padding: 0 130px 0 0;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
}

.subscriptionForm .content .inputDescription{
   margin: 0 0 20px 0;
   text-align: left;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
}
.subscriptionForm .content .inputDescription a{
   font-weight: bold;
}

.subscriptionForm .content .formDescription{
   margin: 0 0 20px 0;
   text-align: left;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
}

.subscriptionForm .content .closeBtn{
   position: absolute;
   top: 0;
   right: 0;
   width: 110px;
   height: 110px;
   background-image: url("../images/close_black.svg");
   background-repeat: no-repeat;
   background-position: center center;
   background-size: cover;
   cursor: pointer;
}
.OFF .subscriptionForm .content .closeBtn{ background-image: url("../images/close_white.svg"); }

.subscriptionForm .content input{
   background: #ffffff;
   border: #000000 1px solid;
   font-size: 15px;
   margin: 0 0 20px 0;
   font-family: 'FreeSans';
   font-weight: normal;
   font-style: normal;
   height: 48px;
   line-height: 48px;
   color: #000000;
   width: 50%;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   padding: 0 20px 0 20px;
   display: block;
}
.subscriptionForm .content input.fullWidth{ width: 100% }
.OFF .subscriptionForm .content input{
   background: #000000;
   border: #ffffff 1px solid;
   color: #ffffff;
}
.subscriptionForm .content input::-webkit-input-placeholder{ text-transform: uppercase; color: #a5a5a5; }
.subscriptionForm .content input::-moz-placeholder         { text-transform: uppercase; color: #a5a5a5; }
.subscriptionForm .content input::-moz-placeholder         { text-transform: uppercase; color: #a5a5a5; }
.subscriptionForm .content input:-ms-input-placeholder     { text-transform: uppercase; color: #a5a5a5; }

.subscriptionForm .content textarea{
   background: #ffffff;
   border: #000000 1px solid;
   font-size: 15px;
   font-family: 'FreeSans';
   font-weight: normal;
   font-style: normal;
   color: #000000;
   width: 100%;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   padding: 20px;
   margin: 0 0 20px 0;
   resize: none;
}
.OFF .subscriptionForm .content textarea{
   background: #000000;
   border: #ffffff 1px solid;
   color: #ffffff;
}
.subscriptionForm .content textarea::-webkit-input-placeholder{ text-transform: uppercase; color: #a5a5a5; }
.subscriptionForm .content textarea::-moz-placeholder         { text-transform: uppercase; color: #a5a5a5; }
.subscriptionForm .content textarea::-moz-placeholder         { text-transform: uppercase; color: #a5a5a5; }
.subscriptionForm .content textarea:-ms-input-placeholder     { text-transform: uppercase; color: #a5a5a5; }

.subscriptionForm .content .submitBtn{
   cursor: pointer;
   background: #000000;
   text-align: center;
   height: 45px;
   line-height: 45px;
   width: 50%;
   font-size: 15px;
   text-transform: uppercase;
   color: #ffffff;
   margin: auto;
}
.OFF .subscriptionForm .content .submitBtn{
   color: #000000;
   background: #ffffff;
}
.subscriptionForm .content .submitBtn.disabled{
   cursor: default;
   background: #a5a5a5;
}



/*
   NEWSLETTER FORM
*/
.newsletterForm{
   position: fixed;
   top: 0;
   left: 0;
   bottom: 0;
   right: 0;
   background: rgba(250,249,249,0.95);
   z-index: 1000;
}
.OFF .newsletterForm{ background: rgba(20,20,20,0.95); }

.newsletterForm .content{
   position: relative;
   margin: 5% 10% 5% 10%;
}

.newsletterForm .content .formTitle{
   margin: 0 0 40px 0;
   text-align: left;
   line-height: 48px;
   padding: 0 130px 0 0;
   min-height: 110px;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
}

.newsletterForm .content .closeBtn{
   position: absolute;
   top: 0;
   right: 0;
   width: 110px;
   height: 110px;
   background-image: url("../images/close_black.svg");
   background-repeat: no-repeat;
   background-position: center center;
   background-size: cover;
   cursor: pointer;
}
.OFF .newsletterForm .content .closeBtn{ background-image: url("../images/close_white.svg"); }

.newsletterForm .content input[type="text"]{
   background: #ffffff;
   border: #000000 1px solid;
   font-size: 15px;
   margin: 0 0 40px 0;
   font-family: 'FreeSans';
   font-weight: normal;
   font-style: normal;
   height: 48px;
   line-height: 48px;
   color: #000000;
   width: 100%;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   padding: 0 20px 0 20px;
   display: block;
}
.OFF .newsletterForm .content input[type="text"]{
   background: #000000;
   border: #ffffff 1px solid;
   color: #ffffff;
}
.newsletterForm .content input::-webkit-input-placeholder{ text-transform: uppercase; color: #a5a5a5; }
.newsletterForm .content input::-moz-placeholder         { text-transform: uppercase; color: #a5a5a5; }
.newsletterForm .content input::-moz-placeholder         { text-transform: uppercase; color: #a5a5a5; }
.newsletterForm .content input:-ms-input-placeholder     { text-transform: uppercase; color: #a5a5a5; }

.newsletterForm .content .formText{
  margin: 0 0 10px 0;
   text-align: left;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
}

.newsletterForm .content .formText a{
  text-decoration: underline;
}
.newsletterForm .content .formText a:hover{
  text-decoration: none;
}

.newsletterForm .content .agreeCheckboxContainer{
  margin: 0 0 40px 0;
  text-align: left;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.newsletterForm .content .agreeCheckboxContainer span{
  display: inline-block;
  padding: 0 0 0 10px;
}

.newsletterForm .content .submitBtn{
   cursor: pointer;
   background: #000000;
   text-align: center;
   height: 45px;
   line-height: 45px;
   width: 50%;
   font-size: 15px;
   text-transform: uppercase;
   color: #ffffff;
   margin: auto;
}
.OFF .newsletterForm .content .submitBtn{
   color: #000000;
   background: #ffffff;
}
.newsletterForm .content .submitBtn.disabled{
   cursor: default;
   background: #a5a5a5;
}



/*
   YELLOW BUTTON
*/
.yellowButton{
   position: relative;
   width: 50%;
   background: #fffbe7;
   color: #000000;
   text-align: center;
   cursor: pointer;
   line-height: 55px;
}
.OFF .yellowButton{ color: #000000 }
.MOBILE .yellowButton{ width: 100% }



/*
   DEBATE FORM
*/
.debateForm{
   position: fixed;
   top: 0;
   left: 0;
   bottom: 0;
   right: 0;
   background: rgba(250,249,249,0.95);
   z-index: 1000;
}
.OFF .debateForm{ background: rgba(20,20,20,0.95); }

.debateForm .content{
   position: absolute;
   top: 10%;
   bottom: 10%;
   left: 10%;
   right: 10%;
}

.debateForm .content .closeBtn{
   position: absolute;
   top: 0;
   right: 0;
   width: 110px;
   height: 110px;
   background-image: url("../images/close_black.svg");
   background-repeat: no-repeat;
   background-position: center center;
   background-size: cover;
   cursor: pointer;
}
.OFF .debateForm .content .closeBtn{ background-image: url("../images/close_white.svg"); }

.debateForm .content input{
   background: #ffffff;
   border: #000000 1px solid;
   font-size: 15px;
   margin: 0 0 20px 0;
   font-family: 'FreeSans';
   font-weight: normal;
   font-style: normal;
   height: 48px;
   line-height: 48px;
   color: #000000;
   width: 50%;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   padding: 0 20px 0 20px;
   display: block;
}
.OFF .debateForm .content input{
   background: #000000;
   border: #ffffff 1px solid;
   color: #ffffff;
}
.debateForm .content input::-webkit-input-placeholder{ text-transform: uppercase; color: #a5a5a5; }
.debateForm .content input::-moz-placeholder         { text-transform: uppercase; color: #a5a5a5; }
.debateForm .content input::-moz-placeholder         { text-transform: uppercase; color: #a5a5a5; }
.debateForm .content input:-ms-input-placeholder     { text-transform: uppercase; color: #a5a5a5; }

.debateForm .content textarea{
   position: absolute;
   top: 137px;
   bottom: 68px;
   left: 0;
   background: #ffffff;
   border: #000000 1px solid;
   font-size: 15px;
   font-family: 'FreeSans';
   font-weight: normal;
   font-style: normal;
   color: #000000;
   width: 100%;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   padding: 20px;
   resize: none;
}
.OFF .debateForm .content textarea{
   background: #000000;
   border: #ffffff 1px solid;
   color: #ffffff;
}
.debateForm .content textarea::-webkit-input-placeholder{ text-transform: uppercase; color: #a5a5a5; }
.debateForm .content textarea::-moz-placeholder         { text-transform: uppercase; color: #a5a5a5; }
.debateForm .content textarea::-moz-placeholder         { text-transform: uppercase; color: #a5a5a5; }
.debateForm .content textarea:-ms-input-placeholder     { text-transform: uppercase; color: #a5a5a5; }

.debateForm .content .submitBtn{
   position: absolute;
   right: 0;
   bottom: 0;
   cursor: pointer;
   background: #000000;
   text-align: center;
   height: 45px;
   line-height: 45px;
   width: 50%;
   font-size: 15px;
   text-transform: uppercase;
   color: #ffffff;
}
.OFF .debateForm .content .submitBtn{
   color: #000000;
   background: #ffffff;
}
.debateForm .content .submitBtn.disabled{
   cursor: default;
   background: #a5a5a5;
}


/*
   DEBATE
*/
.debateList{
   width: 66%;
   padding: 10px 15px 10px 15px;
   border-bottom: #000000 1px solid;
}
.debateList:nth-child(even){ background-color: #fffbe7; }
.MOBILE .debateList{ width: auto }
.OFF .debateList{ border-bottom: #ffffff 1px solid }
.OFF .debateList:nth-child(even){ color: #000000 }

.OFF .debateList:nth-child(even) .ts_multiLineFreeText,
.OFF .debateList:nth-child(even) .ts_smallMultiLineFreeText,
.OFF .debateList:nth-child(even) .ts_ultraSmallMultiLineFreeText{ color: #000000 }

.debateList .ts_smallMultiLineFreeText{ margin: 10px 0 0 0 }

.debateList .subDebateList{
   padding: 10px 0 0 10%;
}



/*
   ORGANIZER
*/
.organizer{
   position: relative;
   width: 100%;
}

.organizer .title{
   font-size: 15px;
   text-align: left;
   text-transform: uppercase;
   padding: 0 0 15px 0;
}

.organizer .linksContainer{
   position: relative;
   padding: 15px 0 0 0;
}



/*
   SPACERS
*/
#popupBanner{
   position: fixed;
   top: 0;
   bottom: 0;
   left: 0;
   right: 0;
   background: rgba(0,0,0,0.9);
   z-index: 1000;
}

#popupBanner .photoContent{
   position: absolute;
   top: 10%;
   bottom: 10%;
   left: 10%;
   right: 10%;
   margin: auto;
   background-size: contain;
   background-repeat: no-repeat;
   background-position: center center;
}

#popupBanner .closeBtn{
   position: absolute;
   right: 2%;
   width: 6%;
   top: 10%;
   height: 10%;
   max-height: 40px;
   background: url("../images/close_white.svg") no-repeat center top;
   background-size: contain;
   cursor: pointer;

}



/*
   JUST SIMPLE PHOTO
*/
.justSimplePhoto{
   width: 100%;
   max-width: 300px;
}



/*
   SPECIAL
*/
#specialBtn {
   line-height: 11px;
   text-align: left;
}
#specialBtn a {
   color: #000000;
   font-size: 14px;
   line-height: 14px;
   display: inline-block;
   padding: 8px 8px 6px 8px;
   background: #EAC9C9;
   text-decoration: none;
}
#specialBtn a:hover {
   background: #000000;
   color: #D69493;
   text-decoration: none;
}