﻿.widthpage {
  width: 100%;
  max-width: 1040px;
}
.centerpage {
  text-align: center;
  margin: 0 auto;
}
.left {
  float: left;
}
.right {
  float: right;
}
.boxsizing {
  box-sizing: border-box;
}
.v-align {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  -webkit-justify-content: center;
  align-items: center;
  justify-content: center;
  -webkit-box-pack: center;
}
.blackandwhite {
  -webkit-filter: grayscale(0.9);
  -webkit-filter: grayscale(90%);
  filter: grayscale(90%);
}
h1,
h2,
h3,
h4,
p,
td,
a,
li,
ul,
pre,
blockquote,
q,
input,
textarea,
select,
label,
button {
  font-family: Arial, 'Helvetica neue', Tahoma, Helvetica;
  color: #000;
  font-weight: 400;
  list-style-type: none;
  text-decoration: none;
  font-size: 1em;
}
div,
input,
select,
p {
  box-sizing: border-box;
}
ul {
  margin: 0;
}
article,
section,
footer,
header {
  width: 100%;
  position: relative;
  display: table;
}
.main {
  width: 100%;
  max-width: 1040px;
  text-align: center;
  margin: 0 auto;
  box-sizing: border-box;
}
.main {
  padding: 0 20px;
}
body {
  background: #fff;
}
.container {
  position: relative;
  display: table;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
}
span.month{
  text-transform: uppercase;
}

/* tlacitka */
/* hlavicka */
.tophead {
  width: 100%;
  display: block;
  min-height: 212px;
  box-sizing: border-box;
}
.tophead .main {
  position: relative;
  padding-top: 54px;
  display: flex;
  justify-content: space-between;
}

.tophead img {
    display: block;
    max-height: 130px;
    }

.tophead .logo {
  width: 36%;
  max-width: 359px;
  height: 144px;
  display: block;
  cursor: pointer;
  margin-right: 5%;
}
.tophead .logo-en {
  width: 36%;
  max-width: 359px;
  height: 144px;
  display: block;
  /*background: url(../images/logo-registr-en.png) center center no-repeat;
  background-size: contain;*/
  cursor: pointer;
  margin-right: 5%;
}
.tophead .logo-ikem {
    margin-right: 5%;
  display: block;

}
.tophead .maps {
    flex: 1;
}
.tophead .maps .map-world {
  height: 100%;
  width: 50%;
  max-width: 235px;
  float: left;
  background: url(../images/svet2.png) center center no-repeat;
  background-size: contain;
  position: relative;
}
.tophead .maps .map-cz {
  height: 100%;
  width: 50%;
  max-width: 128px;
  float: right;
  background: url(../images/mapa-cr.png) center center no-repeat;
  background-size: contain;
  position: relative;
}
.tophead .maps span {
  color: #b90808;
  font-size: 16px;
  font-weight: 600;
  position: absolute;
  bottom: 0;
  right: 0;
  padding-right: 12px;
}
.showmenu {
  position: fixed;
  top: 18px;
  right: 20px;
  width: 34px;
  height: 34px;
  background: url(../images/icon-nav.png) center center no-repeat;
  display: none;
  z-index: 100;
}
.showmobile {
  position: relative;
  width: 100%;
  background: #b90808;
  border-radius: 4px;
  color: #fff;
  margin-bottom: 20px;
  padding: 8px 5px;
  text-align: center;
  font-size: 14px;
  display: none;
  box-sizing: border-radius;
  cursor: pointer;
  
}


/* menu */
.topnav {
  width: 100%;
  display: table;
  background: #dbdbdb;
}
.menufix .topnav{
  position: fixed;
  left: 0;
  top: -20px;
  z-index: 99;
}
.topnav .main {
  position: relative;
}
.mainnav {
  margin: 34px 0 0;
  padding: 0;
  width: 100%;
  padding-right: 23%;
  box-sizing: border-box;
  display: table;
  position: relative;
}
.mainnav li {
  display: table-cell;
}
.mainnav a {
  display: block;
  width: 100%;
  line-height: 39px;
  font-size: 17px;
  text-transform: uppercase;
  padding-left: 4px;
  padding-right: 4px;
  text-align: center;
  box-sizing: border-box;
}
.mainnav:hover li.active a{
  background: no-repeat;
  color: #000;
}
.mainnav a:hover, .mainnav li.active a, .mainnav li:hover a, .mainnav:hover li.active:hover a {
  background: #b90808;
  color: #fff;
  border-radius: 8px 8px 0 0;
}




