
/* CSS reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin:0;
	padding:0;

}
html,body {
  margin:0;
  padding:0;
  font-family: 'Font';
  font-weight: 400;
  font-size:20px;
  line-height:30px;
  background-color:#000000;
  color:white;
  -webkit-text-size-adjust:100%;
  width:100%;
  height:100%; 
}

html {
	overflow-x:hidden;
}

h1, h2, h3, h4, h5, h6 { font-weight: 400; }
a           { color:#0d0d0d; text-decoration: none;}
a:hover     { border-bottom:solid 1px #fff; }
a:focus		{ outline: none; -webkit-tap-highlight-color: transparent }
.clearboth  { clear: both; }
.floatleft  { float: left; }
.uppercase  { text-transform: uppercase; }
.capitalize { text-transform: capitalize; }
.black		{ color:black }
img         { border: none; }
p           { clear:both; }
ul          { margin:0; }
b           { font-weight: 700; }
strong      { font-weight: 700; }
hr          { height:1px; border:0; background-color: black; }
.tisic      { margin-left: 0.3em;	}
.nonselectable { -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; -o-user-select: none; user-select: none;}
.nopadding  { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
input,textarea { border:none; outline:none; resize:none; padding:10px 2% 10px 2%; margin-top:5px; font-family: 'Font'; font-size:20px; border:solid 1px #404040;
				-webkit-box-shadow: 3px 0 30px 0 rgba(145,145,145,1); -moz-box-shadow: 3px 0 30px 0 rgba(145,145,145,1); box-shadow: 3px 0 30px 0 rgba(145,145,145,1);
                -webkit-appearance: none;  }
.ramecek5   { -webkit-border-radius:5x; -moz-border-radius:5px; border-radius:5px; behavior: url(PIE.htc); }
.ramecek10  { -webkit-border-radius:10px; -moz-border-radius:10px; border-radius:10px; behavior: url(PIE.htc); }
.ramecek-kulaty { -webkit-border-radius:35px; -moz-border-radius:35px; border-radius:35px; behavior: url(PIE.htc);}

.table-cell	{ display: table-cell; vertical-align: middle;  }


li { list-style-position:inside; }

hr 			{ padding:0; margin:0; background-color:#404040; }


main        { position: relative; display:block; width:100%; height:100%;  }


.home { width:100%; max-width:600px; margin:auto; height:100%; display:table; }

.home-logo { width:223px; margin:auto; margin-top:30px }
.home-logo img { float:left; width:100%; }

.home-links { display:flex; gap:0 60px; margin-top:100px; margin-bottom:100px; font-size:24px; line-height:32px; font-weight:300; }
.home-links img { margin-bottom:5px }
.home-link { position:relative; float:left; width:270px; height:270px; border:solid 2px #fff; border-radius:100%; aspect-ratio:1; color:#fff; text-align:center; display:table;  }
.home-link:hover { text-decoration:none; border-width:2px }

.home-link-filtr { position:absolute; top:-2px; left:-2px; width:calc(100% + 4px); height:calc(100% + 4px); background-color:rgba(0,0,0,0.5); box-sizing: border-box; }
.home-link-otevirame { position:absolute; bottom:-10px; left:0; right:0; margin:auto; width:199px; background-color:#fff; z-index: 10;
					   color:#000; font-size:20px; line-height: 1.1em; font-weight: 700; padding:12px 0;text-align: center;	}
.home-link-sleva { position:absolute; top:-10px; right:-50px;  width:150px; border:1px solid #fff; background-color:#000; z-index: 10;
					   color:#fff; font-size:16px; line-height: 1.1em; font-weight: 700; padding:8px 0;text-align: center;	}



.prasatko { width:159px; margin:auto; margin-bottom:30px }
.prasatko img { float:left; width:100%; }

#banner { position:absolute; width:100%; height:100%; max-height:750px; margin-top:30px}


.mapa { width:100%; margin-top:50px }
.mapa img { float:left; width:100%; }

.mapa-mobile { display:none; }




.x { position:relative; width:100%; min-height:100vh; }

.menu-zavrit { position:absolute; top:50px; right:50px; cursor:pointer; font-size:20px }
 
 
.hp-prostor {  position:absolute; height:100%; width:100%;}
 
.prostor-left 	{ position:absolute; left:110px; width:100%; max-width:409px; height:100%;  }

.logo			{ float:left; margin-top:80px;}
.logo img		{ float:left; width:193px;  }

.logo-nazev  	{ display:none; float:left; margin-top:55px; font-size:20px; letter-spacing:0.1em; margin-left:30px; text-transform:uppercase; }
 
.claim-prostor-mobile { position:relative; float:left; width:100%; }
.claim 			{ float:left; font-size:55px; line-height: 1.12em; margin-top:40px; font-weight: 700; letter-spacing:-0.03em; }
.rezervovat-mobile { display:none; position:absolute; right:0; top:-30px; }
.rezervovat-mobile a 	{ font-size:12px; display:inline; text-transform: uppercase; color:#fff; border-bottom:solid 1px #fff;   }

.hp-text 		{ font-size:20px; line-height: 1.34em; margin-top:50px; margin-bottom:50px;  }
 .prostor-left h2 	{ font-size:14px  }
.kapacita { font-size: 24px; }
#menu			{ position:absolute; display:table; bottom:69px; text-transform: uppercase; font-size:20px; letter-spacing:0.1em; cursor:pointer; 
 				  text-decoration:none; border:0; background-color:#fff; color:#000; width:111px; height:111px; text-align:center; 
				  border-radius:100%; font-weight: 500; }

.prostor-right 	{ position:absolute; right:50px; width:calc(100% - 660px); height:100%; font-size:15px; padding-top:130px; letter-spacing:0.1em; }
.prostor-right a	{ color:#fff;}
 
.rezervovat 	{ float:left; margin-top:-22px; margin-right:55px; }
.rezervovat a 	{ display:inline; text-transform: uppercase;    }
.menu-kontakt	{ float:right; text-transform: uppercase; cursor:pointer; margin-left:50px }

.rest-link 		{ position:relative; display:inline; margin-right:35px; opacity:0.4; text-transform:uppercase; line-height:1.165em; top:-10px }
.rest-link.active		{ opacity:1; }
.rest-link:hover 		{ border:0; text-decoration:none; }
.rest-link img	{ float:left; width:46px }
.rest-text		{ float:left; margin-left:20px; }
 
#prostor-left 	{ position:absolute; height:100%; width:100%; }
.image-slider	{ width:100%; height:100%; background-position: center; }
#prostor-right 	{ position:fixed; top:0; right:-630px; width:100%; max-width:570px; background:#2A2A2A; padding:100px 55px; 
				  height:100%; font-size:24px; line-height:1.34em; z-index:1000; transition: right 0.5s ease-in-out;  overflow-y: auto;
				  -webkit-box-shadow: 3px 0 30px 0 #2A2A2A; -moz-box-shadow: 3px 0 30px 0 #2A2A2A; box-shadow: 3px 0 30px 0 #2A2A2A;}
#prostor-right.open 	{ right:0 }
#prostor-right a 	{ color:white; border-bottom:solid 1px #fff }
#prostor-right h2	{ margin-top:30px; font-size:15px  }
#prostor-right h2:last-child	{ margin-top:0; }
#prostor-right h2:last-child a,
#prostor-right h2:nth-last-child(2) a	{ border:0; letter-spacing:0.1em;}

#fakturacni { position:absolute; bottom:100px; font-size:20px }

#menu-kontakt				{ position:absolute; top:69px; right:7%; text-transform: uppercase; font-size:27px; line-height:35px; cursor:pointer; border-bottom:solid 2px white; z-index:5; }

#prostor-homepage	{ position:relative; z-index:2; height:100%; display:table; width:70%; padding:0 15%; text-align:center; font-size:50px; line-height:100px; font-weight: 700;  }
#logo				{ margin:auto; margin-bottom:12vh; width:259px; height:110px; background-size:259px 110px; }
#logo img	{ float:left; width:100%;  }
#prasatko			{ margin:auto; margin-top:12vh; background-image:url("../images/prasatko.svg"); width:175px; height:120px; background-size:175px 120px; }

#prostor-homepage h2 { font-weight: 700; }


#banner-mobile { display:none }

.hamburger		{ display:none; position:absolute; top:40px; right:0; width:22px; height:14px; margin-bottom:24px; cursor:pointer; z-index:10000;
				  transform: rotate(0deg); transition: .5s ease-in-out; pointer-events:auto; outline: none; -webkit-tap-highlight-color: transparent } 
.hamburger span { position:absolute; display:block; height:1px; width:100%; background:#fff; opacity:1; left:0; -webkit-border-radius:5px; -moz-border-radius:5px; border-radius:5px; 
				  transition: width 0.5s ease-in-out, height 0.5s ease-in-out, left 0.5s ease-in-out, top 0.5s ease-in-out, transform 0.5s ease-in-out; }
.hamburger span:nth-child(1) { top: 0px; transform-origin: left center;}
.hamburger span:nth-child(2) { top: 7px; transform-origin: left center;}
.hamburger span:nth-child(3) { top: 14px; transform-origin: left center;}
.hamburger.open span { background:#fff }
.hamburger.open span:nth-child(1) { top: 0px; left: 4px; transform: rotate(45deg);}
.hamburger.open span:nth-child(2) { width: 0%; opacity: 0; }
.hamburger.open span:nth-child(3) { top: 16px; left: 4px; transform: rotate(-45deg);}

#pobocky-mobile { display:none; margin-top:20px; font-size:14px; }
#pobocky-mobile .rest-link { display:block; border:0; top:0; font-size:14px; margin-top:5px; margin-bottom:15px }

#ikony			{ float:left; margin-top:76px; margin-left:14%; width:36%; }
.ikona a			{ float:left; height:22px; margin-right:20%  }
#ikona-fb a		{ background-image:url("../images/icon-fb.svg"); width:11px; }
#ikona-in a		{ background-image:url("../images/icon-ig.svg"); width:22px; }

#mutace			{ float:right; text-transform: uppercase; font-size:15px; letter-spacing:0.1em; margin-top: -12px; }
#mutace	a		{ float:left; display:table; text-decoration:none; border:0; color:white; width:56px; height:56px; text-align:center; 
				  border-radius:100%; margin-right:15px }
#mutace	a:last-child		{ margin-right:0 }
#mutace	a.active	{ background-color:#fff; color:#000  }

#mutace-mobile			{ display:none; float:left; text-transform: uppercase; font-size:15px; letter-spacing:0.1em; z-index:10}
#mutace-mobile	a		{ float:left; display:table; text-decoration:none; border:0; color:white; width:56px; height:56px; text-align:center; 
				  border-radius:100%; margin-right:15px }
#mutace-mobile	a:last-child		{ margin-right:0 }
#mutace-mobile	a.active	{ background-color:#fff; color:#000  }






#kontakt			{ float:left;  margin-top:30px;  }
#rezervovat 		{ text-transform: uppercase; font-size:25px; line-height:40px; font-family: 'Font semibold';  }


/* Jídeláky */
#pripravujeme	{ text-align: center; font-size:40px; margin-top:20vh; margin-bottom:20vh}
#jidelak		{ background:white; color:#1a1919; width:100%; font-size:18px; font-weight: 500; margin-top:30px }
#jidelak0		{ text-decoration: underline; }
.jidelak-detail	{ display:none }
#jidelak-detail0	{ display:block; }
#jidelak-prostor	{ width:60%; margin:auto; line-height:24px; padding-bottom:6vh; }

