
body{
  font-family: Roboto, Arial, Helvetica, sans-serif;
}

h1, .h1{
  font-size: 2.3rem;
  }
h2, .h2{
  padding: 0 0 .5em 0 ;
  font-weight: 300;
  }
h3, .h3{
  font-weight: 300;
  }
h4, .h4{
  font-weight: 400;
  }  
    

a{
   color: #58ab27;
   transition: all ease .2s;
 }  
a:hover{
   color: #333;
   text-decoration: none;
 }   
img{
	max-width: 100%;
}  
  
/**/  



.container{
  max-width: 100%;
} 
  
.container-fluid{
	max-width: 1920px;
} 
  
.text-primary {
 color: #58ab27;
 }
.text-secondary {
 color: #0099cc !important;
 }

.bg-primary {
 background-color: #58ab27 !important;
 } 
 
 
.btn-primary {
    background-color: #58ab27;
    border-color: #58ab27;
}
.btn-primary:hover {
    background-color: #333;
    border-color: #333;
}

.btn-link {
    color: #58ab27;
}
.btn-link:hover {
    color: #000;
}



.btn-lg {
    padding-left: 2em;
    padding-right: 2em;
} 



.card-header{
  background: none;
  margin-bottom: -1px;
}

.card-body {
    padding: 2rem;
}
.card-body tr{
    border-bottom: 1px solid  #eee ;
}
.card-body td{
        padding: .5em 0 ;
}

.pagination{
  margin-top: 2rem;
  margin-bottom: 2rem;

}
.page-item.active .page-link{
  background-color: #58ab27;
  border-color: #58ab27;
}

.page-link{
  color:#58ab27 ;
}


 
/**/ 
 #inpocasi  {
  width: 100% !important;

}
  
 #inpocasi  > div {
  background: #fff;
  padding: 2rem 1rem !important ;
  width: 30% !important;
  margin-right: 2%;
  border-radius: 50px;
}
 
 #inpocasi  > a {
  display: none;
}


/**/
#header{
  background: #fff;
  box-shadow: 0 0 60px -20px rgba(0,0,0,.9);
  position: relative;
  z-index: 999;
} 

.navbar{
  padding: 1.5em 0;
}
.navbar-brand{
  /*margin-right: 2em;*/
}
.navbar-brand:hover{
  opacity: .8;
}

.dropdown-toggle::after{
  color: #58ab27;

  margin-left: 0.5em;
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-left: 0.3em solid transparent;  
}

.dropdown-item {
    padding: .55rem 3.5rem .55rem 2.5rem;
}

.navbar-light .navbar-nav .nav-link{
  color: #111;
}
.navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover{
  color: #58ab27;
  outline: none;
}

.dropdown-item.active, .dropdown-item:active{
  background:  #58ab27 ;
}

.dropdown-item:focus, .dropdown-item:hover {
    color: #58ab27;
}

@media (min-width: 1480px){
.navbar-expand-xl .navbar-nav .nav-link {
    padding-right: 1.0rem;
    padding-left: 1.0rem;
	}
}

#frm-vyhledavani-form-q{
	margin-right: 0 !important;
}

/**/

.col-left{
    box-shadow: 0 -100px 100px -100px rgba(50,50,50,.15) inset;
}

.title-half{
   border-bottom: 1px solid rgba(0,0,0,0.2) ;
   margin-bottom: .5em;
   padding-top: 1.5em;
   padding-bottom: 1em;
   
}

.col-lg:nth-of-type(even) .title-half{
  border-color: #fff;
}

.article{
   border-bottom: 1px solid rgba(0,0,0,0.2) ;
   padding-top: 3em ;
   padding-bottom: 3em ;
   /* padding-right: 8.333333%; */
}
.article h3{
   padding-top: .3em ;
   padding-bottom: .3em ;
   /* padding-right: 8.333333%; */
}


