html{
	scroll-behavior:smooth;
	overflow-x: hidden;
}

body{
	margin: 0;
	color: #3E3630;
	font-family: 'PT Sans', sans-serif;
	font-size: 16px;
	width: 100%;
	position: relative;
	overflow-x: hidden;
}

*{
	box-sizing: border-box;
	user-select: none;
	-webkit-user-drag: none;
	user-drag: none;
}

*:focus{
	outline: none;
}

.wrapper{
	padding: 0 30px;
	max-width: 1280px;
	margin: 0 auto;
}

.clear{
	clear: both;
}

.lace{
	background-image: url("../img/lace.png");
	background-size: 23px;
	background-repeat: repeat-x;
	background-position: bottom;
	height: 13px;
	position: relative;
	top: -7px;
	z-index: 100;
}

.lace-up{
	background-image: url("../img/lace-up.png");
	top: 7px;
}

[data-title]:hover:after {
    opacity: 1;
    transition: all 0.1s ease 0.5s;
    visibility: visible;
}
[data-title]:after {
    content: attr(data-title);
    background-color: #fff;
    font-size: 16px;
    position: absolute;
    padding: 10px 15px;
    left: 10px;
    white-space: nowrap;
    box-shadow: 0 0 4px 2px rgba(0,0,0,0.15);
    opacity: 0;
    z-index: 99999;
    visibility: hidden;
    bottom: -30px;
}
[data-title] {
    position: relative;
}

#header{
	padding: 30px 0;
}

#header h1{
	margin: 0;
	display: inline-block;
	height: 36px;
}

#header h1 a{
	display: inline-block;
	height: 36px;
}

#header h1 img{
	height: 36px;
	vertical-align: top;
}

#header #menu-button{
	border: 0;
	background: transparent;
	float: right;
	vertical-align: top;
	padding: 0;
	cursor: pointer;
}

#header #menu-button img{
	width: 32px;
}

#header #nav{
	display: none;
	padding-top: 15px;
}

#header #nav a{
	color: #3E3630;
	text-decoration: none;
	display: block;
	padding-top: 10px;
}

#header #nav a:hover, #header #nav a:focus{
	color: #3E3630;
	text-decoration: underline;
}

#hero{
	background: #999;
	position: relative;
}

#hero .image{
	width: 100%;
	overflow: hidden;
	margin: -15px 0;
	position: relative;
	height: 260px;
}

#hero .image img{
	height: 100%;
	position: absolute;
	left: 50%;
   	top: 50%;
   	transform: translateY(-50%) translateX(-50%);
}

#hero .pins{
	height: 260px;
	width: 320px;
	position: absolute;
	left: 50%;
	margin-left: -160px;
	top: 0;
}

#hero .pin{
	width: 36px;
	position: absolute;
	display: inline-block;
	cursor: pointer;
}

#hero .pin:hover img{
	transform: scale(1) !important;
	animation-play-state: paused;
}

#hero .pin img{
	height: 100%;
	width: 100%;
	display: inline-block;
	animation-name: pins;
  	animation-duration: 1.8s;
  	animation-iteration-count: infinite;
  	animation-direction: alternate;
}

#hero #pin2 img{
	animation-delay: -0.3s;
}

#hero #pin3 img{
	animation-delay: -0.6s;
}

#hero #pin4 img{
	animation-delay: -0.9s;
}

#hero #pin5 img{
	animation-delay: -1.2s;
}

#hero #pin6 img{
	animation-delay: -1.5s;
}

@keyframes pins {
  	0% {transform: scale(.8);}
  	100% {transform: scale(.9);}
}

#hero .pin a{
	position: absolute;
	top: 0;
	left: 48px;
	background: #fff;
	color: #3E3630;
	padding: 12px 16px;
	border: 1px solid #3E3630;
	border-radius: 4px;
	box-shadow: 0 0 4px 2px rgba(0,0,0,.15);
	white-space: nowrap;
	text-decoration: none;
	display: none;
	z-index: 100;
}

#hero #pin3 a, #hero #pin5 a, #hero #pin6 a{
	left: auto;
	right: 48px;
}

#hero #pin1{
	top: 200px;
	left: 135px;
}

#hero #pin2{
	top: 200px;
	left: 0px;
}

#hero #pin3{
	top: 25px;
	left: 290px;
}

#hero #pin4{
	top: 15px;
	left: 130px;
}

#hero #pin5{
	top: 80px;
	left: 215px;
}

#hero #pin6{
	top: 60px;
	left: 255px;
}

.wrapper.text-center{
	text-align: center;
	position: relative;
}

.sweet-image{
	position: absolute;
	z-index: 200;
}

.sweet-image img{
	height: 100%;
}

.wrapper.text-center .sweet-image{
	height: 100px;
	left: 15%;
	bottom: -30px;
}

.wrapper.text-center h2{
	margin: 0;
	font-size: 34px;
	line-height: 38px;
	padding: 70px 0;
}

