#header{
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   background: #ffffff;
   padding-bottom: 15px;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
   z-index: 100;
   display: none;
   -webkit-transition: background 0.25s ease-out;
   transition: background 0.25s ease-out;
}
.INITIALIZED #header{ display: block; }
#header.relative{ position: relative; }
.MOBILE #header{ position: relative; }
.OFF #header{ background: #000000; }
.MOBILEAPP #header{ display: none; }
.IFRAME #header{ display: none; }



/*
   TOP PART
*/
#header .topPart{
   position: relative;
   margin-left: 5%;
   margin-right: 5%;
   height: 105px;
   -webkit-box-sizing: border-box;
   -moz-box-sizing: border-box;
   box-sizing: border-box;
}
.MOBILE #header .topPart{ height: 70px; }

/* logo */
#header .topPart .logo{
   position: absolute;
   padding-top: 15px;
   top: 15px;
   left: 0;
   border-top: #000000 1px solid;
   text-transform: uppercase;
   font-size: 25px;
   line-height: 30px;
   -webkit-transition: border-top 0.25s ease-out;
   transition: border-top 0.25s ease-out;
}
#header .topPart .logo a:hover{ text-decoration: none; }
.MOBILE #header .topPart .logo{
   top: 10px;
   padding-top: 7px;
   font-size: 14px;
   line-height: 16px;
}
.OFF #header .topPart .logo{ border-top: #ffffff 1px solid; }
.EXTRA_SMALL #header .topPart .logo{ display: none }

#header .topPart .logo .onLogo{ display: inline; }
.OFF #header .topPart .logo .onLogo{ display: none; }

#header .topPart .logo .offLogo{ display: none; }
.OFF #header .topPart .logo .offLogo{ display: inline; }

/* links */
#header .topPart .links{
   position: absolute;
   top: 15px;
   left: 36%;
   display: -webkit-flex;
   display: flex;
   -webkit-align-items: flex-start;
   align-items: flex-start;
   align-content: flex-start;
   -webkit-align-content: flex-start;
}
.MOBILE #header .topPart .links{
   text-align: right;
   top: 75px;
   left: auto;
   right: 0;
   display: block;
}
.MOBILE #header .topPart .links.hidden{ display: none }

/* social icons */
#header .topPart .links .facebook{
   display: inline-block;
   height: 21px;
   width: 21px;
   margin-right: 9px;
   background-image: url("../images/facebook_black.svg");
   background-position: center center;
   background-repeat: no-repeat;
   background-size: contain;
}
.OFF #header .topPart .links .facebook{ background-image: url("../images/facebook_white.svg"); }
.MOBILE #header .topPart .links .facebook{ margin-right: 0 }

#header .topPart .links .youtube{
   display: inline-block;
   width: 21px;
   height: 21px;
   margin-right: 12px;
   background-image: url("../images/youtube_black.svg");
   background-position: center center;
   background-repeat: no-repeat;
   background-size: contain;
}
.OFF #header .topPart .links .youtube{ background-image: url("../images/youtube_white.svg"); }
.MOBILE #header .topPart .links .youtube{ margin-right: 0 }

#header .topPart .links .instagram{
   display: inline-block;
   width: 21px;
   height: 21px;
   margin-right: 12px;
   background-image: url("../images/instagram_black.svg");
   background-position: center center;
   background-repeat: no-repeat;
   background-size: contain;
}
.OFF #header .topPart .links .instagram{ background-image: url("../images/instagram_white.svg"); }
.MOBILE #header .topPart .links .instagram{ margin-right: 0 }

/* text links */
#header .topPart .links .textLinks{
   font-size: 11px;
   line-height: 11px;
   text-transform: uppercase;
   display: -webkit-flex;
   display: flex;
   -webkit-align-items: flex-start;
   align-items: flex-start;
   align-content: flex-start;
   -webkit-align-content: flex-start;
}
.MOBILE #header .topPart .links .textLinks{
   -webkit-justify-content: flex-end;
   justify-content: flex-end;
   margin: 11px 0 0 0;
}

/* newsletter */
#header .topPart .links .newsletter{
   display: inline-block;
   cursor: pointer;
   margin-right: 9px;

}
.MOBILE #header .topPart .links .newsletter{ margin-right: 14px }
#header .topPart .links .newsletter:hover{ text-decoration: underline }

/* press */
#header .topPart .links .press{ margin-right: 9px; }
.MOBILE #header .topPart .links .press{ margin-right: 14px; }
#header .topPart .links .press.justOn{ display: block }
#header .topPart .links .press.justOff{ display: none }
.OFF #header .topPart .links .press.justOn{ display: none }
.OFF #header .topPart .links .press.justOff{ display: block }

