/**************************************************/
/* tělo stránky */
/**************************************************/

body.stickHeaderPadding
{
	padding-top: 90px;
}

.wrapHeaderAndContent
{
	position: relative;
	flex: 1 0 auto;
}

.wrapMain
{
	justify-content: center;
}



/************************************************/
/* header */
/************************************************/

.wrapFakeHeader
{
	height: 90px;
}

header, .wrapHeader
{
	flex-direction: row;
	justify-content: center;

	height: 100px;
}

	.boxHeader
	{
		justify-content: center;
		overflow: visible;
		height: 90px;

		background: #fff;
/*        border-bottom: 1px solid #EBF5FE;   */
/*
		-webkit-box-shadow: 0px 0px 10px 0px rgba(219,237,252,1);
		-moz-box-shadow: 0px 0px 10px 0px rgba(219,237,252,1);
		box-shadow: 0px 0px 10px 0px rgba(219,237,252,1);
*/

		-webkit-box-shadow: 0px 0px 10px 0px rgba(188, 212, 240, .5);
		-moz-box-shadow: 0px 0px 10px 0px rgba(188, 212, 240, .5);
		box-shadow: 0px 0px 10px 0px rgba(188, 212, 240, .5);
	}

		.contentHeader
		{
			justify-content: center;
			overflow: visible;
		}

		.wrapHeaderOpeningHours
		{
			align-content: center;
			justify-content: center;
			color: #041925;
			font-size: 12px;
		}

			.wrapHeaderOpeningHours span
			{
				color: #041925;
				font-weight: 600;
			}

		.wrapHeaderBooking
		{
			align-items: center;
			align-content: flex-end;
			align-self: center;
			justify-content: flex-end;
			flex-direction: column;
		}

		.wrapAjaxContent .wrapHeaderBooking
		{
			align-content: center;
		}

			.butMore.butSend, a.butMore.butSend
			{
				display: inline-block;
				background: #F08F2D;
				color: #fff;
				font-weight: 600;
				text-decoration: none;
			}

			.butMore.butSend:hover, a.butMore.butSend:hover
			{
				border: 1px solid #88071A;
				background: #88071A;
				color: #fff;
				text-decoration: none;
			}

				.aPhone
				{
					display: block;
					float: none;
					margin-top: 8px;

					text-decoration: none;
					font-size: 16px;
					font-weight: 600;
					text-align: right;
				}

		.wrapMobileMenu
		{
			padding-bottom: 32px;
		}

		.wrapMobileMenu .wrapHeaderBooking
		{
			align-self: center;
			width: 100%;
			margin-top: 48px;
		}

			.wrapMobileMenu a.aPhone,
			.wrapMobileMenu a.aPhone:hover
			{
				color: #fff;
			}



.wrapHeaderAndContent.stickHeaderHeaderAndContent
{
	margin-bottom: 130px;
}

header.stickHeader
{
	position: fixed;
	top: 0;
	overflow: visible;
	width: 100%;
	z-index: 1000;
}

	.wrapHeaderRow
	{
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		min-height: 30px;
		overflow: visible;
	}



.wrapHeader.notVisibleFloatingMenuAtStart
{
/*    display: none;*/
	visibility: hidden;
	opacity: 0;
	top: -90px;
	transition: visibility 0s, opacity .3s ease;
}

.wrapHeader.notVisibleFloatingMenuAtStart.menuFloating
{
/*    display: block;*/
	visibility: visible;
	opacity: 1;
	top: 0px;
}


	/* logo */
	.wrapHeaderLogo
	{
		height: 90px;

		background: transparent url('/templates/__shared__/images/logo/logo.svg') no-repeat left center;
		background-size: 80%;
	}


	/* hlavní menu */
	.wrapMenuMain, .wrapMenuMainHeader
	{
		position: relative;
		float: left;
		justify-content: flex-start;
	}

	.wrapMenuMain
	{
		height: 90px;
		align-items: center;
		overflow: visible;
		padding-left: 96px;
	}

	.wrapMenuMobileHamburger
	{
		flex-direction: column;
		margin-top: 40px;
	}

		.wrapMenuMobileHamburger a
		{
			padding: 0;
		}



		.wrapMenuMainHeader .level1 + .level1
		{
			margin-left: 48px;
		}

		.wrapMenuMainHeader .level1
		{
			position: relative;
			display: block;
			padding: 33px 0;
		}

		.wrapMenuMainHeader .level1::after
		{
			position: absolute;
			left: 0px;
			top: 62px;

			width: 0;
			height: 2px;
			background: #F08F2D;
/*            background: linear-gradient(90deg, rgba(148,177,33,1) 0%, rgba(61,164,251,1) 100%);    */

			content: '.';
			font-size: 0;
		}

		.wrapMenuMainHeader .level1:hover::after
		{
			-webkit-transition: width .3s ease-in-out;
			-moz-transition: width .3s ease-in-out;
			-o-transition: width .3s ease-in-out;
			transition: width .3s ease-in-out;

			width: 48px;
		}

			.wrapMenuMainHeader .level1 a
			{
				padding: 33px 0;
			}



			.wrapMenuMainHeader a, .wrapMenuMainHeader a:hover, .wrapMenuMainHeader .level1:hover a,
			.wrapMenuMobileHamburger a, .wrapMenuMobileHamburger a:hover,
			.wrapSubmenu a, .wrapSubmenu a:hover
			{
				color: #2F46A3;
				font-family: 'Baloo 2', serif;
				font-size: 18px;
				font-weight: 500;
				text-decoration: none;
				text-align: center;
			}

			.wrapItro .wrapMenuMain .level1 a
			{
				color: #fff;
			}

			.wrapMenuMobileHamburger a, .wrapMenuMobileHamburger a:hover
			{
				display: block;
				padding: 15px;
				padding-left: 25px;

				font-size: 100%;
				text-align: left;
			}

			.wrapMenuMobileHamburger a.hidden
			{
				display: none;
			}

			.wrapMenuMainHeader .level1 a:hover, .wrapMenuMainHeader a:hover
			{
				color: #01A4E5;
			}