#content header{
	margin-bottom: -15px;
}

.article{
	padding: 60px 0 50px;
}

.article .text h3{
	margin: 0 0 20px;
	font-size: 40px;
	line-height: 42px;
}

.article .text a{
	color: #3E3630;
	text-decoration: underline;
}

.article .text a:hover, .article .text a:focus{
	color: #000;
}

.article .icon{
	padding-left: 30px;
	display: block;
	line-height: 20px;
	margin-bottom: 5px;
	position: relative;
}

.article .icon:before{
	background-image: url("../img/icons.png");
	background-size: 20px;
	display: block;
	content:"";
	height: 20px;
	width: 20px;
	position: absolute;
	left: 0;
}

.article .icon.place:before{
	background-position: 0 0;
}

.article .icon.opening-hours:before{
	background-position: 0 -20px;
}

.article .icon.facebook:before{
	background-position: 0 -40px;
}

.article .icon.instagram:before{
	background-position: 0 -60px;
}

.article .icon.phone:before{
	background-position: 0 -80px;
}

.article .sticker{
	background-image: url("../img/stickers.png");
	background-size: 75px;
	margin-right: 5px;
	display: inline-block;
	background-repeat: no-repeat;
	height: 75px;
	width: 75px;
	font-size: 0;
}

.article .sticker.outdoor{
	background-position: 0 0;
}

.article .sticker.friendly{
	background-position: 0 -75px;
}

.article .sticker.vegan{
	background-position: 0 -150px;
}

.article .sticker.wifi{
	background-position: 0 -225px;
}

.article .sticker.cards{
	background-position: 0 -300px;
}

.article .sticker.booking{
	background-position: 0 -375px;
}

.article .sticker.glutenfree{
	background-position: 0 -450px;
}

.gallery .slideshow-container {
	max-width: 600px;
	position: relative;
	margin: auto;
	transform: rotate(2deg);
}

.wrapper.reversed .gallery .slideshow-container {
  	transform: rotate(-2deg);
}

.gallery .images {
  	background: #fff;
  	padding: 20px;
  	margin: 30px 0 15px;
  	box-shadow: 0 0 4px 2px rgba(0,0,0,0.15);
}

.gallery .mySlides {
  	display: none;
}

.gallery .mySlides img{
	vertical-align: top;
}

.gallery .dots{
	text-align: center;
}

.gallery .dot {
  	cursor: pointer;
  	height: 30px;
  	width: 30px;
  	margin: 0 5px;
  	background-color: #fff;
  	border-radius: 50%;
  	display: inline-block;
  	transition: background-color 0.6s ease;
  	box-shadow: 0 0 4px 2px rgba(0,0,0,0.15);
  	position: relative;
}

.gallery .active:before, .gallery .dot:hover:before {
  	content:"";
  	height: 14px;
  	width: 14px;
  	display: inline-block;
  	position: absolute;
  	border-radius: 7px;
  	left: 8px;
  	top: 8px;
}

.gallery .fade {
  	-webkit-animation-name: fade;
  	-webkit-animation-duration: 1.5s;
  	animation-name: fade;
  	animation-duration: 1.5s;
}

@-webkit-keyframes fade {
  	from {opacity: .4}
  	to {opacity: 1}
}

@keyframes fade {
  	from {opacity: .4}
  	to {opacity: 1}
}

#mendlak{
	background: #F7D9EA;
}

#mendlak .gallery .active:before, #mendlak .gallery .dot:hover:before {
  	background-color: #3A7ABD;
}

#mendel{
	background: #DCFFA5;
}

#mendel .gallery .active:before, #mendel .gallery .dot:hover:before {
  	background-color: #3E3630;
}

#jiraskova{
	background: #C9DCF1;
}

#jiraskova .gallery .active:before, #jiraskova .gallery .dot:hover:before {
  	background-color: #E83863;
}

#natutti{
	background: #FFFBB4;
}

#natutti .gallery .active:before, #natutti .gallery .dot:hover:before {
  	background-color: #FF974A;
}

#zmrzlina{
	background: #EECEB6;
}

#zmrzlina .gallery .active:before, #zmrzlina .gallery .dot:hover:before {
  	background-color: #3A7ABD;
}

#pizza{
	background: #F2B1B1;
}

#pizza .gallery .active:before, #pizza .gallery .dot:hover:before {
  	background-color: #0DC979;
}

#contact{
	margin-top: -15px;
	overflow: hidden;
}

#contact .wrapper{
	padding-top: 20px;
}

#contact h3{
	font-size: 26px;
	margin-bottom: 15px;
	line-height: 32px;
}

#contact .contact-form, #contact .legal{
	padding-bottom: 20px;
	position: relative;
}

#contact input, #contact textarea{
	border: 1px solid #3E3630;
	height: 48px;
	line-height: 20px;
	padding: 14px;
	font-size: 16px;
	font-family: 'PT Sans', sans-serif;
	color: #3E3630;
	display: block;
	margin: 5px 0 10px;
	width: 100%;
}