.mainnav .subnav {
  width: 100%;
  background: #b90808;
  position: absolute;
  left: 0;
  z-index: 20;
  margin: 0;
  padding: 0;
  display: table;
  text-align: left;
  display: none;
  min-height: 39px;
}
.mainnav .subnav li.active a {
  background: #fff;
  color: #b90808;
  border-radius: 0;
}
.mainnav .subnav a {
  padding-left: 10px;
  padding-right: 10px;
  color: #fff;
  font-size: 14px;
}
.mainnav .subnav a:first-child {
  padding-left: 10px;
}
.mainnav .subnav a:hover, .mainnav li.active:hover .subnav a:hover {
  background: #fff;
  color: #b90808;
  border-radius: 0;
}
.mainnav li.active .subnav, .mainnav li:hover .subnav{
  display: block;
}
.mainnav li:hover .subnav{
  z-index: 22;
}
.sidenav {
  position: absolute;
  top: -8px;
  right: 17px;
  width: 16%;
}
.sidenav a {
  display: block;
  float: left;
  width: 20%;
  height: 38px;
  text-align: center;
  box-sizing: border-box;
  padding: 2px;
  cursor: pointer;
}
.sidenav a .icon {
  width: 100%;
  display: block;
  height: 100%;
  max-width: 34px;
  display: inline-block;
  transition: 0.4s;
  -webkit-transition: 0.4s;
  -moz-transition: 0.4s;
  background-size: 100% auto !important;
}
.sidenav a .icon-home {
  max-width: 37px;
}
.sidenav .icon-home {
  background: url(../images/icon-home.png) center center no-repeat;
}
.sidenav .icon-fb {
  background: url(../images/icon-fb.png) center center no-repeat;
}
.sidenav .icon-ig {
  background: url(../images/icon-ig.png) center center no-repeat;
}
.sidenav .icon-gplus {
  background: url(../images/icon-gplus.png) center center no-repeat;
}
.sidenav .icon-cz {
  background: url(../images/icon-cz.png) center center no-repeat;
}
.sidenav .icon-en {
  background: url(../images/icon-gb.png) center center no-repeat;
}
.sidenav a:hover .icon-home {
  background: url(../images/icon-home-hover.png) center center no-repeat;
}
.sidenav a:hover .icon-fb {
  background: url(../images/icon-fb-hover.png) center center no-repeat;
}
.sidenav a:hover .icon-ig {
  background: url(../images/icon-ig-hover.png) center center no-repeat;
}
.sidenav a:hover .icon-gplus {
  background: url(../images/icon-gplus-hover.png) center center no-repeat;
}
.sidenav a:hover .icon-cz {
  background: url(../images/icon-cz-hover.png) center center no-repeat;
}
.sidenav a:hover .icon-en {
  background: url(../images/icon-gb-hover.png) center center no-repeat;
}
/* slide */
.subhead {
  width: 100%;
  display: table;
  margin-top: 53px;
}
.menufix .subhead{
  margin-top: 126px;
}
.nosubmenu .subhead{
  margin-top: 14px;
}
.nosubmenu.menufix{
  margin-top: 78px;
}
.subhead .main {
  position: relative;
}
.slide {
  width: 100%;
  height: 350px;
  overflow: hidden;
  position: relative;
  margin: 0;
  padding: 0;
}
.slide li {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  opacity: 0;
  transition: 0.4s;
  -webkit-transition: 0.4s;
  -moz-transition: 0.4s;
}
.slide li img {
  width: 100%;
  opacity: 0;
}
.slide li.active {
  opacity: 1;
  z-index: 10;
}
.slide .text {
  position: absolute;
  left: 0;
  top: 0;
  width: 40%;
  height: 100%;
  max-width: 353px;
  box-sizing: border-box;
  padding: 34px;
  text-align: left;
}
.slide .text h1,
.slide .text h2,
.slide .text p {
  color: #fff;
}
.slide .text p {
  font-size: 24px;
  line-height: 40px;
  position: relative;
  z-index: 2;
  margin: 0;
  padding: 8px 0 0;
}
.slide .text .bg {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: #bababa;
  opacity: 0.37;
  z-index: 1;
}
.slide .text.right {
  left: auto;
  right: 0;
  text-align: right;
}
.slide .text.none {
  display: none;
}
.slidenav {
  margin: 0 auto;
  position: absolute;
  bottom: 22px;
  z-index: 20;
  right: 45px;
}
.slidenav a {
  display: inline-block;
  width: 15px;
  height: 15px;
  margin: 0 2px;
  border-radius: 100%;
  background: #a6a6a6;
}
.slidenav a:hover {
  background: #c0c0c0;
  cursor: pointer;
}
.slidenav a.active {
  background: #b90808;
}
/* content */
.content {
  width: 100%;
  display: table;
  text-align: left;
  padding-top: 50px;
  margin-bottom: 60px;
}
.content .main {
  text-align: left;
}
.content .toptitle {
  font-weight: 400;
  font-size: 20px;
  border-bottom: 2px solid #b90808;
  padding-bottom: 8px;
  margin-bottom: 30px;
  text-transform: uppercase;
}
.content h2.toptitle.topspace {
	margin-top:30px;
	color:black;
}
.content .toptitle .small {
  text-align: right;
  padding-left: 10px;
  font-size: 18px;
  float: right;
  padding-top: 4px;
  text-transform: none;
}
article p {
  font-size: 16px;
  margin: 0 0 30px;
  padding: 0;
  line-height: 30px;
  /* padding-left: 36px; */
}
article p.top {
  padding-left: 0;
}
article h1,
article h2,
article h3 {
  font-size: 20px;
  color: #b90808;
  /* text-transform: uppercase; */
  margin: 5px 0 0;
  padding: 0;
}
article h1 {
  font-size: 30px;
  text-transform: uppercase;
}
article h3 {
  /* font-size: 17px; */
}
article h2, article h3{
  padding-top: 5px;
  padding-bottom: 8px;
}
article ul {
  margin: 10px 0 30px;
  padding: 0;
}
article ul li {
  padding-left: 36px;
  position: relative;
  font-size: 16px;
  margin-bottom: 10px;
}
article ul li::before {
  content: "";
  width: 10px;
  height: 10px;
  position: absolute;
  left: 15px;
  top: 8px;
  background: #b90808;
  border-radius: 100%;
}
article a, .news .text a, .showarchive a, .box a{
  border-bottom: 1px dotted #b90808;
  color: #b90808;
}
.partners a{
  border-bottom: none;
  color: #b90808;
}
article a:hover, .news .text a:hover, .showarchive a:hover, .box a:hover{
  border: 0;
}
.boxlist {
  width: 100%;
  display: table;
}
.boxlist h2{
  font-size: 26px;
}