/* submenu */
.wrapSubmenu.hidden
{
	display: none;
}

.wrapSubmenu
{
	position: absolute;
	left: 280px;
	top: 72px;


	width: 280px;
	padding: 16px;
	background: #fff;

	z-index: 10;

	-webkit-box-shadow: 0px 0px 8px 0px rgba(188, 212, 240, .5);
	-moz-box-shadow: 0px 0px 8px 0px rgba(188, 212, 240, .5);
	box-shadow: 0px 0px 8px 0px rgba(188, 212, 240, .5);
}

	.wrapSubmenu .level1
	{
		display: block;
		width: 100%;
		padding: 6px 0 ;
	}

		.wrapSubmenu a, .wrapSubmenu a:hover
		{
			font-weight: 400;
		}

		.wrapSubmenu a:hover
		{
			color: #F08F2D;
			font-weight: 400;
			text-decoration: underline;
		}

/* menu pro mobily */
.wrapHeaderRowMobile
{
	display: none;
}

	.wrapMenuMobile
	{
		justify-content: center;
		flex-wrap: wrap;
		margin: 0 auto;
	}

		/* ico menu */
		.wrapButMobileMenu svg rect
		{
			fill: #88071A;
		}

		/* logo */
		.wrapHeaderRowMobile .wrapHeaderLogo
		{
			height: 60px;
			padding: 0;
		}

			.wrapHeaderRowMobile .boxHeaderLogo
			{
				margin-top: 0;
			}

			.wrapHeaderRowMobile  .wrapHeaderLogo
			{
				background-size: 80%;
				background-position: left 10px;
			}

		.wrapMenuMobile .hidden
		{
			display: none;
		}

		/* položky mobilního menu */
		.wrapMenuMobile .level1, .wrapMenuMobile .level2
		{
			width: 100%;
			float: none;

			text-align: left;
		}

		.wrapMenuMobile .level1 + .level1
		{
			margin-top: 8px;
		}

		.wrapMenuMobile .level2
		{
			margin-top: 8px;
			padding-left: 25px;
		}

			.wrapMenuMobile .level1 a, .wrapMenuMobile .level2 a
			{
				color: #fff;
				text-decoration: none;
			}

			.wrapMenuMobile div a:hover
			{
				color: var(--color-button-1);
				text-decoration: underline;
			}

		.wrapMenuLoginMobile
		{
			justify-content: center;
			margin-top: 30px;
		}

.boxMenuMobile + .boxMenuMobile
{
	margin-top: 48px;
}

/************************************************/
/* footer */
/************************************************/

footer, .wrapFooter
{
	flex-shrink: 0;
	background: #000e0f;
}

	footer a
	{
		color: var(--color-blue);
		text-decoration: none;
	}

	.labelFooterSection
	{
		margin: 0 auto;
		color: #fff;
		text-align: center;
		font-weight: 400;
	}



	/* copyright */
	.wrapFooterCopyright
	{
		justify-content: center;
		padding: 24px 0;
	}

		.boxFooterCopyright
		{
			color: #fff;
			font-size: 75%;
		}

			.boxFooterCopyright div
			{
				color: #fff;
				float: left;
			}

			.boxWebDeveloper
			{
				text-align: right;
			}

	footer a, footer a:hover
	{
		color: #F08F2D;
	}






/**************************************************/
/* widget pro galerie a soubory ke stažení */
/**************************************************/

.wrapWidget
{
	margin: 0;
}

	.boxWidget
	{
		margin: var(--size-50) auto;
	}

.boxWidgetContent
{
	width: 100%;
	display: block;
	padding: 0 ;
	overflow: hidden;
	float: none;
}

.boxWidgetContent
{
}

