body {
    line-height: 1.65em;
    font-size: 14px;
    padding: 0px;
    margin: 0px;
    color: #5d5d5d;
    font-family: 'Open Sans', sans-serif;
    padding-bottom: 20px;
}

body > header {
    width: 100%;
    height: 600px;
    background: url(./css/homepage.jpg) no-repeat center center;
    background-size: cover;
    position: relative;
    overflow: hidden;
}

body > header.header-bg-18 {
    background: url(./img/kancelare-bg.jpg) no-repeat center center;
    background-size: cover;
}

body > header.header-bg-25 {
    background: url(./img/lokalita-bg.jpg) no-repeat center center;
    background-size: cover;
}

body > header.header-bg-12 {
    background: url(./img/o-projektu-bg.jpg) no-repeat center center;
    background-size: cover;
}

body > header.header-bg-286 {
    background: url(./img/parkovani-bg.jpg) no-repeat center center;
    background-size: cover;
}

body > header.small-header {
    height: 400px;
}

header .info-part {
    position: absolute;
    left: 50%;
    bottom: 420px;
    width: 830px;
    margin-left: -415px;
}

body > header.small-header .info-part{
    display: none;
}

header .info-part h1 {
    position: relative;
    text-align: center;
    color: #FFF;
    font-size: 75px;
    line-height: 85px;
    font-weight: 900;
    margin: 0px;
    padding: 0px;
    text-transform: uppercase;
    max-width: 100%;
}

header .info-part p {
    position: relative;
    left: 50%;
    width: 570px;
    text-align: center;
    color: #FFF;
    font-size: 21px;
    margin: 0px;
    margin-left: -285px;
    margin-top: 20px;
    padding: 0px;
    border-top: 2px rgba(255,255,255,.9) solid;
    line-height: 50px;
    text-transform: uppercase;
}

body > header.small-header .bulls{
    display: none;
}

.link-to-content {
    position: absolute;
    left: 50%;
    bottom: 10px;
    width: 35px;
    height: 20px;
    display: block;
    margin-left: -17px;
    z-index: 3;
    background: url(css/scroll-down.png);
    -webkit-animation: arrow 1s;
    animation: arrow 1s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
    -webkit-animation-direction: alternate;
    animation-direction: alternate;
    -webkit-animation-play-state: running;
    animation-play-state: running;
}

@-webkit-keyframes arrow {
    0%   {bottom: 10px;}
    50%  {bottom: 30px;}
    100% {bottom: 10px;}
}

@keyframes arrow {
    0%   {bottom: 10px;}
    50%  {bottom: 30px;}
    100% {bottom: 10px;}
}

.bulls {
    text-align: center;
    position: absolute;
    left: 0;
    bottom: 64px;
    width: 100%;
}

.bulls .bull {
    display: inline-block;
    width: 258px;
    height: 258px;
    position: relative;
    border-radius: 50%;
    overflow: hidden;
    margin: 0 12px;
    text-decoration: none;
}

.bulls .bull-front, 
.bulls .bull-back {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    transition: all .5s;
    border-radius: 50%;
    overflow: hidden;
}

.bulls .bull-back {
    opacity: 0;
    background: rgba(43,182,115,.7);
    color: #fff;
    font-size: 20px;
    padding-top: 85px;
    line-height: 1.5em;
    font-weight: 100;
    box-sizing: border-box;
}
.bulls .bull-front {
    background: rgba(255,255,255,.7);
    font-size: 24px;
    color: #3a3a3a;
    font-weight: 100;
    line-height: 1.5em;
}

.bulls .bull:hover .bull-back,
.bulls .bull:hover .bull-front {
    transform: rotate(360deg);
}

.bulls .bull:hover .bull-back {
    opacity: 1;
}
.bulls .bull:hover .bull-front {
    opacity: 0;
}

.bulls .bull .bull-front:before {
    content: "";
    display: block;
    width: 100%;
    height: 83px;
    margin-top: 37px;
}

.bulls .bull:nth-child(1) .bull-front:before {
    background: url(css/ico-stopky.png) no-repeat top center;
}

.bulls .bull:nth-child(2) .bull-front:before {
    background: url(css/ico-24.png) no-repeat top center;
}

.bulls .bull:nth-child(3) .bull-front:before {
    background: url(css/ico-time.png) no-repeat top center;
}

.bulls .bull:nth-child(4) .bull-front:before {
    background: url(css/ico-calc.png) no-repeat top center;
}