.events{
   padding-bottom: 2em ;
   background: #bcbcbc;
   color: #fff;
  
} 
.event{
   padding-top: 2em ;
   padding-bottom: 1em ;
   background: url(../img/ico_calendar.svg) left 2em no-repeat;
   background-size: 3.7em auto ;
   padding-left: 5em;
} 
.col-lg:nth-of-type(even) .event a{
   color: #333;
   font-weight: 500;
} 
.col-lg:nth-of-type(even) .event a:hover{
   color: #fff;
} 


.weather{
 /* background: #2eaadd;*/
  padding-bottom: 5em ;
  
}
.weather .title-half{
 /* color: #fff;*/
}
.weather-ico{
  background: #fff;
  border-radius: 200px;
  padding: 40px ;
  margin-bottom: 1em;
}



.infocentrum{
  /*background: #118f40;*/
  padding-top: 3em ;
  padding-bottom: 3em ;
  font-size: 1.5em;
  font-weight: 300;
  line-height: 1.7;
}

.infocentrum a{
  /*color: #fff;*/
}
.infocentrum a:hover{
 /* color: #999;*/
}

.guide{
  padding-top: 5em ;
  padding-bottom: 5em ;
  
}

.guide-item a{
  display: block;
  border: 1px solid #DBDBDB;
  padding: 2rem 15px;
  border-radius: 10px;

  margin-bottom: 1.5em;
  font-size: 1.35em;
  font-weight: 600;
  text-align: center;
}


.guide-item a:hover{
  border: 1px solid #999 ;
}


.newsletter{
  margin-top: 100px;
  padding-top: 5em ;
  padding-bottom: 5em ;
  
}

 
.descendants{
  margin: 2rem 0;
  padding: 0 ;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
} 

.descendants li{
  flex: 1 50%;
  max-width: 50%;
} 


.descendants a{
    display: block;
    padding: .8em 0 ;
    display: block;
    border-bottom: 1px solid #58ab27 ;
    margin-bottom: 10px;
    margin-right: 10px;
    font-weight: bold;
} 

#accordionCompany .card h4{
  overflow: hidden;
}
#accordionCompany .card-header{
  border-bottom: 0 ;
                }
#accordionCompany .card-body{
  padding-bottom: 4rem;
                }
                
#accordionCompany .card table{
  margin-bottom: 1.5rem;
                }
#accordionCompany .card table td:first-child{
  padding-right: 1em;
                }                
                
#accordionCompany .card p{
  margin: 0.5rem 0;
                } 
                
                

/**/
.intro{
  background: #eee url(../img/bg_intro_1.jpg) center center;
  background-size: cover;
  padding-top: 1.6vmax;
  padding-bottom:  2vmax;
  min-height: calc(250px + 15vmax);
  position: relative;
}

.intro-slider{
	margin-left: -15px;
	margin-right: -15px;
}
.owl-carousel{

}
.intro--caption{
	position: absolute;
	padding: 4rem 8rem 4rem 4rem;
	background: #ffffffdd;
	top: 4rem;
	left: 0;
}

.owl-carousel .owl-item img {
    aspect-ratio: 16 / 9;
    object-fit: cover;
}

.owl-nav{
}

.owl-prev, .owl-next{	
	position: absolute;
	top: 48%;
	left: 0;

	background: #ffffffcc;
	width: 60px;
	height: 60px;
	border-radius: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 0;
	margin: 0 15px;
	transition: all ease .25s;
}
.owl-next{
	right: 0;
	left: unset;
	transform: rotate(180deg);
}
.owl-prev:after, .owl-next:after{
	content: "";
	display: block;
	width: 20px;
	height: 20px;
	transform: rotate(-135deg);
	transform-origin: 60% 45%;
	border-top: 4px solid black;
	border-right: 4px solid black;
	transition: all ease .25s;
}
.owl-prev:hover, .owl-next:hover{
	background: #fff;
}
.owl-prev:hover:after, .owl-next:hover:after{
	border-color: #58ab27;
}



