/*
zluta #ffd400
hneda #362d00
zelena #2f7958
*/

/* COMMON */
* {
	margin: 0px;
	padding: 0px;
	box-sizing:border-box;
}

body, div, input, select, textarea, td, ul, li, button {
	font-family: Roboto, sans-serif; font-weight: 400;
	margin: 0px;	
	padding: 0px;
}

ol, ul, li {	
	margin: 0px;	
	padding: 0px;	
	list-style-type: none;
}

a img {	
	border: 0px;
}

a {	
	outline: none;	
	text-decoration: none;
}

a:hover {	
	text-decoration: underline;
}

body {	
	background-color: #ae8d7a; 
	background-size: cover;
	background-position: center top;
	background-attachment: fixed;
	color: #362d00; 
	font-size: 13px;  
	padding: 0px; 
	
}
	
.container {min-width: 320px; min-height: 100vh;}

header {
	position: relative; 
	background-color: #ffd400;
	background: linear-gradient( #c3b052 , #ffd400 25%, #ffd400); 
	box-shadow: 0px 6px 6px -4px rgba(0,0,0,0.4); 
	width: 100%;
	transition: height 0.3s;
}

.header-in {
	height: 80px; 
	position: relative;
	transition: height 0.3s;
}

header h1 {
	font-weight: 600; font-size: 20px; width: 100%; text-align: center; padding: 0 100px; line-height: 22px; height: 80px; display: flex; 
	align-items: center; justify-content: center;
	transition: all 0.3s;
}
header h1 a {color: #362d00; text-decoration: none !important}
img.logo {
	position: absolute; top: 11px; left: 32px; width: 41px; height: 58px; 
	transition: all 0.3s;
}

.headerinfo{
	display: none;
}

nav {
	position: absolute; 
	bottom: 0px; 
	right: 0px; 
	width: 100%;  
	height: 46px;
		
}

#nav-toggler {
	width: 69px; height: 60px; position: absolute; bottom: 0px; right: 0px;
	transition: all 0.3s;
	background: url(images/menu-bg.png) left 14px no-repeat;
}
#nav-toggler a {width: 68px; height: 60px; cursor: pointer; display: block; margin: auto; background: url(images/menu.png) no-repeat center 7px;}

#menu-wrap { 
	transition: top 0.3s; 
	display: block; 
	position: absolute; 
	width: 100%; 
	right: 0px; 
	top: 45px;
	z-index: 10;
}

ul#menu {
	width: 100%; 
	min-width: 320px; 
	margin: auto; 
	border-radius: 0 0 20px 20px; 
	padding: 0px 0px 10px 0px;
	background: rgba(34,34,34,0.95);   
	max-height: calc(100vh - 80px); 
	overflow: auto;
    box-shadow: 0px 2px 5px 1px rgba(0,0,0,0.4);
	height: 0px;
	transition: all 0.3s;	
	opacity: 0;
}

ul#menu ul {
	display: none;
}

#menu-wrap.menuopen ul#menu {
	padding-top: 10px; 
	padding-bottom: 18px; 	
	height: auto;
	opacity: 1;                               			
}

#menu-wrap.menuopen ul#menu ul{
	display: block;	
}

ul#menu li {text-align: center;} 
ul#menu li a {
	color: #FFF; display: block; height: 0px; 
	font-weight: 600; font-size: 18px; line-height: 20px; padding: 10px 10px;
	transition: height 0.3s;	
}
#menu-wrap.menuopen ul#menu li a{ height: 40px; }
ul#menu>li:hover>a {text-decoration: none; color: #ffd400;}

ul#menu ul {display: none; padding-bottom: 5px;}
ul#menu ul li a {font-weight: 300; font-size: 17px; line-height: 20px; height: 30px; padding: 0px 5px 10px 5px;}
#menu-wrap.menuopen ul#menu ul li a{ height: 30px; }
ul#menu ul li a:hover {text-decoration: underline;}
ul#menu li:hover ul {display: block;}
 
 
body.fixed-header {
 	padding-top: 80px;
}
 
