html, body {margin: 0; padding: 0;}
html {font: 13px/1.5 'Open Sans', sans-serif; color: #666; background: #fff url('../img/bg.png') 0 0 repeat-x;}
html.index {background-image: url('../img/bg-index.png');}

h1 {margin: 0; font-size: 25px; font-weight: normal; color: #085098;}
h2 {margin: 30px 0 0; font-size: 20px; font-weight: normal; color: #085098;}
h3 {margin: 15px 0 0; font-size: 15px; font-weight: normal; color: #085098;}


p {margin: 15px 0;}
ul, ol {margin: 15px 0; padding: 0 0 0 40px;}
ul.lower-alpha li {list-style-type: lower-alpha;}

h1 + h2 {margin-top: 15px;}
/*h1 + p {margin-top: 0;}
h2 + p {margin-top: 0;}
h3 + p {margin-top: 0;}
h2 + ul, h2 + ol {margin-top: 0;}
h3 + ul, h3 + ol {margin-top: 0;}
h1 + h2 {margin-top: 0;}
h2 + h3 {margin-top: 0;}*/

a {color: #085098; text-decoration: underline;}
a:hover {text-decoration: none;}
a img {border: none;}

table {margin: 16px 0; border-collapse: collapse; border: 1px solid #ddd;}
table tr:nth-of-type(2n+1) {background: #f7f7f7;}
table th {text-align: left; font-weight: bold; color: #085098; background: #f7f7f7; border-bottom: 1px solid #ddd;}
table th, table td {padding: 5px 10px; vertical-align: top;}
table.vertical tr:nth-of-type(2n+1) {background: transparent;}
table.vertical th, table.vertical td {border-bottom: 1px solid #ddd;}
table.vertical th {border-right: 1px solid #ddd;}

#wrap {width: 980px; margin: 0 auto; padding: 0 5px; overflow: hidden;}
.in {width: 980px; margin: 0 auto; padding: 0 5px;}

#head {position: relative; height: 195px; margin: 0;}
#head #logo {position: absolute; left: 0; top: 30px;}
#head .lang {position: absolute; right: 0; top: 5px;}
#head .bnnr {position: absolute; right: 0; top: 50px;}

#foot {clear: both; margin: 15px 0 0; text-align: right; background: #085098 url('../img/foot.png') 0 0 repeat-x; font-size: 12px; color: #fff;}
#foot .in {padding: 20px 5px;}
#foot a {color: #fff; text-decoration: none;}
#foot a:hover {text-decoration: underline;}

ul#menu {position: absolute; bottom: 0; left: 0; display: -webkit-box; display: -ms-flexbox; display: flex; width: 980px; margin: 0; padding: 0; background: #085098 url('../img/menu.png') 0 0 repeat-x; font-size: 14px;}
ul#menu li {position: relative;    -webkit-box-flex: 1; -ms-flex: 1; flex: 1; float: left; list-style-type: none; border-right: 1px solid #33619a;}
ul#menu li a {display: block; /*width: 138px;*/ height: 40px; padding: 10px 0; line-height: 40px; color: #fff; text-decoration: none; border-right: 1px solid #00234f; text-align: center; text-shadow: 1px 1px #000;}
ul#menu li a span {display: inline-block; line-height: 20px;}
ul#menu li:first-child {border-left: 1px solid #00234f;}
ul#menu li:first-child a {border-left: 1px solid #33619a;}
ul#menu li:hover a, ul#menu li.active a {color: #fff; background: #06386b;}
/*ul#menu li.kontakty a {width: 136px;}*/
ul#menu li:hover div {display: block;}
ul#menu li div {display: none; position: absolute; top: 51px; left: -9px; min-width: 161px; padding: 10px; z-index: 999;}
ul#menu li div ul {margin: 0; padding: 0; background: #eee; font-size: 14px; border: 1px solid #fff; box-shadow: inset 0 0 20px #ccc, 0 0 3px #333}
ul#menu li div ul li {float: none; border: none !important;}
ul#menu li div ul li a {width: auto; height: auto; padding: 5px 15px; line-height: 1.5; text-align: left; border: none !important; color: #666 !important; background: transparent !important; white-space: nowrap; text-shadow: none;}
ul#menu li.active div ul li a {color: #666; background: transparent;}
ul#menu li div ul li a:hover {color: #085098 !important;}

ul#menu-left {margin: 0 0 20px; padding: 0;}
ul#menu-left li {list-style-type: none;}
ul#menu-left li a {display: block; padding: 7px 0 7px 21px; color: #085098; background: url('../img/arrow.png') 5px 15px no-repeat; text-decoration: none; border-top: 1px dashed #ddd;}
ul#menu-left li:first-child a {border-top: none;}
ul#menu-left li a:hover {color: #333; text-decoration: underline;}
ul#menu-left li.active > a {font-weight: bold;}
ul#menu-left li ul {margin: 0 0 0 25px; padding: 0; font-size: 12px;}
ul#menu-left li ul li a {padding: 3px 0 3px 10px; border-top: none; background: url('../img/arrow-small.png') 0 11px no-repeat; color: #333;}

.menu-left-documents {margin: 20px -20px 0 0;}
.menu-left-documents a {display: inline-block; margin: 0 20px 0 0; box-shadow: 0 0 5px rgba(0, 0, 0, .2);}
.menu-left-documents a img {display: block;}

#slideshow {margin: 30px 0 60px; box-shadow: 0 0 5px #aaa;}
#slideshow img {display: block;}

#main {position: relative; margin: 30px 0 0;}
#left {float: left; width: 240px;}
#content {width: 980px; min-height: 600px; padding: 0; text-align: justify;}
#left + #content {float: right; width: 710px;}

#left h2 {margin: 0 0 7px; padding: 10px 15px; font-size: 15px; background: #e6edf4; border-radius: 5px;}


.row {width: 1005px; margin: 15px 0;}
.row .col-1-3 {float: left; width: 310px; margin-right: 25px; padding: 0;}
.row .col-1-3 .item {margin: 0 0 30px;}
.row h2 {margin: 0;}
.row .col-1-3 .item.video h2 {margin: 0 0 15px;}

.row .news {font-size: 12px;}
.row .news .item {margin: 15px 0;}
.row .news h2 a {text-decoration: none;}
.row .news h2 a:hover {text-decoration: underline;}
.row .news h3 {margin: 0; font-size: 13px; font-weight: bold;}
.row .news h3 a {color: #333;}
.row .news p {margin: 7px 0;}
.row .news h3 + p  {margin-top: 0;}

.row.lines {background: url('../img/row-lines.png')}

.department {margin-bottom: 30px; font-size: 11px;}
.department .col-1-3 {position: relative; padding-bottom: 8px; background: #f7f7f7; background: linear-gradient(#fff, #eee); box-shadow: 0 0 5px #aaa;}
.department img {display: block;}
.department h2 {margin: 7px 0 15px; padding: 0 15px; font-size: 18px; text-align: center;}
.department h2 a {text-decoration: underline;}
.department h2 a:hover {text-decoration: none;}
.department h3, .department p, .department ul {margin: 7px 0; padding: 0 15px;}
.department h3 {font-size: 13px;}
.department ul li {padding: 0 0 0 21px; background: url('../img/arrow.png') 0 8px no-repeat; list-style-type: none;}
.department .col-1-3 a.volne-misto {top: 10px; right: 10px; font-size: 13px;}

table.projekty th {width: 50%;}
img.contact-photo {float: left; margin: 15px 15px 0 0; border: 5px solid #fff; box-shadow: 0 0 3px #aaa;}
ul.page-list {font-size: 15px;}
a.map img {border: 1px solid #085098;}
a.map:hover img {border-color: #000;}

.text-img {width: 726px;}
.text-img span {display: block; float: left; width: 226px; margin: 0 16px 0 0; text-align: center; font-size: 11px;}

.gallery {margin: 0 0 24px; }
.gallery .img {width: 724px;}
.gallery .img a {display: block; width: 157px; float: left; margin: 0 14px 15px 0; border: 5px solid #fff; box-shadow: 0 0 3px #aaa;}
.gallery .img a:hover {box-shadow: 0 0 3px #085098;}
.gallery .img img {display: block; width: 100%;}

.gallery-detail .img {width: 100%;}
.gallery-detail p.back {text-align: center;}

form {margin: 8px 0 15px; font-size: 12px;}
form div {margin: 0 0 10px;}
form label {display: block;}
form input[type=text] {width: 150px; font: 12px/1.5 'Open Sans',sans-serif}
form textarea {width: 300px; height: 90px; font: 12px/1.5 'Open Sans',sans-serif; resize: vertical;}
form input[type=checkbox] + label {display: inline;}
form .validator-msg {color: #f00;}
form #otazka input[type=text] {width: 20px;}
.js form .validator-msg {display: none;}

.strankovani {text-align: center; font-size: 12px; color: #000000;}
.strankovani a {color: #000000; padding: 3px 7px; text-decoration: none; font-weight: normal; border: 1px solid #eee; border-radius: 4px;}
.strankovani a:hover {background: #fff; color: #000;}
.strankovani label {padding: 0 1px; font-weight: bold;}
.strankovani label.oddelovac {font-weight: normal;}
.strankovani .vybrana {padding: 3px 7px; margin: 0 1px; background: #fff; border: 1px solid #085098; color: #000; font-weight: bold; border-radius: 4px; }

a.volne-misto {position: absolute; top: 1px; right: 0; display: block; padding: 5px 20px; color: #fff; background: #085098; text-decoration: none; font-size: 17px; -webkit-animation: volne-misto 1.5s infinite; animation: volne-misto 1.5s infinite;}
a.volne-misto:hover {background: #f00; -webkit-animation: none; animation: none;}
@-webkit-keyframes volne-misto {
    0% {background-color: #085098;}
    50% {background-color: #d00;}
    100% {background-color: #085098;}
}
@keyframes volne-misto {
    0% {background-color: #085098;}
    50% {background-color: #d00;}
    100% {background-color: #085098;}
}

.left {float: left;}
.right {float: right;}

.tright {text-align: right;}
.tcenter {text-align: center;}

.clearfix:after, .cf:after {visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0;}
.clearfix, .cf {display: inline-block;}
/* start commented backslash hack \*/
* html .clearfix, * html .cf {height: 1%;}
.clearfix, .cf {display: block;}
/* stop commented backslash hack */