/* debate */
#header .topPart .links .debate{ }
.MOBILE #header .topPart .links .debate{ }
#header .topPart .links .debate.justOn{ display: block }
#header .topPart .links .debate.justOff{ display: none }
.OFF #header .topPart .links .debate.justOn{ display: none }
.OFF #header .topPart .links .debate.justOff{ display: block }

/* Logo container */
#header .topPart .logoContainer{
   position: absolute;
   top: 14px;
   right: 16%;
   width: 225px;
}
/* .SMALLER #header .topPart .logoContainer{
    top: 35px;
    right: 16%;
    width: 180px;
 } */
.MOBILE #header .topPart .logoContainer{
   top: 10px;
   right: 50%;
   width: 115px;
}
.EXTRA_SMALL #header .topPart .logoContainer{
   right: auto;
   left: 0;
}

/* 70 */
/* #header .topPart .seventy{
   position: absolute;
   top: 2px;
   left: 0;
}

#header .topPart .seventy img{ height: 72px; }
.SMALLER #header .topPart .seventy img{ height: 55px; }
.MOBILE #header .topPart .seventy img{ height: 37px; } */

/* pp */
#header .topPart .pp{
   position: absolute;
   top: 0;
   right: 0;
   font-size: 98px;
   line-height: 80px;
   width: 130px;
}
/* .SMALLER #header .topPart .pp{
    font-size: 70px;
    line-height: 58px;
    width: 95px;
} */
.MOBILE #header .topPart .pp{
   top: 5px;
   font-size: 51px;
   line-height: 32px;
   width: 65px;
}
.EXTRA_SMALL #header .topPart .pp{ }

#header .topPart .pp span{
   position: absolute;
   top: 0;
   -webkit-transition: -webkit-transform 0.25s ease-out;
   transition: transform 0.25s ease-out;
   -ms-transform: rotateY(0deg);
   -webkit-transform: rotateY(0deg);
   transform: rotateY(0deg);
}
#header .topPart .pp span:first-child{ left: 0 }
#header .topPart .pp span:last-child{ right: 0 }
.OFF #header .topPart .pp span{
   -ms-transform: rotateY(180deg);
   -webkit-transform: rotateY(180deg);
   transform: rotateY(180deg);
}

/* festival */
#header .topPart .festival{
   position: absolute;
   top: 6px;
   left: 247px;
   width: 90px;
   height: 90px;
   background-image: url("../images/fest_black.svg");
   background-position: center center;
   background-repeat: no-repeat;
   background-size: contain;
}
#header .topPart .festival.offFestival{ background-image: url("../images/fest_white.svg"); }
.MOBILE #header .topPart .festival{
   top: 10px;
   left: auto;
   right: 155px;
   width: 40px;
   height: 40px;
}

#header .topPart .festival{ display: inline; }
.OFF #header .topPart .festival{ display: none; }

#header .topPart .festival.offFestival{ display: none; }
.OFF #header .topPart .festival.offFestival{ display: inline; }

/* onOffSwitcher */
#header .topPart .onOffSwitcher{
   position: absolute;
   top: 15px;
   right: 70px;
   width: 60px;
   height: 70px;
   cursor: pointer;
   border: #000000 1px solid;
   background: #000000;
   -webkit-transition: border 0.25s ease-out, background 0.25s ease-out;
   transition: border 0.25s ease-out, background 0.25s ease-out;
}
.OFF #header .topPart .onOffSwitcher{
   border: #ffffff 1px solid;
   background: #ffffff;
}
.MOBILE #header .topPart .onOffSwitcher{
   top: 10px;
   right: 109px;
   width: 35px;
   height: 37px;
}

#header .topPart .onOffSwitcher .switch{
   position: absolute;
   left: 0;
   width: 100%;
   height: 50%;
   top: 0;
   background: #ffffff;
   -webkit-transition: top 0.25s ease-out, background 0.25s ease-out;
   transition: top 0.25s ease-out, background 0.25s ease-out;
}
.OFF #header .topPart .onOffSwitcher .switch{
   top: 35px;
   background: #000000;
}
.MOBILE.OFF #header .topPart .onOffSwitcher .switch{ top: 18px; }

#header .topPart .onOffSwitcher .switch::after{
   content: "";
   position: absolute;
   width: 17px;
   height: 17px;
   border-radius: 50%;
   margin: auto;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   -webkit-transition: background 0.25s ease-out;
   transition: background 0.25s ease-out;
}
.MOBILE #header .topPart .onOffSwitcher .switch::after{
   width: 9px;
   height: 9px;
}
#header .topPart .onOffSwitcher .switch::after{ background: #000000; }
.OFF #header .topPart .onOffSwitcher .switch::after{ background: #ffffff; }