table {
    width: 100%;
}

table tr td {
    border-radius: 4px;
    text-align: center;
    padding: 16px 10px;
    font-weight: 500;
    border: 1px #ecefee solid;
}

table tr:first-child td {
    font-weight: 100;
    font-size: 24px;
    color: #fff;
    padding: 28px 40px;
    text-align: left;
    border: none;
    background: url(css/park.png) #2bb673 no-repeat center right; 
}

table tr:nth-child(2) td {
    font-weight: 600;
    background: #ebeeed!important;
}

table tr:nth-child(2n+2) td {
    background: #f9fafa;
}

body > section {
    position: relative;
    z-index: 1;
    background: #FFF;
}

header > nav {
    width: 100%;
    padding: 0;
    position: relative;
    z-index: 2;
}

header > nav ul {
    background: rgba(255,255,255,.9);
    font-size: 0;
    margin: 0px;
    padding: 0px 25px;
    text-align: right;
}

header > nav ul li {
    list-style: none;
    display: inline-block;
}

header > nav ul li a {
    text-decoration: none;
    text-transform: uppercase;
    padding: 0px 25px;
    display: block;
    color: #5d5d5d;
    font-weight: 300;
    font-size: 18px;
    line-height: 96px;
}

header > nav ul li.current_page_item a, header > nav ul li a:hover {
    color: #fff; 
    background: #2bb673;
}


footer .part {
    width: 185px;
    padding: 3px 0px 3px 10px;
}

footer a {
    color: #5d5d5d;
    text-decoration: none;
}

footer a span {
    color: #2bb673;
}

footer a:hover {
    text-decoration: underline;
}

table, p {
    margin-bottom: 1.65em;
}


h1, h2, h3, h4, h5 {
    font-weight: 300;
    line-height: 1.55em;
}

h1, h2.like-h1 {
    font-size: 36px;
}

h2 {
    font-size: 24px;
}

h3 {
    font-size: 18px;
}

a, .link-like {
    color: #2bb673;
    cursor: pointer;
}

a img {
    text-decoration: none;
}

a[href$='.pdf'] {
    display: inline-block;
    background: url("./css/icon-file.png") no-repeat scroll 20px center rgba(0, 0, 0, 0);
    border: 1px solid #5D5D5D;
    border-radius: 5px;
    color: #2bb673;
    line-height: 50px;
    padding: 0 25px 0 60px;
    float: right;
    margin: 10px;
    text-decoration: none;
}

a[href$='.pdf']:hover {
    text-decoration: underline;
}

a.pdf-width-image {
	display: inline;
	margin: none;
	padding: none;
	line-height: auto;
	float: none;
	text-decoration: none;
	background: none;
	border: none;
}

a:hover, .link-like:hover {
    text-decoration: none;
}

input, textarea {
    font-family: 'Open Sans', sans-serif !important;    
}

input[type="submit"]:hover {
    opacity: 0.9;
}


img {
    max-width: 100%;
    height: auto;
}

a img {
	display: block;
	margin: 0px auto;
}

.clearfix{
    *zoom: 1;
}

.clearfix:before, .clearfix:after{
    content:" ";
    display:table;
}

.clearfix:after{
    clear:both;
}

.full-width {
    width: 100%;
}

.container {
    max-width: 100%;
    margin: 0px auto;
    text-align: left;
    width: 1140px;
    padding: 0px;
    overflow: hidden;
}

.container-inner {
    padding: 50px 30px;      
}

.container-inner-strip {
    padding: 0px 30px;      
}

.container-simple {
    max-width: 100%;
    padding: 0px;
    margin: 0px auto;
    text-align: left;
    width: 1140px;
}

.container-simple .container-inner {
    padding: 0px 30px;
}

.no-bottom-space {
    margin-bottom: 0px;
    padding-bottom: 0px;
}

.strip {
    background: #EBEEED;
    min-height: 100px;
    padding: 60px 0px;
}

.strip h2 {
    margin-top: 0px;
    font-size: 36px;
}

.pull-left {
    float: left;
}

.pull-right {
    float: right;
}

.pull-left-nice {
    float: left;
    margin: 0px 15px 15px 0px;
}

.pull-right-nice {
    float: right;
    margin: 0px 0px 15px 15px;
}