.owl-dots{
	position: absolute;
	bottom: 30px;
	margin: auto;
	left: 0;
	right: 0;
	display: flex;
	justify-content: center;
	gap: 10px;
}
.owl-dot span{
	height: 15px;
	width: 15px;
	border-radius: 15px;
	display: block;
	background: #58ab27;
}
.owl-dot.active span{
	background: black;
}

.calendar-hp{
	background: #58ab27;  
	padding: 0 30px;
}

.calendar{
  background: #58ab27;  
  padding-top: 2vmax;
  padding-bottom:  2vmax;
  /*min-height: calc(400px + 10vmax);*/
}
.calendar{
	margin-left: -15px;
	margin-right: -15px;
}



.calendar-table{
  text-align: center;
  width: 100%;
  color: #fff;
  margin-top: 1rem ;
  
}
.calendar-table a{
  display: block;
  margin: -0.9em;
  padding: 0.9em ;
  color: #fff;
}
.calendar-table a:hover{
  background: rgba(255,255,255,.3);
}

.calendar-table td{
  border: 1px solid #fff ;
  padding: .9em ;
  
}
.calendar-table td.cal-today{
  background: rgba(255,255,0,.6);
  color: #111;
  
}
.calendar-table .cal-week {
  border-right:  1px solid #fff ; ;
  border-left:  1px solid #fff ; ;
}
.calendar-table  .cal-week td{
  border-right: none ;
    border-left: none ;
}

.calendar-table td.cal-event a{
  background: rgba(0,0,0,.2);
  font-weight: bold;
  /*color: #58ab27;*/
}
.calendar-table td.cal-event a:hover{
  background: rgba(255,255,0,.9);
  font-weight: bold;
  color: #111;
}
/**/

/**/
.produkty {
    display: flex;
    flex-wrap: wrap;
}

.produkty-item{
  flex: 1 50%;
  flex-flow: column;
  text-align: center;
}

.produkty-item {
  display: flex;
  margin: 0 -1px -1px 0;
  border: 1px solid #ddd ;
  padding: 2em ;
  

}

.produkty-item__obrazek {
  margin-bottom: 1em;

}

.produkty-item__obrazek img {
    max-width: 100%;
    max-height: 250px;
    object-fit: contain;
}



.produkty-item__nazev{
  font-weight: bold;
  font-size: 1.25em;
}




/**/
#footer{
  padding: 100px 0 ;
  margin-top: 0px;
  background: #cccccc;
}
#footer .col-lg{
  margin-bottom: 3em;

}


#footer h4{
  color: #fff;
  margin-bottom: 2rem;
}
#footer a{
  color: #000;
  text-decoration: none;
}


#footer ul{
  margin: 1rem 0;
  padding: 0 ;
  list-style: none;
}
#footer ul a{
  display: block;
  padding: .2em 0 ;
  transition: all ease .2s;
}

#footer ul a:before{
  content: "";
  display: inline-block;
  border-top: 1px solid #58ab27 ;
  width: 1em;
  height: .5em;
  margin-right: .5em;
  transition: all ease .2s;
}

#footer ul a:hover{
   color: #58ab27;
   /* color: #fff;  */
}
#footer ul a:hover::before{
   width: 1.5em;
}



/**/

/*
.col-lg:nth-of-type(odd) .content-half{
  padding-left: calc((100vw - 1400px) / 2);
 }
 

.col-lg:nth-of-type(even) .content-half{
  padding-right: calc((100vw - 1400px) / 2);
 }
  */

.content-half{
	max-width: 33%;
	background: #ffffffdc;
	padding: 4em;
}  



.mainbox img {
	max-width: 100%;
}

.smap {
	margin-top: 20px;
}

.smap img {
	max-width: unset !important;
}
 

.navbar-cart {
	margin: 0 15px 0 30px;
}
.navbar-collapse .navbar-cart {
	display: none;
}

.navbar-cart a {
	display: block;
	position: relative;
}

.navbar-cart a span {
	background: #58ab27;
	position: absolute;
    right: -6px;
    top: -6px;
    color: #FFF;
}