#header .topPart .onOffSwitcher .offText{
   position: absolute;
   left: 0;
   bottom: 0;
   width: 100%;
   height: 35px;
   font-size: 17px;
   line-height: 36px;
   text-transform: uppercase;
   text-align: center;
   color: #ffffff;
}
.MOBILE #header .topPart .onOffSwitcher .offText{
   font-size: 9px;
   line-height: 18px;
   height: 18px;
}

#header .topPart .onOffSwitcher .onText{
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: 35px;
   font-size: 17px;
   line-height: 36px;
   text-transform: uppercase;
   text-align: center;
   color: #000000;
}
.MOBILE #header .topPart .onOffSwitcher .onText{
   font-size: 9px;
   line-height: 18px;
   height: 18px;
}

/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
/* czeEngSwitcher */
#header .topPart .czeEngSwitcher{
   position: absolute;
   top: 15px;
   right: 0;
   width: 60px;
   height: 70px;
   cursor: pointer;
   border: #000000 1px solid;
   background: #000000;
   -webkit-transition: border 0.25s ease-out, background 0.25s ease-out;
   transition: border 0.25s ease-out, background 0.25s ease-out;
}
.OFF #header .topPart .czeEngSwitcher{
   border: #ffffff 1px solid;
}
.ENG #header .topPart .czeEngSwitcher{
   border: #000000 1px solid;
   background: #ffffff;
}
.ENG.OFF #header .topPart .czeEngSwitcher{
   border: #ffffff 1px solid;
}
.MOBILE #header .topPart .czeEngSwitcher{
   top: 10px;
   right: 65px;
   width: 35px;
   height: 37px;
}

#header .topPart .czeEngSwitcher .switch{
   position: absolute;
   left: 0;
   width: 100%;
   height: 50%;
   top: 0;
   background: #ffffff;
   -webkit-transition: top 0.25s ease-out, background 0.25s ease-out;
   transition: top 0.25s ease-out, background 0.25s ease-out;
}
.ENG #header .topPart .czeEngSwitcher .switch{
   top: 35px;
   background: #000000;
}
.MOBILE.ENG #header .topPart .czeEngSwitcher .switch{ top: 18px; }

#header .topPart .czeEngSwitcher .switch::after{
   content: "";
   position: absolute;
   width: 17px;
   height: 17px;
   border-radius: 50%;
   margin: auto;
   left: 0;
   right: 0;
   top: 0;
   bottom: 0;
   -webkit-transition: background 0.25s ease-out;
   transition: background 0.25s ease-out;
}
.MOBILE #header .topPart .czeEngSwitcher .switch::after{
   width: 9px;
   height: 9px;
}
#header .topPart .czeEngSwitcher .switch::after{ background: #000000; }
.ENG #header .topPart .czeEngSwitcher .switch::after{ background: #ffffff; }

#header .topPart .czeEngSwitcher img{ height: 21px; }
.MOBILE #header .topPart .czeEngSwitcher img{ height: 12px; }

#header .topPart .czeEngSwitcher .offText{
   position: absolute;
   left: 0;
   bottom: 0;
   width: 100%;
   height: 28px;
   padding: 7px 0 0 0;
   text-align: center;
}
.MOBILE #header .topPart .czeEngSwitcher .offText{
   height: 18px;
   padding: 0;
}

#header .topPart .czeEngSwitcher .onText{
   position: absolute;
   left: 0;
   top: 0;
   width: 100%;
   height: 28px;
   padding: 7px 0 0 0;
   text-align: center;
}
.MOBILE #header .topPart .czeEngSwitcher .onText{
   height: 18px;
   padding: 0;
}

/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */
/* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! */

/* menu btn */
#header .topPart .menuBtn{
   position: absolute;
   top: 10px;
   right: 0;
   border: #000000 1px solid;
   padding: 5px 7px 5px 7px;
   font-size: 14px;
   line-height: 16px;
   cursor: pointer;
   text-transform: uppercase;
   display: none;
}
.MOBILE #header .topPart .menuBtn{
   display: block;
   line-height: 26px;
}
.OFF #header .topPart .menuBtn{ border: #ffffff 1px solid; }