.scroll-to {
    display: block;
    width: 185px;
    height: 60px;
    border-top-right-radius: 5px;
    border-top-left-radius: 5px;
    color: #000;
    text-decoration: none;
    line-height: 50px;
    text-align: center;
    position: absolute;
    bottom: 0px;
    left: 50%;
    margin-left: -92px;
    background: #FFF url(./css/arrow-down.jpg) no-repeat center 35px; 
}

.logo a {
    display: block;
    position: relative;
    z-index: 3;
    text-decoration: none;
    width: 501px; 
    height: 221px;
    display: block;
    position: absolute;
    left: 0px;
    top: 0px;
    background: url(./css/logo.png) no-repeat left top;
    background-size: contain;
}

.btn {
    border: #5D5D5D 1px solid;
    border-radius: 5px;
    color: #2bb673;
    line-height: 50px;
    padding: 0px 25px;
}

.btn-icon {
    padding-left: 60px;
}

.btn-file-icon {
    background: url(./css/icon-file.png) no-repeat 20px center;
}

.one-third, .one-fifth {
    width: 33.33%;
    text-align: center;
    float: left;
}

.one-fifth {
    width: 20%;
}

.one-third img, .one-fifth img {
    max-width: 96%;
    height: auto;
}

.one-half {
    width: 50%;
    text-align: left;
    float: left;
    position: relative;
}

.one-half-image img{
    position: absolute;
    bottom: -50px;
    right: 0;
    max-width: 90%;

}

.bg-tail {
    position: relative;
    text-align: center;
}

.bg-tail img {
    width: 100%;
    margin: 0px auto;
}

.outer-link {
    display: block;
    font-size: 24px;
    font-weight: 200;
    line-height: 82px;
    color: #5d5d5d;
    border-radius: 6px;
    text-decoration: none;
    margin-bottom: 5px;
    padding: 0px 30px 0px 80px;
    background: #ECEEED url(./css/external.jpg) no-repeat 20px center;
}

.outer-link:hover {
    color: #2bb673;
    background: #ECEEED url(./css/external-hover.jpg) no-repeat 20px center;
}

.outer-link span {
    color: #2bb673;
    text-transform: uppercase;
    font-size: 14px;
    font-weight: 400;
    float: right;
}

.footer-big {
    font-size: 36px;
    font-weight: 300;
}

.one-fifth {
    text-align: center;
    margin-bottom: 0px;
    display: block;
}

.img-container {
    position: relative;
    display: inline-block;
    max-width: 96%;
    margin: 0px 5px;
}

.img-container a, a.fancybox {
    display: block;
    padding: 0px;
    border: 0px !important;
    max-width: 100%;
}

.img-container a img, a.fancybox img{
    margin: 0px;
    padding: 0px;
    border: 0px !important;
    max-width: 100%;
    height: auto;
    display: block;
}


.img-container a:before, a.fancybox:before {
    content : " ";
    background: #000;
    position: absolute;
    width: 100%;
    height: 100%;
    display: block;
    transition: all 0.5s ease-out;
    opacity: 0;
}



.img-container a:after, a.fancybox:after {
    content : "+";
    font-size: 30px;
    border: #FFF 3px solid;
    padding: 15px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -27px;
    margin-top: -35px;
    font-weight: 900;
    font-family: arial;
    color: #FFF;
    text-decoration: none;
    opacity: 0;
    transition: all 0.5s ease-out;
}

.img-container a:hover:before, a.fancybox:hover:before{
    opacity: 0.6;
}

.img-container a:hover:after, a.fancybox:hover:after{
    opacity: 1;
}

.contact-message {
    padding: 30px; 
    text-align: left; 
    margin-bottom: 100px; 
    background: #FFF;
    color: #2AB72A;
}

#map-logo {
    width: 326px;
    height: 112px;
    background: url(./css/map-logo.png) no-repeat left top;
    position: absolute;
    left: 25px;
    top: 50px;
}

#map-canvas {
    width: 100%;
    height: 610px;
}

#map-overlay {
    position: relative;
    bottom: 610px;
    height: 0px;
    overflow: visible;
}

#map-form {
    position: absolute;
    width: 385px;
    background: #2bb673;
    padding: 45px 45px 0px;
    overflow: hidden;
    right: 30px;
    bottom: -610px;
}

#map-form h2 {
    margin-top: 0;
    color: #FFF;
}

#map-form input, #map-form textarea {
    min-height: 40px;
    display: block;
    width: 365px;
    padding: 5px 10px;
    border: 0px;
    margin-bottom: 10px;
    border-radius: 3px;
    font-size: 14px;
}

#map-form textarea {
    margin-bottom: 35px;
}