.cart .table {
	border: 1px solid #ddd;
    border-collapse: collapse;
    width: 100%;
    margin-bottom: 3em;
}

.cart .table td, .cart .table th {
    padding: 1.5em 1em;
}

.cart .table thead th, .cart .table tfoot td {
    padding: 1em 0.5em;
    background: #ddd;
}

.cart .table tbody .col-quantity, .cart .table tbody .col-price, .cart .table tbody .col-remove {
	vertical-align: middle;
}

.cart .table tbody .col-remove {
	font-size: 40px;
    padding: 0;	
}

.cart .table .col-quantity {
	width: 150px;
}

.cart .table .col-quantity .input-group {
	justify-content: center;
}

.cart .table .col-quantity input {
	width: 50px;
}

.cart .dp ul {
	list-style-type: none;
	padding: 0;
}

.cart .dp .dpi {
	display: none;
}

.cart .dp .dpi .easy-autocomplete {
	width: 360px !important;
}

.cart input[type=checkbox], .cart input[type=radio] {
    margin-right: .7em;
    transform: scale(1.5);
    transform-origin: left;
}

.cart .h3, .cart h3 {
    color: #58ab27;
}

.cart .form-group{
	align-items: center;
}
.cart .form-group label{
	margin-top: .3rem;
	margin-bottom: .3rem;
}


.eshop, .cart {
	margin-top: 3em;
	margin-bottom: 3em;
}

.eshop .categories ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}


.eshop .categories a {
	display: flex;
	justify-content: space-between;
	padding-top: 15px;
	padding-bottom: 15px;
}

.eshop .categories li.active > a {
	color: #000;
}

.eshop .categories a:after {
	content: '>';
}

.eshop .categories ul.level_2 a {
	padding-left: 20px;
}

.eshop .categories ul.level_3 a {
	padding-left: 40px;	
}


.mobile-controls {
	display: flex;
	align-items: center;
}

.mobile-controls .navbar-cart {
	margin: 0 30px;
}


.product-list .product-item {
	margin-bottom: 2em;
}

.product-list .product-item a {
	display: block;
	text-align: center;
	color: #000;
}

.product-list .product-item a:hover .product-name {
	color: #58ab27;
}

.product-list .product-item .product-price {
    margin-top: 5px;
	background: #e9e9e9;	
    display: inline-block;
    padding: .25em 1em;
    border-radius: 2em;
}


.product-list .product-item a img {
	aspect-ratio: 4/3;
    object-fit: contain;	
}

.product-list .product-item .product-name {
	margin-top: 10px;
}

.product-list .product-item .product-name h4 {
	margin-bottom: 0;
}

.product-icons{
		margin-top: 5px;
}
.product-icon {
    color: green;
}
.product-icon img{
	margin-right: .5em;
}

.blueimp-gallery a {
	color: #FFF !important;
}

.product-detail .detail_img .thumbnails {
    display: flex;
    margin-top: 10px;
    margin-bottom: 10px;
    margin-right: -5px;
    margin-left: -5px;
    flex-wrap: wrap;
}

.product-detail .detail_img .thumbnails a {
	width: 33.3%;
	padding: 0 5px;
	margin-bottom: 10px;
}

.product-detail .detail_img .thumbnails a img {
	max-width: 100%;
	object-fit: cover;
	height: 100%;
}

.product-detail .price {
	background: #e9e9e9;
    margin: 1rem 0;
    padding: .5em 1em;
	font-size: 1.5em;
    font-weight: 600;
	border-radius: .5em;    
}

.product-detail .buy .buy-quantity input {
	display: inline-block;
    width: 50px;
    text-align: center;	
}

.product-detail .form-label:empty {
	display: none;
}

.guide-head {
	display: flex;
	align-items: center;
	justify-content: space-between; 
}

.guide-head h2 {
	margin: 0;
	padding: 0;
}

.place-recommended, .place-item {
	border: 1px solid #DBDBDB;
	padding: 15px;
	border-radius: 10px;	
}

.place-item {
	height: 100%;
}

.place-list > div {
	margin-bottom: 20px;
}