/*
   MAIN MENU
*/
#header .mainMenu{
   position: relative;
   border: #000000 1px solid;
   margin-left: 5%;
   margin-right: 5%;
   font-size: 18px;
   text-transform: uppercase;
   overflow: hidden;
   height: 50px;
   -webkit-transition: height 0.3s, border 0.25s ease-out;
   -moz-transition: height 0.3s, border 0.25s ease-out;
   -o-transition: height 0.3s, border 0.25s ease-out;
   transition: height 0.3s, border 0.25s ease-out;
}
#header .mainMenu.expand{ height: 274px; }
.OFF #header .mainMenu.expand{ height: 202px; }
.MOBILE #header .mainMenu{
   height: auto;
   padding-top: 5px;
   padding-bottom: 5px;
   -webkit-transition: none;
   -moz-transition: none;
   -o-transition: none;
   transition: none;
   display: none;
   margin-bottom: 10px;
   background: #ffffff;
}
.MOBILE #header .mainMenu.visible{ display: block; }
.MOBILE #header .mainMenu.showJustSelected{}
.OFF #header .mainMenu{ border: #ffffff 1px solid; }
.MOBILE.OFF #header .mainMenu{
   height: auto;
   background: #000000;
}

#header .mainMenu .menuGroup{
   display: inline-block;
   cursor: default;
   vertical-align: top;
}
#header .mainMenu.justCze .menuGroup{ width: 16%; }
.OFF #header .mainMenu.justCze .menuGroup{ width: 19.3% }
#header .mainMenu.justEng .menuGroup{ width: 16%; }
.OFF #header .mainMenu.justEng .menuGroup{ width: 24.2% }
.MOBILE #header .mainMenu .menuGroup{
   display: block;
   width: 100%;
}
.MOBILE #header .mainMenu.showJustSelected .menuGroup{ display: none }
.MOBILE #header .mainMenu.showJustSelected .menuGroup.selected{ display: block }
.OFF #header .mainMenu .menuGroup.menuGroupJustOn{ display: none }

#header .mainMenu .menuGroup .menuItem{
   position: relative;
   text-align: center;
   line-height: 50px;
   cursor: pointer;
}
#header .mainMenu .menuGroup.left .menuItem{ text-align: left; padding-left: 12px; }
#header .mainMenu .menuGroup.right .menuItem{ text-align: right; }
.MOBILE #header .mainMenu .menuGroup .menuItem{
   text-align: left;
   padding-left: 12px;
   line-height: 28px;
}

#header .mainMenu .menuGroup .menuItem .arrow{
   position: absolute;
   top: 1px;
   right: 10px;
   display: none;
}
.MOBILE #header .mainMenu.showJustSelected .menuGroup.selected .menuItem .arrow{ display: block; }

#header .mainMenu .menuGroup .submenuItems{
   -webkit-transition: opacity 0.25s ease-out;
   -moz-transition: opacity 0.25s ease-out;
   -o-transition: opacity 0.25s ease-out;
   transition: opacity 0.25s ease-out;
   opacity: 0;
}
#header .mainMenu .menuGroup:hover .submenuItems{ opacity: 1; }
.MOBILE #header .mainMenu .menuGroup .submenuItems{ display: none; }
.MOBILE #header .mainMenu.showJustSelected .menuGroup.selected .submenuItems{
   text-align: left;
   opacity: 1;
   display: block;
   padding-top: 25px;
}

#header .mainMenu .menuGroup .justOff{ display: none }
.OFF #header .mainMenu .menuGroup .justOff{ display: block }
.OFF #header .mainMenu .menuGroup .justOn{ display: none }

#header .mainMenu .menuGroup .submenuItems a{
   position: relative;
   display: inline-block;
   left: 50%;
   font-size: 18px;
   text-transform: uppercase;
   line-height: 28px;
   -ms-transform: translateX(-50%);
   -webkit-transform: translateX(-50%);
   transform: translateX(-50%);
}
#header .mainMenu .menuGroup .submenuItems a.selected::before{
   content: "";
   position: absolute;
   left: -8px;
   width: 5px;
   height: 5px;
   border-radius: 50%;
   background: #000000;
   margin: auto;
   top: 0;
   bottom: 0;
}
.OFF #header .mainMenu .menuGroup .submenuItems a.selected::before{ background: #ffffff; }
#header .mainMenu .menuGroup.left .submenuItems a{
   left: 12px;
   -ms-transform: translateX(0%);
   -webkit-transform: translateX(0%);
   transform: translateX(0%);
}
#header .mainMenu .menuGroup.right .submenuItems a{
   left: 100%;
   -ms-transform: translateX(-100%);
   -webkit-transform: translateX(-100%);
   transform: translateX(-100%);
}
.MOBILE #header .mainMenu.showJustSelected .menuGroup.selected .submenuItems a{
   left: 12px;
   -ms-transform: translateX(0%);
   -webkit-transform: translateX(0%);
   transform: translateX(0%);
}