#data {width: 100%; max-width: 560px; box-sizing: content-box; text-align: center;}
    #data * {box-sizing: content-box;}
    #data .btn {background: #b90808; color: #fff; border-radius: 8px; padding: 8px;display: block;}
    #data .btn:hover {background: #fff; color: #b90808;}
.videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
	height: 0;
}
.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}    

.boxlist .box {
  width: 48.4%;
  float: left;
  text-align: left;
  margin-bottom: 35px;
  margin-top: 5px;
  position: relative;
}
.boxlist .box::before{
  content: "";
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  z-index: -1;
  background: #ededed;
  height: 70%;
}
.boxlist .box:nth-child(2n+2) {
  margin-right: 1.6%;
}
.boxlist .box:nth-child(2n+1) {
  margin-left: 1.6%;
}
.boxlist .box h3 {
  background: #cecccd;
  color: #b90808;
  border-radius: 0 50px 0 0;
  text-transform: uppercase;
  margin: 0;
  padding: 10px 24px;
  /* box-sizing: border-box; */
  font-size: 16px;
}
.boxlist .box p {
  background: #ededed;
  /* box-sizing: border-box; */
  margin: 0;
  padding: 14px 24px;
  font-size: 16px;
  line-height: 26px;
}

.boxlist .col50, .boxlist .col100{
  width: 48.4%;
  float: left;
  display: block;
  margin-bottom: 15px;
  clear: left;
}
.boxlist .col50.right, .boxlist .row .col50:nth-child(2){
  float: right;
  clear: none;
}
.boxlist .col100{
  width: 100%;
}
.boxlist .col100 .box:nth-child(2n+2){
  clear: left;
}

@media screen and (max-width: 700px){
    .boxlist .col50, .boxlist .col100{
	  width: 100%;
	  float: left;
	  display: block;
	  margin-bottom: 10px;
	  clear: left;
	}
}