.place-recommended {
	margin-bottom: 20px;
}

.place-r-image img, .place-image img {
	max-width: 100%;
	aspect-ratio: 4/3;
	object-fit: cover;
	border-radius: 10px;
}

.place-r-flag {
	margin-top: 20px;
    display: inline-block;
    box-shadow: 2px 2px 10px #00000029;
    padding: 5px 10px 5px 30px;
    font-size: 14px;
    color: #363636;
    background: url('/frontend/img/guide/ico_star.svg') no-repeat left 10px center;
}

.place-r-desc-h {
	margin-top: 20px;
	margin-bottom: 20px;
	align-items: center;
}

.place-r-desc-h h2 {
	margin: 0;
	margin-bottom: 20px;
	padding: 0;
	color: #008022;
	font-weight: 500;
	font-size: 36px;
}

.place-length {
	background: url('/frontend/img/guide/ico_time.svg') no-repeat left 0px center;
	padding-left: 25px; 
	color: #008022;
}

.place-r-desc-f span {
	color: #008022;
	display: block;
    margin-bottom: 5px;
}

.place-list .place-meta {
	align-items: center;
	margin-top: 20px;
	margin-bottom: 20px;
}

.place-list .place-meta strong {
	font-size: 22px;
	line-height: 1.3;
}

.place-flags {
	margin-bottom: -5px;
}

.place-flags div:first-child img {
	margin-right: 5px;
	margin-bottom: 5px;
}

.place-flags div:first-child img:last-of-type {
	margin-right: 0px;
}

.place-flags div:last-child img {
	margin-left: 5px;
	margin-bottom: 5px;
}

.place-flags div:last-child img:first-of-type {
	margin-left: 0px;
}

.place-flags img  {
	border: 1px solid #EBEBEB;
    border-radius: 18px;
}

.place-detail .place-info h2 {
	font-size: 36px;
	font-weight: 500;
}

.place-detail .place-meta {
	color: #008022;
	margin-bottom: 20px;
}

.place-detail .place-img a img {
	aspect-ratio: 4/3;
	max-width: 100%;
	object-fit: cover;
	border-radius: 5px;
}

.place-detail .place-flags {
	margin-top: 20px;
}

.place-detail .place-flags span {
	color: #008022;
	display: block;
	margin-bottom: 5px;
}

.place-detail h3 {
	font-size: 22px;
	color: #008022;
	font-weight: 500; 
}


.place-r-desc-f {
	margin-bottom: -5px;
} 

.place-r-desc-f img {
	border: 1px solid #EBEBEB;
	border-radius: 18px;
}

.place-r-desc-f div:first-child img {
	margin-right: 5px;
	margin-bottom: 5px;
}

.place-r-desc-f div:first-child img:last-of-type {
	margin-right: 0;
}

.place-r-desc-f div:last-child img {
	margin-left: 5px;
	margin-bottom: 5px;
}

.place-r-desc-f div:last-child img:first-of-type {
	margin-left: 0;
}

.place-detail .tabs {
	position: relative;
	bottom: -1px;
}

.place-detail .tabs a {
	font-weight: bold;
	color: #000;
	padding: 10px 10px;
	border: 1px solid #FFF;
	border-bottom: 1px solid #DBDBDB;
	border-radius: 10px 10px 0px 0px;
} 


.place-detail .tabs a:hover, .place-detail .tabs a.active {
	border: 1px solid #DBDBDB;
	border-bottom: 1px solid #FFF;
	color: #008022;
}

.place-detail .tab-content {
	border: 1px solid #DBDBDB;
	border-radius: 0px 10px 10px 10px;
	padding: 15px;
}

.place-detail .tab-content .tab-pane iframe {
	width: 100%;
	min-height: 540px;
	display: block;
}

.place-detail .tab-content .tab-pane p:last-of-type {
	margin-bottom: 0;
}

.place-detail .place-video {
	text-align: center;
}

.place-detail .place-video iframe {
	aspect-ratio: 16/9;
    max-width: 100%;
    height: 100%;
    margin-left: auto;	
}