#map-form input[type="submit"] {
    width: 475px; 
    margin: 0px;
    padding: 0px;
    text-align: center;
    height: 60px;
    line-height: 60px;
    background: #018b35;
    color: #FFF;
    font-weight: 300;
    font-size: 24px;
    border-radius: 0px;
    margin-left: -45px;
    margin-right: -45px;
    cursor: pointer;
}

.lang-switcher
{
    float:right;
    width: 80px;
    height: 96px;
    display: flex;
    justify-content: center;
    align-items: center;
    background:rgba(255,255,255,.9);
}

.lang-switcher a
{
    text-decoration: none;
    color:#000;
}

.lang-switcher a.active,
.lang-switcher a:hover
{
    color:#2bb673;
}

.lang-switcher-mobile
{
    position: absolute;
    top:16.5px;
    right: 56px;
    display: none;
}

.lang-switcher-mobile a
{
    color:#fff;
    text-decoration: none;
}

.lang-switcher-mobile a.active,
.lang-switcher-mobile a:hover
{
    color:#2bb673;
}

header > nav ul
{
    float:left;
    width:calc(100% - 80px);
    padding:0px;
}

@media(max-width: 1600px) {

    header .info-part {
        bottom: 340px;
    }

    header .info-part h1 {
        font-size: 62px;
        line-height: 1.3em;
    }
    
    .bulls {
        bottom: 20px;
    }
    
    header > nav ul li a {
        line-height: 70px;
        font-size: 14px;
    }
    
    .logo a {
        width: 370px;
        height: 163px;
    }

    .lang-switcher
    {
        height: 70px;
    }

}

@media(max-width: 1350px) {

    .scroll-to {
        left: 20%;
    }
    
    header .info-part h1 {
        font-size: 35px;
    }

}

@media(max-width: 1150px) {


    header .info-part p {
        display: none;
    }
    
    .bulls {
        display: none;
    }
    
    header .info-part {
        bottom: 140px;
    }



}

@media(max-width: 1000px) {

    .logo a {
        width: 264px;
        height: 147px;
    }


    header > nav {
        margin-top: 60px;
        width: 100%;
        padding: 0;
        z-index: 4;
        position: absolute;
    }
    
    .mobile_menu {
        content: "";
        display: block;
        width: 36px;
        height: 36px;
        position: absolute;
        top: 10px;
        right: 10px;
        background: url(css/menu.png);
        background: url(css/menu.svg);
        background-size: 36px 36px;
        cursor: pointer;
        z-index: 4;
    }

    header > nav ul {
        text-align: center;
        padding-top: 10px;
        padding-bottom: 10px;
        display: none;
        background: #fff;
        box-shadow: 0 0 2px #999;
    }

    header > nav ul li {
        display: inline;
    }

    header > nav ul li a {
        display: block;
        line-height: 44px;
        font-size: 16px;
    }

    body > header {
        height: 100px!important;
        position: static;
    }
    
    .page-id-10 > header {
        height: auto!important;
    }

    
    .page-id-10 > header .info-part {
        position: static;
        margin-left: 0;
        width: 100%;
        margin-top: 100px;
    }
    
    .bulls {
        display: block;
        position: static;
        margin: 20px 5px;
    }
    
    .bulls .bull {
        width: 129px;
        height: 129px;
    }

    .bulls .bull-back {
        font-size: 10px;
        padding-top: 42px;
    }
    .bulls .bull-front {
        font-size: 12px;
    }
    
    .bulls .bull .bull-front:before {
        background-size: 32px 32px!important;
        height: 41px;
        margin-top: 18px;
    }

    .lang-switcher-mobile
    {
        display: block;
    }

    .lang-switcher
    {
        display:none;
    }
}

@media(max-width: 700px) {

    .scroll-to {
        display: none;
    }
    
    table tr:first-child td {
        padding: 5px 50px 5px 10px;
        font-size: 12px;
    }
    
    table tr td {
        padding: 2px;
        font-size: 8px;
        line-height: 1.4;
    }

}

@media(max-width: 560px) {

    .map-tail {
        display: none;
    }

    .one-third {
        width: 50%;
    }

    .one-fifth {
        width: 50%;
    }

    .one-half {
        width: 100%;
    }

    .one-half-image {
        display: none;
    }

}

@media(max-width: 360px) {

    .scroll-to {
        display: none;
    }

    header .info-part h1 {
        font-size: 20px;
    }
}