.wrapWidget .label
{
	width: 100%;
	display: block;
	margin-bottom: var(--size-25);

	color: var(--color-text-headline);
	font-size: 100%;
	font-weight: 400;
	text-align: center;
	text-transform: uppercase;
}


/**************************************************/
/* image gallery */
/**************************************************/

ul.imageGallery, ul.files, ul.links
{
	list-style: none outside;
	margin: 0;
	line-height: 1em;
	float: left;
	display: block;
	width: 100%;
}

.wrapWidgetGallery
{
	width: 100%;
	margin: 0 0 30px 0;
}

.wrapImgGallery
{
	margin: 4px;
	height: 100%;
}

.wrapImgGallery:hover
{

}

	.boxImgGallery
	{
		width: 100%;
		padding-top: 75%; /* 1:1 Aspect Ratio */
		position: relative; /* If you want text inside of it */

		background: rgba(0,0,0,0.08);
		font-size: 0;
	}

	.wrapImgGallery:hover .boxImgGallery
	{
		background: rgba(0,0,0,0);
	}

	.imageGallery
	{
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		align-items: stretch;
	}

	.imageGallery a
	{
		width: 100%;
		float:left;
/*        margin: 2%;*/

		text-decoration: none;
		text-align: center;
	}

		.imageGallery img
		{
/*            height: 150px;*/
		}

		.imageGallery img:hover
		{
		}


/**************************************************/
/* seznam souborů ke stažení */
/**************************************************/

.wrapWidgetFiles
{
	background: #fff;
}

	.wrapWidgetFiles .label
	{
		display: none;
	}

ul.files li
{
	list-style-type: none;
	margin: 0;
	padding: 0;
	background: #fff;
	border-bottom: 1px solid #8bc5f9;
}

ul.files li:hover
{
	border-bottom: 1px solid #074680;
	background: #fff;
}


ul.files a
{
	display: inline-block;
	font-weight: 400;
	color: var(--color-blue);
}

ul.files a:hover
{

}

ul.imageGallery, ul.files, .links
{
	padding: 0;
	display: block;
	float: none;
	overflow: hidden;
}

.wrapFile
{

}

.wrapFile:hover
{

}

.wrapFile + .wrapFile
{
	margin-top: 2px;
}

.wrapFile div.block
{
	float: left;
	font-size: 87.5%;
}

	.fileTitle, .fileAnchors
	{
		padding: 8px 8px 8px 8px;

		color: #0470c8;
		font-weight: 400;
	}

	.fileTitle
	{
		font-weight: 600;
	}

	ul.files li:hover .fileTitle
	{
		color: #044c8b;
	}


	.fileAnchors
	{
		justify-content: flex-end;
	}

	.fileAnchors a + a
	{
		margin-left: 24px;
	}



/**************************************************/
/* související odkazy */
/**************************************************/

ul.links
{
	margin: 0 0 20px 0 ;
}

	ul.links li
	{
		margin: 0;
		line-height: 1.7em;
	}

	ul.links li a, ul.files a
	{
		text-decoration: none;
	}

	ul.links li a:hover, ul.files a:hover
	{
		text-decoration: underline;
	}



/**************************************************/
/* video galerie */
/**************************************************/

.videoTitleWidget, a.videoTitleWidget
{
	margin: 10px 0 0 0;
	text-decoration: none;
}

.vimeo, .youtube
{
	display: block;
	overflow: hidden;
}

	.vimeo img, .youtube img
	{
		width: 100%;
		max-width: 100%;
	}

.contentVideoWidget
{
	overflow: hidden;
	display: block;
}

	.contentVideoWidget p
	{
		margin: 0;
	}

.boxVideoWidgetThumb
{
	position: relative;
	width: 100%;
	max-width: 100%;
	overflow: hidden;
}

	.boxVideoWidgetThumb img
	{
		width: 100%;
		max-width: 100%;
	}

	.boxVideoOverlay
	{
		position: absolute;
		top: 0%;
		left: 0%;

		width: 100%;
		height: 100%;

		/*background: rgba(85,85,85,.75); */
	}

		.boxVideoButtonPlay
		{
			position: absolute;

			height: 0px;
			width: 0px;
		}

		.boxVideoOverlay:hover .boxVideoButtonPlay, .boxVideoButtonPlay:hover, .boxVideoButtonPlayHovered
		{
			background-color: #000;
		}







/**************************************************/
/* breadcrump */
/**************************************************/
.menuPath
{
	margin: 20px 0;
	padding: 0;
	overflow: hidden;
}

	.menuPath /*, .menuPath ul li a*/
	{
		font-size: 80%;
	}

	.menuPath a
	{
		text-decoration: none;
	}

	.menuPath a:hover
	{
		text-decoration: underline;
	}