.gallery .gallery-item {
	margin-bottom: 15px;
}

.gallery .gallery-item a {
	aspect-ratio: 3/2;
	display: block;
}

.gallery .gallery-item img {
	height: 100%;
	width: 100%;
	object-fit: cover;
	border-radius: 10px;
}

.place-recommeded-list {
	justify-content: center;
}

.place-recommeded-list > div {
	margin-bottom: 15px;
}

.place-recommeded-list .place-image {
	margin-bottom: 15px;
}

.place-recommeded-list .place-name {
	font-size: 20px;
	color: #008022;
	margin-bottom: 10px;
}

.place-recommeded-list .place-gps {
	font-size: 14px;
	margin-bottom: 10px;
}

.place-recommeded-list .place-map a {
	font-size: 14px;
	border: 1px solid #008022;
	border-radius: 3px;	
	display: inline-block;
	padding: 7px 20px;
	margin-bottom: 20px;
	margin-top: 10px;
}

.place-recommeded-list .place-desc p:last-of-type {
	margin: 0;
}

.place-recommeded-list .place-map a:hover {
	border-color: #000;
}

.place-partner-list {
	align-items: center;
	justify-content: center;
}

.place-partner-list > div {
	margin-bottom: 15px;
}

.place-partner-list .partner-item {
	text-align: center;
}

.place-partner-list .partner-item img {
	max-width: 100%;
}


/**/

div#ajax-spinner {
    height: 50px;
    width: 50px;
    background: url("/frontend/img/loading.gif") no-repeat;
    position: fixed;
    top: 50%;
    left: 50%;
    z-index: 100000;
}

@media (min-width: 576px) {
	.place-detail .tabs a {
		padding: 10px 20px;
	}
}




@media (min-width: 768px){
	.place-r-desc-h h2 {
		margin: 0;
		padding: 0;
	}
	
	.place-detail .place-flags span  {
		display: block;
	}		
	
}


@media (min-width: 992px){                     
	.navbar-expand-lg .navbar-nav .nav-link {
		padding-right: 1rem; 
		padding-left: 1rem; 
	}
	
	
}
 
@media (min-width: 1100px) { 
	.place-r-desc-f span {
		display: inline-block;
		margin-right: 5px;
	}
	
	
}
 
 
@media (min-width: 1200px){
	.container {
	    max-width: 1400px ;
	} 
	
	.mobile-controls {
		display: none;
	}

	.navbar-collapse .navbar-cart{
		display: block;
	}

	
}

@media (min-width: 1300px){
	.place-detail .place-flags span  {
		display: inline-block;
		margin-right: 5px;
	}
}

@media (min-width: 1400px){
	.col-lg:nth-of-type(odd) .title-half, 
	.col-lg:nth-of-type(odd) .article,
	.col-lg:nth-of-type(odd) .mainbox {
		padding-left: calc((100vw - 1400px) / 2);
	}


	.col-lg:nth-of-type(even) .title-half,
	.col-lg:nth-of-type(even) .event {
		padding-right: calc((100vw - 1400px) / 2);
	}
}
 


@media (max-width: 480px){
	.navbar-brand{
		max-width: 160px;
		margin-right: 0;
	}
	.mobile-controls .navbar-cart {
		margin: 0px 20px;
	}	
	.calendar-table td{
		zoom: .8;
	}
}

@media (max-width: 992px){
	.intro--caption{
		position: static;
		padding: 2rem 2rem 3rem 2rem;
	}
}

@media (max-width: 1200px){
	.navbar-nav .nav-link{
		border-top: 1px solid #ddd;
		padding-top: 1rem;
		padding-bottom: 1rem;
		padding-left: 1em;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.dropdown-toggle::after{
		color: #58ab27;
	  
		margin-left: 0.5em;
		margin-right: 1em;
		border-top: 0.4em solid;
		border-right: 0.4em solid transparent;
		border-left: 0.4em solid transparent;  
	  }
}