#jidelak-logo	{ margin:auto; margin-top:8vh; width:259px; height:110px; background-size:259px 110px; }
#jidelak-logo img	{ float:left; width:100%;  }
.jidelak-prostor	{ float:left; width:calc(100%/3); text-transform: uppercase; margin-top:6vh; margin-bottom:2vh; text-align:center;  }
.jidelak-prostor-2	{ width:calc(100%/4);  }
.jidelak			{ display:inline-block; margin:auto; cursor:pointer; outline: none; -webkit-tap-highlight-color: transparent }
.kategorie		{ text-transform: uppercase; background:#1a1919; color:white; text-align: center; /*letter-spacing:2.5px;*/ font-size:16px; line-height:20px; padding:10px 0; margin-top:20px; margin-bottom:20px }
.polozka-prostor	{ position:relative; clear:both; float:left; width:100%; border-bottom:1px solid #807f7f; padding:8px 0; /*letter-spacing:1.5px;*/ }
.polozka			{ width:75%; margin-right:25%; font-size:18px; }
.polozka50		{ float:left; width:45%; text-align:left; }
.bez-ramecku 	{ border:none; }
.cena			{ position:absolute; right:0; bottom:8px; width:20%; text-align:right; }
.cena-tip		{ /*width:90px; height:60px; background:black; color:white; text-align:center; padding-top:30px; font-size:24px; line-height:32px; margin-right:3%;
 			 	  -webkit-border-radius:45px; -moz-border-radius:45px; border-radius:45px; behavior: url(PIE.htc); */ bottom:auto;}
.tip				{ position:relative; float:left; width:20%; margin:10px 5% 10px 15px; }
.tip img			{ position:relative; float:left; width:100%; }

#zavrit			{ position:absolute; right:7%; top:69px; background-image:url("../images/close.svg"); width:40px; height:40px; background-size:40px 40px; cursor:pointer }


.selatko img{ width:100% }
.selatko-prostor { max-width:476px; margin:auto; margin-top:35px; margin-bottom:35px; text-align:center; font-size:23px; line-height: 1.2em; }
.selatko16 { font-size: 16px; line-height: 1.2em;  }

#kontakt-left		{ position:relative; float:left; width:50%; background:black; min-height:550px; line-height:36px }
#kontakt-left-text	{ width:55%; margin:8vh 5% 0 40%;}
#kontakt-left-text h2 { font-size:14px }
#kontakt-informacni	{ margin-top:30px; text-transform: uppercase; font-size:14px; /*letter-spacing:0.1em;*/ cursor:pointer }
#kontakt-eet		{ display:none; font-size:12px; line-height:16px; margin-bottom:30px }
#mapa 				{ position:relative; float:left; border:none; width:100%;   }
#mapa img			{ float:left; width:100%; aspect-ratio:14/4; object-fit:cover  }

/* Fotorama */
#fotogalerie				{ position:relative; width:calc(100% + 4px); background: black; color:white; text-align: center;	text-transform:uppercase; /*letter-spacing:0.2em*/}
.fotorama-prostor  		{ position: fixed; top:0; left:0; width:100%; z-index:1000; background-color: white; }
.fotogalerie-nadpis		{ padding:4vh 0 4vh 0 }

.navigovat 			{ float:left; width:100%; padding:30px 0; }
.navigovat a		{ display:block;  background:#fff; color:#000; margin:auto; padding-top:10px; width:150px; height:40px; text-align: center; text-decoration:none  }
.navigovat a:hover { border:0 }

.lista	{ position:fixed; top:40px; left:-90px; font-weight: 700; padding:15px 100px; background:#eaeaec; color:black; text-transform:uppercase; 
		  transform:rotate(-38deg); text-align:center; z-index:10000 }



#map_canvas { width:100%; height:1400px }