.menuPath ul
{
	list-style: none outside !important;
	display: inline;
	margin: 0;
	padding: 0;
}

	.menuPath ul li
	{
		padding: 0;
		margin: 0 4px 0 0;
		float: left;
		list-style-type: none !important;
		background: none !important;
	}

		.menuPath ul li /*, .menuPath ul li a */
		{
			font-size: 85%;
		}

			.menuPath ul li span
			{
				background: transparent url("/templates/__shared__/images/right-arrow-blue-8.svg") no-repeat scroll right center;
				color: #fff;
				display: inline-block;
				margin: 0 5px;
				width: 10px;
			}

		.menuPath ul li:last-child
		{
			font-weight: 400;
		}

		.menuPath ul li a
		{
			color: #555 !important;
			text-decoration: none;
		}

		.menuPath ul li a:hover
		{
			color: #000;
		}

	.pathFirst { padding-left: 0 !important;}
	.pathLast { padding-right: 0 !important; background: none !important;}

	.pathBack
	{
		/*float: right;*/
		display:none;
	}



/**************************************************/
/* button */
/**************************************************/

.but, button
{
	display: inline-block;
	padding: 8px 20px;
	background: #94b121;
	border: 0;

	color: #fff;
	font-size: 100%;
	font-weight: 400;
	text-decoration: none;

	cursor: pointer;
}

button.hidden
{
	display: none;
}

.but span, button span
{
	color: #fff;
}

.but:hover, button:hover, .butHovered
{
	background: #3da4fb;
}

.but:active, button:active
{
	position:relative;
	/*top:1px; */
}

button { }




/************************************************/
/* menu main / ajax box */
/************************************************/

.wrapButMobileMenu
{
	position: absolute;
	top: calc(50% - 21px);
	right: 4.1%;
	display: none;
	background: transparent url('/templates/__shared__/images/svg-html/align-center.svg') no-repeat center center;
	background-size: 100%;

	width: 32px;
	height: 32px;

	cursor: pointer;
}

	.wrapButMobileMenu svg path
	{
		fill: var(--color-blue);
	}

.wrapAjax
{
	position: absolute;
	top: 0;
	left: 0;

	display: none;
	z-index: 9990;

	min-height: 100%;
	width: 100%;
	background: #02033c;
}

	.wrapIcoCloseMenu
	{
		position: absolute;
		top: 12px;
		right: 12px;

		width: 32px;
		height: 32px;
	}


/************************************************/
/* ajax okno  */
/************************************************/

.wrapAjax
{
	display: none;
}

.wrapAjax
{
	position: fixed;
	top: 0;
	left: 0;
	z-index: 9999;

	height: 100vh;
	width: 100%;

	margin: 0;
	padding: 0;

	background: rgb(3,89,160);
	background: linear-gradient(315deg, rgb(10, 28, 51) 0%, rgb(20, 56, 102) 100%);
}


.wrapAjaxContent
{
	height: 100%;
	padding-top: 96px;
}

	.wrapAjaxAdjustedContent
	{
		height: 100%;
		overflow: scroll;
		padding-bottom: 48px;
	}

	.boxAjax
	{
		position: relative;
		justify-content: center;

		height: 100%;
		padding-top: 96px;
	}

		.wrapIcoCloseAjax
		{

			position: absolute;
			top: 24px;
			right: 24px;

			width: 16px;
			cursor: pointer;
		}

				.wrapIcoCloseAjax svg
				{
					width: 16px;
					height: 16px;
				}

				.wrapIcoCloseAjax polygon
				{
					fill: #fff;
				}

		/* obsah */
		.boxAjax h3,
		.boxAjax .wrapWidget .label
		{
			color: #fff;
		}

		.boxAjax h3
		{
			font-weight: 600;
		}

		/* mobilní menu */
		.wrapMobileMenu .level1
		{
			display: block;
			float: none;
			width: 100%;

			text-align: center;
		}

		.wrapMobileMenu .level1 + .level1
		{
			margin-top: 12px;
		}

			.wrapMobileMenu .level1 a
			{
				color: #FAD19E;
				font-weight: 400;
				text-decoration: none;
			}

	.wrapAjaxMenuLogo
	{
		position: absolute;
		left: 0;
		top: 0px;

		width: 317px;
		height: 80px;

		background: transparent url('/templates/__shared__/images/logo/logo-white.svg') no-repeat 24px center;
		background-size: 110px;
	}

/************************************************/
/* dlaždice na střídačku - foto - text  */
/************************************************/

.wrapTileItem
{
	display: flex;
	justify-content: center;
	flex-direction: row;
	flex-wrap: wrap;

	padding: 30px 0;
}





/************************************************/
/* infoboxy - čísla  */
/************************************************/

.sectionNumbers .wrapInfoboxNumbers
{
	background: rgb(0,119,182);
	background: linear-gradient(150deg, rgba(0,119,182,1) 0%, rgba(0,180,216,1) 100%);
}