.fixed-header header{
	position: fixed; 
	top: 0px;
	z-index: 10;
}

body.fixed-header .header-in {
	height: 50px; 
}

body.fixed-header header h1 {font-size: 14px; padding: 0 70px; line-height: 22px; height: 50px; }
body.fixed-header img.logo {position: absolute; top: 8px; left: 32px; width: 26px; height: 36px;}
body.fixed-header #nav-toggler {
	width: 69px; 
	height: 50px; 
	/*background: linear-gradient( #c3b052 , #ffd400 25%, #ffd400);*/
	background-position: left 10px; 
	padding-top: 5px;
}

body.fixed-header #nav-toggler a {
	height: 50px; 
}

body.fixed-header #menu-wrap {
	top: 45px; 	 
}

body.fixed-header ul#menu {
	max-height: calc(100vh - 50px);
}


footer {
	background-color: #ffd400; 
	color: #362d00; 
	background: linear-gradient( #ffd400 77%, #ffd400 23%, #c3b052); 
	box-shadow: 0px -6px 6px -4px rgba(0,0,0,0.4);
	padding: 15px 20px; 
}

footer a {color: #362d00; text-decoration: underline;}
footer a:hover {text-decoration: none;}

footer .line {
	font-size: 14px; 
	line-height: 17px; 
	margin-bottom: 7px;
}
 
footer .telefon {
	color: #2f7958; 
	padding-left: 29px; 
	background: url(images/ico-tlf.png) no-repeat 0px 3px;
}
footer .telefon span {
	display: inline-block;
	padding-right: 20px;
}
footer .telefon span:last-child {
	padding-right: 0px;
}
footer .telefon a {color: #2f7958; font-weight: 700;}
footer .sipka {padding-left: 28px; background: url(images/ico-sipka.png) no-repeat 3px 3px;}

footer .fblock:last-child{
	font-size: 12px;
	text-align: center;
	padding-top: 15px;
}
footer .line-mini {font-size: 10px;}


/* CONTENT ********************************/
                                            

main {background: #FFF; padding: 20px 0px; display: block;}

.navi {margin-bottom: 1em; font-size: 13px; padding: 0px 20px;}
.navi a {font-weight: 500; color: #362d00; text-decoration: underline;}
.navi a:hover {text-decoration: none;}

h1 {font-size: 28px; margin-bottom: 5px; transition: font-size 0.2s;}

section{
	padding: 0px 20px 15px 20px;
}



.wsw h2,h2.gallery-title {margin-bottom: 0.5em; color: #2f7958;font-size: 1.5em;}
.wsw h3 {margin-bottom: 0.5em; color: #2f7958; font-size: 1.1 em;}
.wsw p {margin-bottom: 0.5em;}

.wsw a {color: #2f7958; text-decoration: underline;}
.wsw a:hover {text-decoration: none;} 

.wsw a.button {
	display: inline-block; 
	background-color: #e30613; 
	font-weight: 500; text-decoration: none; font-size: 16px; 
	color: #362d00!important; height: 30px; text-align: center; line-height: 30px; 
	cursor: pointer;
	background: linear-gradient( #ffd400 77%, #ffd400 23%, #c3b052); box-shadow: 0px -6px 6px -4px rgba(0,0,0,0.4);
	border-radius: 5px;
}

.wsw a.button:hover{
	box-shadow: 0px 0px 0px 0px rgba(0,0,0,0.4);
}

.wsw .mega, .wsw .mega p {font-size: 1.6em;}

.wsw .blok50{
	display: inline-block;
	width: calc(100% - 22px);
	margin: 10px;
	background-color: #f1e6b3;
	vertical-align: top;
	padding: 20px;
}  

.wsw .blok33{
	display: inline-block;

	width: 70%;
	margin: 5px 15%;	
	vertical-align: top;
	padding: 0px;
	position: relative;
	box-sizing: border-box;
}  
	 
.wsw .blok33_2{
	display: inline-block;
	width: 100%;
	margin: 5px 0px;	
	vertical-align: top;
	padding: 0px;
	position: relative;
	box-sizing: border-box;
} 	 
	 
.wsw .blok33_2 img{
    max-width: 100%;
}     
     
.wsw .textover{
	display: block;
	width: 100%;
	padding: 15px 10px;
	text-align: center;
	background-color: rgba(255,255,255,0.85);
	position: absolute;
	top: calc(50% - 30px);	
	left: 0px;
    box-sizing: border-box;
    font-size: 16px;
    transition: padding 0.3s,font-size 0.3s,top 0.3s;
}  

.wsw a:hover .textover{
	top: calc(50% - 50px);	
	padding: 30px 10px;
    font-size: 18px;	
}

.wsw .blok-telefon{
	color: #2f7958; 
	padding-left: 29px; 
	background: url(images/ico-tlf.png) no-repeat 0px 3px;	
}

.wsw .blok-telefon a{
	color: #2f7958;
}

.wsw a.bigbutton{
	border: 1px solid #ccc;
	box-shadow: 1px 1px 4px rgba(0,0,0,0.2);
	padding: 20px 15px 20px 60px;
	width: calc(100% - 22px);
	margin: 10px;
	display: inline-block; 
	text-decoration: none;
	font-size: 18px;
	line-height: 26px;
	background: #fff url('images/ico_obr.jpg') 17px center no-repeat;
	transition: all 0.1s;
	vertical-align: middle;	
}

.wsw a.bigbutton:hover{
	font-size: 20px;
	border: 1px solid #999;
	box-shadow: 0px 0px 3px rgba(0,0,0,0.2);
	padding: 20px 15px 20px 55px;
}

.wsw a.bigbutton.ico_odpad{
	background: #fff url('images/ico_odpad.jpg') 17px center no-repeat;
}

.wsw a.bigbutton.ico_vykup{
	background: #fff url('images/ico_vykup.jpg') 17px center no-repeat;
}

.wsw a.bigbutton.ico_kontejner{
	background: #fff url('images/ico_kontejner.jpg') 17px center no-repeat;
}

.wsw a.bigbutton.ico_doprava{
	background: #fff url('images/ico_doprava.jpg') 17px center no-repeat;
}

.wsw a.bigbutton.ico_materialy{
	background: #fff url('images/ico_materialy.jpg') 17px center no-repeat;
}

.wsw a.bigbutton.ico_cenik{
	background: #fff url('images/ico_cenik.jpg') 17px center no-repeat;
}

.wsw ol {list-style-type: decimal; xoutline: solid 1px yellow; padding-bottom: 0.5em;}
.wsw li {list-style-type: decimal; list-style-position: outside; padding-left: 8px; margin-left: 22px; padding-bottom: 0.5em; xoutline: solid 1px red;}

.wsw ul {padding-bottom: 0.5em;}
.wsw ul li { list-style-image: url(images/sipka-green1.png); padding-bottom: 0.5em; margin-left: 27px; padding-left: 3px;}

.wsw .greentext{ color: #2f7958; }

.wsw td{
	padding: 3px 5px;
}

.wsw a.link-pdf{
	color: #2f7958; 
	padding: 15px 15px 15px 70px; 
	background: url(images/pdf.jpg) no-repeat left center;
	min-height: 70px;
	display: inline-block;	
}

.wsw a.banner{
	border: 1px solid #ccc;
	box-shadow: 1px 1px 4px rgba(0,0,0,0.2);
	padding: 180px 15px 20px 15px;
	width: calc(100% - 22px);
	margin: 10px;
	display: inline-block; 
	text-decoration: none;
	font-size: 18px;
	background: #fff url('images/banner_general.jpg') center  top no-repeat;
	background-size: contain;
	transition: all 0.1s;
	vertical-align: middle;	
	text-align: center;
	line-height: 26px;
}

.wsw a.banner:hover{
	font-size: 20px;
	border: 1px solid #999;
	box-shadow: 0px 0px 3px rgba(0,0,0,0.2);
}


.wsw a.banner.ico_kontiky{
	background: #fff url('images/ico_odpad.jpg') 17px center no-repeat;
}

.wsw a.banner.banner-sut-zemina{
    background: #fff url('images/hp-sute-a-zeminy.jpg/350x197') center top no-repeat;
    background-size: contain;
}

.wsw a.banner.banner-domovni-odpad{
    background: #fff url('images/hp-domovni-odpady.jpg/350x197') center top no-repeat;
    background-size: contain;
}

.wsw a.banner.banner-bio-odpad{
    background: #fff url('images/hp-bioodpad.jpg/350x197') center top no-repeat;
    background-size: contain;
}

.wsw a.banner.banner-stavebni-materialy{
    background: #fff url('images/hp-stavebni-materialy.jpg/350x197') center top no-repeat;
    background-size: contain;
}


.gallery-image{
	display: inline-block;
	
}

.bigimg img{
	width: 100%;
	
}

.contactform {padding-bottom: 10px;}
.contactform input[type=text],
.contactform textarea {border: solid 1px #9d9d9d; line-height: 25px; padding: 0px 10px}
.contactform input.error,
.contactform textarea.error {border-color: #e30613; box-shadow: 0 0 10px rgba(227,6,19,0.8);}
.contactform input[type=text] {height: 27px;} 
.contactform label.input { padding-bottom: 5px; display: inline-block;}
.contactform .kf-set {margin-bottom: 15px; }
.contactform .kf-set input[type=text] {width: 100%;}
.contactform .kf-set textarea {width: 100%; height: 115px;}
.contactform .kf-set:last-child {float: none; clear: both; width: 100%; padding: 0px;}
.contactform .submit{ text-align: right; }
.contactform .btn { background-color: #2f7958; color: #fff; padding: 5px 20px; border: 0px;}
.contactform .cf-hlasky{ font-weight: bold; padding-bottom: 10px; }
.contactform .send_nok{ color: #e30613;}
.contactform .send_ok{ color: #2f7958;}


.popup{
	position: fixed;
	width: 300px;
	right: calc(50% - 150px);
	top: 100%;/*150px;*/
	z-index: 5;
	box-shadow: 2px 2px 10px rgba(0,0,0,0.5);
	padding: 20px;
	background-color: #fff;
	transition: all 0.3s;
	max-height: calc(100% - 120px);
	overflow: auto;	
}

.popup.active{
	top: 100px;
}

.popupok{
	text-align: center;
	padding-top: 10px;
}

#popupok{
	background-color: #2f7958; color: #fff; padding: 5px 20px; display: inline-block;
	cursor: pointer;
}

#popupok:hover{
 	color: #ffd400;
}



/**************************************************************************************************/
@media (min-width: 380px){
	.wsw a.banner{
		padding: 200px 15px 20px 15px;
	}
}

@media (min-width: 400px){
	.wsw a.banner{
		padding: 230px 15px 20px 15px;
	}
}

@media (min-width: 450px){
	.wsw a.banner{
		padding: 250px 15px 20px 15px;
	}
}

@media (min-width: 480px){	
	header h1 {font-size: 25px; line-height: 30px; }

	#nav-toggler,
	body.fixed-header #nav-toggler {
		width: 75px; 
	}	
	
	footer .oteviraci{
		display: inline-block;
		width: calc(55% - 20px);
		vertical-align: top;	
	}
	
	footer .oteviraci .line {
		display: inline-block;
		vertical-align: top;
		padding-right: 20px;
	}
		
	footer .telefony{
		display: inline-block;
		width: calc(45% - 20px);
		vertical-align: top;	
	}
	
	footer .fblock:last-child{
		text-align: left;
	}
	
	footer .fblock:last-child .line{
		text-align: left;
		display: inline-block;
		vertical-align: bottom;
		width: 50%;
		margin-bottom: 0px;
		font-size: 10px;
	}
	
	footer .line-mini{
		text-align: right;
		display: inline-block;
		vertical-align: bottom;
		width: calc(50% - 5px);
	}
	.wsw .blok33{
		width: calc(50% - 12px);
		margin: 5px;
	}
	.wsw .blok33_2{
		width: calc(50% - 12px);
		margin-right: 10px;
	}	
	.wsw .blok50{
		width: calc(50% - 22px);
	}  	
	
	.wsw a.bigbutton{
		width: calc(50% - 22px);
	}

	.wsw a.banner{
		width: calc(50% - 22px);
		padding: 140px 15px 20px 15px;
	}	
	
	.contactform .kf-set {
		display: inline-block;
		width: calc(50% - 2px);
	}	
		
}

@media (min-width: 560px){
	.wsw a.banner{
		padding: 160px 15px 20px 15px;
	}
}

@media (min-width: 630px){
	.wsw a.banner{
		padding: 180px 15px 20px 15px;
	}
}

@media (min-width: 700px){
	.wsw a.banner{
		padding: 200px 15px 20px 15px;
	}
}

/**************************************************************************************************/
@media (min-width: 768px){
	.header-in {height: 120px;}
	header h1 {display: block; text-align: left; padding-left: 130px; padding-top: 30px;}
	img.logo {top: 15px; left: 28px; width: 65px; height: 91px;}

    
	.headerinfo{
		display: block;
		position: absolute;
		top: 30px;
		right: 20px;
		text-align: right;		
	}
	
	.fixed-header .headerinfo{
		display: none;
	} 
	
	.fixed-header header h1{
		display: none;
	}	
	
	.header-info-oteviraci,
	.header-info-telefon{
		display: inline-block;
		text-align: left;
		padding-left: 20px;
		padding-right: 10px;
	}
	
	.header-info-telefon{
		color: #2f7958; 
		padding-left: 29px; 
		background: url(images/ico-tlf.png) no-repeat 0px 3px;	
	}
	
	.header-info-telefon a{
		color: #2f7958;
	}
	
	.header-info-oteviraci span,
	.header-info-telefon span{
		display: block;
		font-weight: bold;
	}

	nav {
		position: absolute; bottom: 0px; right: 37px; left: 130px; width: auto;
		background: url(images/menu-bg.png) left top repeat-x;
	}
	#menu-wrap {display: table; width: 100%; border-collapse: separate; border-spacing: 1px 0; position: static;}
	ul#menu, #menu-wrap.menuopen ul#menu {display: table-row; height: auto; opacity:1;box-shadow: none; }
	ul#menu>li {display: table-cell; height: 46px; text-align: center; vertical-align: top;  
	/*box-shadow: 0px 5px 4px -2px rgba(0,0,0,0.1); */
	background: #ffd400; position: relative;
	cursor: pointer;
	} 
	ul#menu>li>a {background: #ffd400; display: block; font-weight: 500; height: 46px; line-height: 32px; font-size: 14px; letter-spacing: -0.5px; color: #362d00; padding: 5px 5px;}
	ul#menu>li:hover {box-shadow: 0px 5px 4px -2px rgba(0,0,0,0.05);}
	ul#menu>li:hover:after {content: ''; width: 100%; height: 100%; position: absolute; top: 0px; left:0px; background: linear-gradient( rgba(255,212,0,0), rgba(255,212,0,0.2), rgba(100,80,60,0.2)); z-index: 99;}
	
	ul#menu>li:hover>a {text-decoration: none; color: #2f7958; position: relative; z-index: 100; background: transparent;}
  	#nav-toggler {display: none;}

	ul#menu ul {display: none; position: absolute; left: 0px; top: 46px; border-radius: 0 0 8px 8px; padding-top: 13px; padding-bottom: 15px; background: rgba(34,34,34,0.95); 
	box-shadow: 0px 1px 5px 1px rgba(0,0,0,0.4);
	
	min-width: 140px;
	z-index: 10;
	}
	
	ul#menu li:last-child ul,
	ul#menu li:nth-last-child(2) ul {left: auto; right: 0px;}
	
	ul#menu ul li {height: 25px; text-align: left; white-space: nowrap;}
	ul#menu ul li a {display: block; color: #FFF; height: auto; font-size: 14px; font-weight: 500; line-height: 17px; padding: 4px 25px 4px 25px;}
	ul#menu ul li a.active,
	ul#menu ul li a:hover {text-decoration: underline;}
	
	ul#menu li:hover ul {display: block;}
	
	
	.fixed-header ul#menu>li,
	.fixed-header ul#menu>li a{
		height: 36px;	
		} 	
	.fixed-header nav {height: 36px;	}
		
	.wsw .blok33{
		width: calc(33% - 10px);
	}
	.wsw .blok33_2{
		width: calc(33% - 10px);
	}  	
	
	.wsw a.bigbutton{
		width: calc(33% - 22px);
	}

	.wsw a.banner{
		width: calc(33% - 22px);
		padding: 140px 15px 20px 15px;
	}	
	
	.contactform .kf-set {
		display: inline-block;
		width: 170px;
		padding-right: 20px;
	}	
	

	.popup{
		width: 500px;
		right: calc(50% - 250px);
	}
	
	.popup.active{
		top: 130px;
	}			  	
}	

@media (min-width: 820px){
	.wsw a.banner{
		padding: 160px 15px 20px 15px;
	}
}


/****************************************************/

@media (min-width: 920px) {

 	body{
		padding: 10px 0px;
	}
	
	header, body.fixed-header header, footer {
		width: calc(100% - 20px);
		max-width: 1200px;
		margin: 0px auto;
	}
 
	body.fixed-header {padding-top: 130px;}
	header { border-radius: 20px; height: 120px; padding-left: 40px; padding-right: 40px; top: 10px;}
	body.fixed-header header{
		height: 50px;
		border-top-left-radius: 0px;
		border-top-right-radius: 0px;
		left: 10px;
	}
	
	/*
	.container {max-width: 975px;}
	header, body.fixed-header header, footer {width: 975px;}
	*/
	ul.menu li a {white-space: nowrap; line-height: 32px; height: 46px; font-weight: 500; font-size: 17px; letter-spacing: 0; padding: 10px 4px;}
	ul#menu ul{
		top: 46px; 
	}
	
	body.fixed-header ul#menu ul{
		top: 36px; 
	}
	
	footer { border-radius: 20px; padding-left: 40px; padding-right: 40px;}
	main {margin: 0 40px;}
	
	.popup.active{
		top: 180px;
	}	
	
	.wsw a.banner{
		padding: 160px 15px 15px 15px;
	}
	
}

@media (min-width: 1040px){
	.wsw a.banner{
		padding: 180px 15px 15px 15px;
	}
}

@media (min-width: 1100px){
	.wsw a.banner{
		padding: 195px 15px 15px 15px;
	}
}

/* [XL] X-Large devices (large desktops, 1200px and up) */

@media (min-width: 1200px){
	.container {
		max-width: 1183px;
		margin: 0px auto;
	}
	header, body.fixed-header header, footer {width: 1183px;}
	
	ul.menu li a {font-weight: 600; font-size: 18px; letter-spacing: 0; padding: 10px 10px;}
	
	footer .fblock.address {
		display: inline-block;
		padding-right: 30px;
		vertical-align: top;	
	}    
	
	footer .oteviraci{
		width: auto;
	}
	footer .telefony{
		width: auto;
	}
	
	footer .fblock:last-child{
		padding-top: 0px;
	}
	
	body.fixed-header header{
		 left: calc(50% - 591px);
	}	
}

@media (max-height: 730px) and (min-width: 768px){ 
	.bigimg{
		max-height: 300px;
		overflow: hidden;
		margin-bottom: 20px;
	}
	
	.bigimg img{
		position: relative;
		top: -15px;
	}
	
	h1{
		font-size: 20px;
		margin-bottom: 0px;
	}
	
	.navi{
		margin-bottom: 5px;
	}
}