#contact textarea{
	height: 120px;
	max-width: 100%;
	min-width: 100%;
}

#contact input:focus, #contact textarea:focus{
	border-color: #6F6359;
}

#contact .submit-button{
	border: 0 none;
	background-color: #3E3630;
	color: #fff;
	text-align: left;
	border-radius: 24px;
	padding: 14px 25px;
	width: 180px;
	float: right;
	cursor: pointer;
	background-image: url(../img/input-button.png);
	background-size: 32px;
	background-repeat: no-repeat;
	background-position: right 15px top 10px;
}

#contact .submit-button:hover, #contact .submit-button:focus{
	background-color: #6F6359;
}

#contact .sweet-image{
	bottom: 0;
	height: 280px;
	left: 70%;
}

#contact .sweet-image img{
	vertical-align: top;
}

section#cookies{
	background: #EECEB6;
	margin: 0;
	padding: 30px 0;
}

@media(min-width: 800px){
	#hero .image{
		height: 400px;
	}

	#hero .pins{
		height: 400px;
		width: 600px;
		margin-left: -300px;
	}

	#hero .pin{
		width: 48px;
	}

	#hero #pin1{
		top: 330px;
		left: 260px;
	}

	#hero #pin2{
		top: 325px;
		left: 55px;
	}

	#hero #pin3{
		top: 40px;
		left: 510px;
	}

	#hero #pin4{
		top: 30px;
		left: 250px;
	}

	#hero #pin5{
		top: 120px;
		left: 385px;
	}

	#hero #pin6{
		top: 95px;
		left: 460px;
	}

	#hero .pin a{
		left: 60px;
	}

	#hero #pin3 a, #hero #pin5 a, #hero #pin6 a{
		left: auto;
		right: 60px;
	}

	#contact .contact-form{
		font-size: 0;
	}

	#contact .form-wrapper{
		font-size: 16px;
		display: inline-block;
		vertical-align: top;
		width: 100%;
	}

	#contact .form-wrapper.first{
		width: 60%;
	}

	#contact .form-wrapper.second{
		width: 40%;
		padding-left: 30px;
	}

	#contact .sweet-image{
		left: 40%;
		height: 380px;
	}

}

@media(min-width: 1200px){
	#header #menu-button{
		display: none;
	}

	#header #nav{
		display: inline-block;
		float: right;
		padding: 0;
	}

	#header #nav a{
		display: inline-block;
		padding-left: 15px;
	}

	#hero .image{
		height: auto;
	}

	#hero .image img{
		position: static;
		width: 100%;
		transform: none;
		vertical-align: top;
	}

	#hero .pins{
		height: 100%;
		width: 100%;
		margin-left: 0;
		left: 0;
	}

	#hero .pin{
		width: 54px;
	}

	#hero #pin1{
		top: 81%;
		left: 47%;
	}

	#hero #pin2{
		top: 81%;
		left: 31%;
	}

	#hero #pin3{
		top: 10%;
		left: 66%;
	}

	#hero #pin4{
		top: 6%;
		left: 46%;
	}

	#hero #pin5{
		top: 31%;
		left: 56%;
	}

	#hero #pin6{
		top: 22%;
		left: 62%;
	}

	#hero .pin a{
		left: 64px;
		top: 10px;
	}

	#hero #pin3 a, #hero #pin5 a, #hero #pin6 a{
		left: auto;
		right: 64px;
	}

	.wrapper.text-center h2{
		font-size: 42px;
		line-height: 46px;
		padding: 100px 0;
	}

	.wrapper.text-center .sweet-image{
		height: 130px;
		bottom: -40px;
	}

	.article .wrapper{
		font-size: 0px;
	}

	.article .wrapper.reversed .text{
		float: right;
	}

	.article .text{
		width: 50%;
		font-size: 16px;
		display: inline-block;
		vertical-align: top;
		margin-top: 20px;
	}

	.article .gallery{
		width: 50%;
		font-size: 16px;
		display: inline-block;
	}

	.gallery .images{
		margin: 15px 0;
	}

	.gallery .slideshow-container {
		margin: 0 60px;
	}

	#contact .wrapper{
		font-size: 0;
	}

	.contact-form, .legal{
		width: 50%;
		display: inline-block;
		font-size: 16px;
		vertical-align: top;
	}

	.contact-form{
		padding-right: 30px;
	}

	.legal{
		padding-left: 30px;
		height: 100%;
	}

	#contact .sweet-image{
		left: auto;
		right: 5%;
		height: 460px;
	}
}


/* Dočasně uzavřeno */

#natutti h3::after{
	content: "Dočasně uzavřeno";
	display: inline-block;
	padding: 10px 25px;
	text-transform: uppercase;
	background-color: #FF974A;
	color: #fff;
	font-size: 20px;
	line-height: 20px;
	transform: rotate(10deg) translateX(-10px);
	font-weight: 400;
}