.wrapInfoboxNumbers
{
	display: flex;
	justify-content: center;
}

	.wrapInfoboxNumber
	{
		float: left;
		text-align: center;
	}

	.wrapInfoboxNumber.wrapSectionBlueAzure
	{
		color: #EDFAFD;
	}

		.wrapInfoboxNumber > div
		{
			margin-bottom: 5px;

			color: #fff;
			font-family: 'Barlow', Arial, sans-serif;
			font-size: 175%;
			font-weight: 500;
			text-transform: uppercase;
			line-height: 1.35;
		}



/************************************************/
/* klienti / partneři  */
/************************************************/

.wrapClient
{
	overflow: hidden;

	height: 80px;
	background: none;
	padding: 20px;
}

	.wrapClient img
	{
/*
		height: 40px;
		max-height: 20px;
*/
	}



/************************************************/
/* média / napsali o nás  */
/************************************************/

.wrapTiles
{
	flex-direction: row;
	flex-wrap: wrap;
	align-items: stretch;
}

	.wrapTileMedia
	{

	}

	.wrapTileMedia, .wrapTileMedia:hover, .boxTileMedia
	{
		justify-content: center;
		flex-wrap: wrap;
		padding: 10px;
		text-decoration: none;
	}

		.boxTileMedia
		{
			width: 100%;
			padding: 30px;
			background: #fff;
/*            border: 1px solid silver;*/

			-webkit-box-shadow: 0px 0px 5px 1px rgba(190,192,196,.20);
			-moz-box-shadow: 0px 0px 5px 1px rgba(190,192,196,.20);
			box-shadow: 0px 0px 5px 1px rgba(190,192,196,.20);
		}

		.wrapTileMedia:hover .boxTileMedia
		{
			-webkit-box-shadow: 0px 0px 8px 2px rgba(190,192,196,.60);
			-moz-box-shadow: 0px 0px 8px 2px rgba(190,192,196,.60);
			box-shadow: 0px 0px 8px 2px rgba(190,192,196,.60);
		}

			/* logo */
			.mediaTitleImg
			{
				height: 60px;
				margin-bottom: 20px;

/*                -webkit-filter: grayscale(100%);
				filter: grayscale(100%);
*/
			}

			.wrapTileMedia:hover .mediaTitleImg
			{
				-webkit-filter: grayscale(0%); /* Safari 6.0 - 9.0 */
				filter: grayscale(0%);
			}

			/* nadpis */
			.mediaWrapContent
			{
				flex-direction: column;
				flex-wrap: wrap;
				justify-content: center;
			}

			.mediaTitle
			{
				min-height: 50px;
				margin-bottom: 15px;

				color: var(--color-text);
				font-size: 120%;
				font-weight: 600;
				line-height: 1.2;
				letter-spacing: 0;
			}

			.mediaButRead
			{
				color: var(--color-bg-blue);
			}
/*
			a.wrapTileMedia div, a.wrapTileMedia:hover div
			a.wrapTileMedia .mediaTitle, a.wrapTileMedia:hover .mediaTitle
			{
				text-decoration: none;
			}
*/


			/* vydáno */
			.mediaDate
			{
				margin-bottom: 5px;
			}

				.mediaDate span
				{
					font-size: 90%;
					letter-spacing: -1px;
				}

			/* odkaz na článek */
			.mediaButRead
			{
				margin-top: 10px;
				font-weight: 600;
				text-transform: uppercase;
			}

			.mediaButRead:hover
			{
				color: var(--color-button-1);
				letter-spacing: 1px;
			}



/************************************************/
/* novinky */
/************************************************/

.wrapNews, .wrapBlogPosts
{
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
}

	.wrapNewsItem, .wrapBlogPost
	{
		padding: 24px;
	}

	.wrapNewsItemFullList, .wrapBlogPostFullList
	{
		margin-bottom: 20px;
	}
/*
	.wrapNewsItem + .wrapNewsItem
	{
		margin-top: var(--margin-section);
	}
*/

		.boxNewsItem, .boxBlogPost
		{
			position: relative;
			padding-bottom: 4px;
		}

			.newsDate
			{
				margin: 6px 0 12px;

				color: var(--color-bg-blue-dark);
				font-size: 75%;
				letter-spacing: 0px;
			}

			a.newsTitle, a.postTitle
			{
				min-height: auto;
				margin-bottom: 5px;

				text-align: left;
				text-decoration: none;
			}

			a.newsTitle:hover, a.postTitle:hover
			{
				color: var(--color-bg-blue);
			}

			.newsPerex, .postPerex
			{
				margin-bottom: 10px;
			}


			/* náhledová fotka u přehledu novinek */
			.wrapNewsImage
			{
				height: 200px;
			}

				.wrapAspectRatioHack.boxNewsImage
				{
					padding-top: 60%;
				}



/************************************************/
/* video - iframe z YouTube */
/************************************************/

.videoFullFrame
{
	width: 100%;
	height: 600px;
}



/************************************************/
/* odkaz na demo zdarma */
/************************************************/