.boxlist .col50 .box{
  width: 100%;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.boxlist .w50, .boxlist .w100{
  display: block;
  width: 100%;
  float: left;
  margin-top: 15px;
}
.boxlist .w50{
  width: 50%;
}
/*
.boxlist .row{
  display: table;
  width: 100%;
  margin: 5px 0 35px;
}
.boxlist .row .box{
  display: table-cell;
  float: none;
  margin: 0;
}*/

.boxlist .row{
  display: table;
  width: 100%;
}


.news {
  width: 100%;
  display: table;
}
.news .item {
  display: table;
  width: 100%;
  margin-bottom: 15px;
  position: relative;
}
.news .date {
  position: absolute;
  margin: 0;
  padding: 0;
  left: 0;
  top: 0;
  width: 32px;
  text-align: center;
}
.news .date .day,
.news .date .month {
  color: #fff;
  text-align: center;
  display: block;
  width: 100%;
}
.news .date .day {
  background: #b90808;
  font-size: 24px;
  padding: 3px 0;
}
.news .date .month {
  background: #000;
  font-size: 12px;
  padding: 1px 0;
}
.news .text {
  box-sizing: border-box;
  width: 100%;
  padding-left: 49px;
  text-align: left;
}
.news .text h2 {
  font-size: 16px;
  font-weight: 600;
  text-align: left;
  margin: 0 0 5px;
  padding: 0;
}
.news .text p {
  font-size: 16px;
  line-height: 26px;
  text-align: left;
  margin: 0;
  padding: 0;
}

.showarchive{
  margin-top: 25px;
  padding-left: 49px;
}


.contentlist {
  width: 100%;
  display: table;
}
.contentlist .box {
  margin-bottom: 40px;
}
.contentlist .row {
  width: 100%;
  display: table;
}
.contentlist .col {
  width: 60%;
  float: left;
}
.contentlist .col:nth-child(2n+2) {
  width: 40%;
}
.contentlist h2 {
  color: #b90808;
  font-size: 20px;
  text-transform: uppercase;
  margin: 0 0 5px;
  padding: 0;
}
.contentlist p {
  line-height: 30px;
  font-size: 16px;
  margin-top: 0;
  padding-top: 0;
  margin-bottom: 30px;
}
.partners {
  width: 100%;
  display: table;
}
.partners .box {
  width: 33.33333333%;
  height: 200px;
  float: left;
  box-sizing: border-box;
  margin-bottom: 60px;
  text-align: center;
  display: table;
  position: relative;
}
.partners .box img {
  width: auto;
  height: auto;
  display: inline-block;
  vertical-align: middle;
}
.partners .box a{
}
.partners .box a {
  width: 100%;
  height: 100%;
  vertical-align: middle;
  text-align: center;
  display: table-cell;
}
.partners .box p {
  font-size: 16px;
  text-align: center;
  position: absolute;
  bottom: -15px;
  left: 0;
  width: 100%;
}

/* footer */
.bottom {
  width: 100%;
  display: table;
  padding: 20px 0;
}
.bottom p {
  margin: 0;
  padding: 0;
  font-size: 14px;
  text-align: center;
  color: #bbb;
}

/* iframe */
.iframebox{
  width: 100%;
  height: 650px;
  margin-top: 25px;
}
.virtualni-prohlidka{
  width: 100%;
  height: 100%;
}

/* strankovani */

.pagination{
  width: 100%;
  display: table;
  text-align: center;
  padding: 25px 0;
}
.pagination a{
  display: inline-block;
  margin: 0 2px;
  border-radius: 5px;
  background: #cecccd;
  padding: 5px 11px;
  font-size: 14px;
}
.pagination a span{
  font-weight: 600;
}
.pagination a:hover,
.pagination a.active{
  background: #b90808;
  color: #fff;
}


/* formular */

.cmsform ul{
  margin: 25px 0 50px;
}
.cmsform li{
  padding-left: 0;
  position: relative;
}
.cmsform ul li:before{
  display: none !important;
}
.cmsform ul li.fsubmit{
  padding-left: 170px;
}


.cmsform label{
  width: 150px;
  display: block;
  float: left;
  padding-right: 20px;
  font-size: 18px;
  position: relative;
  text-align: right;
}
.cmsform li.frequired label::after{
  content: "*";
  color: #b90808;
  position: absolute;
  right: 10px;
  top: 0;
}
.cmsform input[type="text"],
.cmsform input[type="email"]{
  width: 300px;
  padding: 5px 8px;
  background: #dbdbdb;
  border: 2px solid #dbdbdb;
  box-sizing: border-box;
}
.cmsform input.fsmall{
  width: 105px;
}
.cmsform input[type="submit"]{
  width: 300px;
  padding: 8px 10px;
  background: #b90808;
  border: 0;
  color: #fff;
  text-transform: uppercase;
}
.message{
  background: #49a511;
  color: #fff;
  padding: 8px 14px;
  box-sizing: border-box;
}

.image-list {
	list-style-type:none;
	margin-bottom:15px;
}
.image-list li::before {
	content:none;
}
.image-list li {
	float:left;
	margin:0px 8px 8px 0px;
	padding:0px;
}

@media screen and (max-width: 900px){
    .tophead img {
    display: block;
    max-height: 90px;
}
    }

@media screen and (max-width: 780px){
    .tophead img {
    display: block;
    max-height: 70px;
    margin-top: 35px;
}
    }

@media screen and (max-width: 580px){
  .cmsform label{
    width: 100%;
    padding-right: 0;
    text-align: left;
  }
  .cmsform li.frequired label::after{
    position: relative;
    padding-left: 5px;
    top: auto;
    right: auto;
  }
  .cmsform input[type="text"], .cmsform input[type="email"],
  .cmsform input[type="submit"]{
    width: 100%;
    max-width: 350px;
  }
  .cmsform ul li.fsubmit{
    padding-left: 0;
  }
    .tophead .maps {flex: none;     height: 70px;}
}

@media screen and (min-width: 640px){

	.logotypethumb {
		margin-bottom:20px;
		float:left;
		width:230px;
		clear: left;
	}
	.logotypethumb img {
		border:1px solid #dbdbdb;
	}
	.logotypelinks {
		float:left;
	}
	.logotypelinks h4 {
		font-size: 18px;
		color: #000;
		margin: 5px 0 8px;
		padding: 0;	
	}
	
	#news-image {
		float:right;
		margin:0 0 15px 20px;
	}
}