.wrapFreeDemo
{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

	.wrapFreeDemo h2
	{
		width: 100%;
		margin-bottom: 40px;

		color: #fff;
		text-align: center;
	}

.butDemo, .butDemo:hover
{
	padding: 15px 30px;
	background: var(--color-button-1);

	color: #fff;
	font-size: 150%;
	font-weight: 400;
	text-decoration: none;
	letter-spacing: 0px;
}

.butDemo:hover
{
	background: var(--color-bg-blue-dark);
	letter-spacing: 1px;
}


/************************************************/
/* návratová šipka nahoru */
/************************************************/

.aBackToTop
{
	position: fixed;
	right: 30px;
	bottom: 30px;

	width: 30px;
	height: 30px;
	background: rgba(0, 0, 0, .4) url('/templates/__shared__/images/up-white.svg') no-repeat center 7px;
	background-size: 15px;

	cursor: pointer;
}

.aBackToTop:hover
{
	right: 25px;
	bottom: 25px;

	width: 40px;
	height: 40px;

	background: rgba(0, 0, 0, .6) url('/templates/__shared__/images/up-white.svg') no-repeat center 11px;
	background-size: 15px;
}


/************************************************/
/* buttony */
/************************************************/

.butUnderText
{
	display: inline-block;
	margin-top: 20px;
}

.butConversion, .wrapSectionWhite .butConversion
{
	background: var(--color-button-1);
	border-color: var(--color-button-1);
	color: #fff;
	font-size: 120%;
}

.wrapSectionWhite .butConversion:hover
{
	border-color: var(--color-bg-blue-dark);
}



/************************************************/
/* faq  */
/************************************************/

p + .wrapFaq
{
	margin-top: 30px;
}

.wrapFaq
{

}

	.boxFaqQuestion
	{
		background: #fff;
		padding: 16px;
	}

	.boxFaqQuestion + .boxFaqQuestion
	{
		margin-top: 4px;
	}

		.boxFaqQuestion .faqTitle
		{
			float: left;
			width: calc(100% - 30px);
			padding-right: 20px;

			color: #2F46A3;
			font-size: 108%;
			font-weight: 400;
		}

		.faqIcoArrow
		{
			float: left;
			width: 24px;
			height: 24px;
			cursor: pointer;
			font-size: 0;

			background: transparent url('/templates/__shared__/images/svg-html/add.svg') no-repeat center center;
			background-size: cover;
		}

		.faqIcoCollapse
		{
			rotate: 45deg;
			background: transparent url('/templates/__shared__/images/svg-html/add.svg') no-repeat center center;
			background-size: 60%;
		}

		.boxFaqAnswer
		{
			display: none;
			margin-top: 12px;
		}



/****************************************************************/
/* pager */
/****************************************************************/

.wrapPager
{
	display: block;
	width: 100%;
	float: none;
	overflow: hidden;
}

	.boxPager
	{
		overflow: hidden;
		margin: 20px 0;
	}

.wrapPager a
{
	display: inline-block;
	font-size:85%;
	padding: 3px 10px;
	text-decoration:none;
	cursor: pointer;
	/* float: left; */
	display: inline-block;
	margin: 0 5px 0 0;
	color: var(--color-bg-blue);
}

	.wrapPager a span
	{
		color: var(--color-bg-blue);
	}

.wrapPager a:hover
{
	background: var(--color-bg-blue-dark);
}

	.wrapPager a:hover span
	{
		color: #fff;
	}

.wrapPager a.this
{
	background: var(--color-bg-blue);
}

	.wrapPager a.this , .wrapPager a.this span
	{
		color: #fff;
	}

.wrapPager a.this:hover
{
	background: var(--color-bg-blue-dark);
	color: #fff;
}

	.wrapPager a.this:hover, .wrapPager a.this:hover span
	{
		color: #fff;
	}


.wrapPager a.this:hover
{

}


.wrapPager a:active
{

}

.pagerDots
{
	display: block;
	margin: 0 5px;
}



/************************************************/
/* kontakt  */
/************************************************/

.wrapContactMain
{
	margin: 0 auto 40px;
	background: #eceae3;
	border: 20px solid #cdc7b2;
}

	.wrapContactMain .block
	{
		float: left;
		padding: 40px;
	}

.wrapContactPobocky
{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
	text-align: center;
}

.map
{
	width: 100%;
	max-width: 100%;
	height: 350px;
}


/************************************************/
/* kontakt  */
/************************************************/

.boxReferenceCarousel
{
	position: relative;
	height: 250px;
}

	.boxReferenceCarousel img
	{
		width: 100%;
		max-width: 100%;
	}

	.boxReferenceCarousel span
	{
		position: absolute;
		bottom: 0;
		left: 0;

		width: 100%;
		height: 40px;

		background: rgba(0,0,0,.2);
		padding: 10px;

		color: #fff;
		font-family: 'Barlow', Tahoma, Arial, sans-serif;
		font-weight: 600;
	}



/************************************************/
/* úvodní foto a formulář */
/************************************************/

.wrapIntroBg
{
	position: relative;
	justify-content: center;
	width: 100%;
}

	.wrapIntroBg::before
	{
		content: '';
		position: absolute;

		width: 100%;
		height: 100%;

		background: rgba(0,0,0,.25);
	}

	.boxIntro
	{
		position: relative;
		flex-direction: row;
		flex-wrap: wrap;

		margin: 60px 0;
		padding: 30px;
	}

		.boxIntro .boxMotto
		{
			margin-top: 20px;
			color: #fff;
			text-align: left;
			font-size: 350%;
			font-family: 'Barlow', Arial, sans-serif;
			font-weight: 700;
			line-height: 1.1;
			text-transform: uppercase;
			text-shadow: 0px 0px 10px rgba(0,0,0,0.58);
		}

		h1.boxWhatWeDo
		{
			margin-top: 20px;

			color: #fff;
			font-family: 'Barlow', Arial, sans-serif;
			font-size: 150%;
			font-weight: 400;
			text-shadow: 0px 0px 10px rgba(0,0,0,0.58);
			text-align: left;
		}


		.wrapFormContact
		{
			flex-wrap: wrap;
			justify-content: flex-end;
/*            padding: 30px;*/
		}

		.wrapContactFormInputs
		{
			flex-direction:row;
			flex-wrap: wrap;
		}

			.wrapContactFormInputs label
			{
				color: #050561;
				font-family: 'Barlow', Arial, sans-serif;
				font-size: 70%;
				font-weight: 700;
				text-transform: uppercase;
			}

			.wrapContactFormInputs input, .wrapContactFormInputs textarea
			{
				margin-bottom: 15px;
				padding: 5px 0;
				border-bottom: 1px solid #8B8BF9;

				color: #0608B2;
				font-size: 100%;
			}

			.wrapContactFormInputs input:focus-within, .wrapContactFormInputs textarea:focus-within
			{
				border-bottom: 1px solid #463e3d;
			}


		.wrapFormContact button
		{
			position: relative;
			right: 0;
			margin-top: 20px;
			padding: 10px 20px;

			font-family: 'Barlow', Arial, sans-serif;
			font-weight: 600;
			text-transform: uppercase;
			letter-spacing: 1;
		}



/************************************************/
/* rychlý kontakt */
/************************************************/

.wrapQuickContact
{
	justify-content: center;
	align-content: center;
}

	.boxQuickContactIco
	{
		justify-content: flex-end;
		padding-right: 86px;
	}

	.boxQuickContactOne
	{
		justify-content: center;
	}

	/* text rychlý kontakt */
	.boxQuickContactContent
	{
		text-align: center;
	}

	/* text rychlý kontakt */
	.boxQuickContactContent *, .boxQuickContactContent a
	{
		color: #D8ECFD;
		text-decoration: none;
	}

	.wrapSection.wrapSectionDarkBlue .boxQuickContactContent p a
	{
		color: #f6a23c;
		font-weight: 700;
	}

	.wrapSection.wrapSectionDarkBlue .boxQuickContactContent p a.butMore
	{
		color: #fff;
	}

		.boxQuickContactContent p
		{
			line-height: 180%;
		}

		.boxQuickContactContent h3
		{
			color: #fff;
			font-weight: 400;
		}

		.boxQuickContactContent p + h3
		{
			margin-top: 32px;
		}

		.boxQuickContactContent p:last-of-type
		{
			margin-bottom: 0;
		}

		.boxQuickContactContent a:hover
		{
			color: #F08F2D;
			text-decoration: underline;
		}

	/* ico rychlý kontakt*/
	.icoSpeech
	{
		width: 60%;
		max-width: 200px;
	}

		.icoSpeech path
		{
			fill: #a2d9f6;

			-webkit-box-shadow: 0px 0px 18px 0px rgba(249, 247, 220, 0.75);
			-moz-box-shadow: 0px 0px 18px 0px rgba(249, 247, 220, 0.75);
			box-shadow: 0px 0px 18px 0px rgba(249, 247, 220, 0.75);

			-webkit-filter: drop-shadow( 0px 0px 18px 0px rgba(249, 247, 220, 0.75));
			filter: drop-shadow( 0px 0px 18px 0px rgba(249, 247, 220, 0.75));
		}






/************************************************/
/* rozcestník - apartmány */
/************************************************/

.containerFlex.wrapApartments
{
	align-items: stretch;
	width: 100%;
}


/************************************************/
/* formulář */
/************************************************/

.wrapForm
{
	padding: 32px;
	background: #fff;
}

	.wrapFormRow, .boxFormRow
	{
		position: relative;
		overflow: visible;
	}

		.boxFormRow
		{
			float: left;
		}

	.wrapFormRow + .wrapFormRow
	{
		margin-top: 24px;
	}

		.wrapForm label
		{
			position: absolute;
			z-index: 1;

			left: 12px;
			top: -13px;

			background: #fff;
			padding: 4px 8px;

			font-size: 87.5%;
			font-weight: 600;
		}

			label.icoRequired:after
			{
				content: '*';
				color: red;
				font-size: 112.5%;
				font-weight: 600;
				margin-left: 4px;
			}

	.wrapFormRowCheckbox, .wrapFormRow + .wrapFormRowCheckbox
	{
		overflow: hidden;
		margin-top: 8px;
	}

		.wrapFormRowCheckbox input[type="checkbox"]
		{
			float: left;
			padding: 0;
			margin: 2px 6px 0 0;
		}

		.wrapFormRowCheckbox input[type="checkbox"] + label
		{
			position: relative;
			z-index: 100;
			float: left;

			left: 0;
			top: 0;

			padding: 0;

			font-family: 'Open Sans', Tahoma, Arial, sans-serif;
			font-size: 82%;
			font-weight: 400;

		}

		.wrapForm input, .wrapForm textarea
		{
			padding: 12px 12px;
			border: 1px solid #CDDFF4;;
		}

		.errFormMsg
		{
			position: relative;
			background: orange;
			margin-top: 4px;
			padding: 4px 8px 4px 48px;

			color: #fff;
			font-size: 80%;
			font-weight: 400;
			text-align: left;
		}

		.errFormMsg:before
		{
			position: absolute;
			left: 0;
			top: 0;

			width: 32px;
			height: 27.2px;
			content: '!';
			background: red;

			display: flex;
			align-items: center;
			justify-content: center;

			color: #fff;
			font-weight: 600;
			font-size: 125%;
			text-align: center;
		}

	.wrapFormRowButton
	{
		text-align: left;
	}


/************************************************/
/* ubytování / virtuální prohlídka */
/************************************************/

#virtualniprohlidka
{
	width: 100%;
}

/************************************************/
/* services */
/************************************************/

.wrapServices
{
	grid-template-columns: repeat(4, 19%);
	gap: 8%
}

.textServicesContent
{
	width: 100%;
	margin-bottom: 16px;
}

	.textServicesContent h3
	{
		font-size: 24px;
		font-weight: 500;
	}

	.textServicesContent h3 a, .textServicesContent h3 a:hover
	{
		text-decoration: none;
	}

	.textServicesContent h3 a:hover
	{
		color: #01A4E5;
	}


	.wrapAspectRatioHack
	{
		width: 100%;
		padding-top: 60%;
		margin-bottom: 24px;
	}


/************************************************/
/* services */
/************************************************/

.wrapCaptions
{
	grid-template-columns: repeat(4, 23%);
	gap: 2%
}
	.wrapCaptionsItem
	{
		background: #fff;
		padding: 24px;
	}



/************************************************/
/* slide */
/************************************************/

.swiper-slider
{
	position: relative;
}

	.wrapCaptionsItem
	{
		background: #fff;
		padding: 24px;
	}

		.backround-overlay
		{
            width: 100%;
            height: 100%;
			position: relative;
            background-size: cover;
            background-position: center;
		}

        .backround-overlay::after {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-image: inherit; /* Převzme stejný obrázek z kontejneru */
            background-size: cover;
            background-position: center;

            /* Aplikuje rozmazání na pseudoelement */
            filter: blur(10px);

            /* Vytváří masku s přechodem, která skryje rozmazání vpravo */
            mask-image: linear-gradient(to right, black, black 35%, transparent 80%);
            -webkit-mask-image: linear-gradient(to right, black, black 35%, transparent 80%);
        }


        /* Div s efektem rozmazání, který se vrství přes fotku */
        .blur-overlay
		{
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;

            /* Moderní verze pro Chrome, Edge, Safari */
            -webkit-mask-image: linear-gradient(to right, black, black 40%, transparent 80%);
            mask-image: linear-gradient(to right, black, black 40%, transparent 80%);
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);

            /* Fallback pro starší prohlížeče, které nepodporují backdrop-filter */
            filter: blur(10px);
        }

		.sliderContent
		{
            position: absolute;
            top: 0;
            left: 0;
            width: 40%;
            height: 100%;
            display: flex;
            /* justify-content: center; */
            align-items: center;
			align-content: center;


			display: flex;
			flex-direction: row;
			flex-wrap: wrap;
			align-items: left;
			width: 40%;
			margin-left: 8%;
			/* background: #01A4E5; */

            text-align: left;
            font-size: 16px;
            text-shadow: 0px 0px 24px rgba(0, 0, 0, 0.95);
		}

			.wrapSection .sliderContent h2
			{
				color: #fff;
				text-align: left;
				font-size: 350%;
				font-weight: 700;
				line-height: 1em;
			}

			.wrapSection .sliderContent p
			{
				color: #fff;
				font-size: 120%;
				font-weight: 500;
			}