@media screen and (max-width: 900px){
    .partners-two {flex-wrap: wrap;}
    .partners-homepage {flex-wrap: wrap;}
	
   
   .partners-homepage .ph-two, .partners-homepage .ph-one {
		width:100%;
	}
}

@media screen and (max-width: 640px){
  .partners-two  .box {width: 100%;}
    .tophead .main{
            flex-wrap: wrap;
        }
    .tophead .logo-ikem, .tophead .logo {width: 48%; margin: 0;}    
    .tophead img {width: 100%;
    height: auto;
    object-fit: contain;
    }
    .tophead .maps {flex: none;     height: 90px;}
	.logotypethumb {
		margin-bottom:15px;
		text-align:center;
	}
	.logotypethumb img {
		border:1px solid #dbdbdb;
	}
	.logotypelinks {
		text-align:center;
		margin-bottom:25px;
	}
	.logotypelinks h4 {
		font-size: 18px;
		color: #000;
		margin: 5px 0 8px;
		padding: 0;	
	}
	
	#news-image {
		float:none;
		margin-bottom:15px;
		text-align:center;
	}
	#news-image img {
		height:auto;
		width:auto;
		max-width: 100%;
	}
}

.contact-pictures .box, .contact-pictures .box p {
	clear:both;
}
.profile-picture {
	float:left;
	margin-right:12px;
	margin-bottom:20px;
}

.partners-homepage {
	display: flex;
    justify-content: space-between;
}
.ph-two {
	width:62%;
}
.ph-one {
	width:32%;
}

.partners-two {    display: flex;
    justify-content: space-around;}
.partners-two p, .partners-one p {text-align: center;}
.partners-two .image, .partners-one .image {text-align: center;  height: 150px; vertical-align:middle;}
.partners-two .image img, .partners-one .image img {margin: auto; display: block;}

.stand-out {
	font-weight:600;
}

.box strong a {
	font-weight:600;
}

.yt-popup {
	min-width:800px;
}
@media screen and (max-width: 900px){
	.yt-popup {
		min-width:80vw;
	}
}
@media screen and (max-width: 500px){
	.yt-popup {
		min-width:auto;
	}
}

.news-and-socials {
  display: flex;
  flex-direction: row;
  align-items: baseline;
}
.news-and-socials--news {
  padding-right: 40px;
}
.news-and-socials--socials {
  min-width:340px;
}
.news-and-socials--socials .toptitle {
  text-transform: none !important;
}
@media screen and (max-width: 768px){
  .news-and-socials {
    flex-direction: column;
  }
  .news-and-socials--news {
    padding-right: 0px;
  }
  .news-and-socials--socials {
    min-width:100%;
  }
  .news-and-socials--socials {
    text-align:center;
  }
  .news-and-socials--socials .toptitle {
    text-align:left;
  }
}