/*
 * HTML5 Boilerplate
 *
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
	Base styles: opinionated defaults
	========================================================================== */
html, button, input, select, textarea { color: #222; }
body { font-size: 1em; line-height: 1.6; }

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection declarations have to be separate.
 * Customize the background color to match your design.
 */
::-moz-selection { background: #004f76; color: #fff; text-shadow: none; }
::selection { background: #004f76; color: #fff; text-shadow: none; }

/*
 * A better looking default horizontal rule
 */
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }

/*
 * Remove the gap between images and the bottom of their containers: h5bp.com/i/440
 */
img { vertical-align: middle; }

/*
 * Remove default fieldset styles.
 */
fieldset { border: 0; margin: 0; padding: 0; }

/*
 * Allow only vertical resizing of textareas.
 */
textarea { resize: vertical; }

/* ==========================================================================
	Chrome Frame prompt
	========================================================================== */
.chromeframe { margin: 0.2em 0; background: #ccc; color: #000; padding: 0.2em 0; }

/*
	// ========================================== \\
	||                                              ||
	||               DYNWEB styles                  ||
	||                                              ||
	\\ ========================================== //
*/

/* --- DEFAULTS start --- */
/* Typekit styles avoiding FOUT */
a {color: #000; text-decoration: underline;}
a:hover {color: #000;}
a:visited {color: #000;}
.wf-loading nav ul li a, .wf-loading h2, .wf-loading h3, .wf-loading h4, .wf-loading .claim, .wf-loading .perex { visibility: hidden; }
html, body, h1 { margin: 0; padding: 0; }
body.hp h1 a { cursor: default; }
a span, a:hover span, button span, button:hover span, .menu-funkce a, .menu-funkce a:hover { -webkit-transition: all 0.3s ease-out; -o-transition: all 0.3s ease-out; transition: all 0.3s ease-out; }
.dwir a { width: 100px; /* define your own W&H and BG image */ height: 100px; display: block; position: relative; overflow: hidden;	/* line-height: 2000%;*/ }
.dwir a span { width: 100px; /* define your own W&H and BG image */ height: 100px; position: absolute; top: 0; left: 0; z-index: 1; display: block; }
.in { max-width: 1140px; position: relative; margin: 0 auto; }
.active { cursor: default; }
.clear { clear: both; }
/* Apply a natural box layout model to all elements (http://paulirish.com/2012/box-sizing-border-box-ftw/) */
* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
h1, h2, h3, h4 { font-family: "proxima-nova", sans-serif; }
/* Responsive images */
img { max-width: 100%; height: auto; }
.ie8 img { width: auto; }
/* --- DEFAULTS end --- */

html	{
	background: rgb(0, 79, 118);
	}
body {
	font-family: sans-serif;
	font-size: 120%;
	color: #000;
	background: #fff;
	}
.modal-backdrop.in,
.ekko-lightbox.in {
	max-width: 100%;
	position: fixed;
	margin: auto;
	}
.no-gutter { padding: 0; }
header	{
	background: url('../img/header-bg.png') 55% 0 no-repeat;
	min-height: 145px;
	}
.grad-sep	{
	width: 100%;
	height: 6px;
	background: url('../img/header-grad.png') top center no-repeat;
	background-size: cover;
	}
header a#home-link	{
	position: absolute;
	display: block;
	top: 32px;
	left: 25px;
	z-index: 2;
	outline: none;
	text-decoration: none;
	}
.lang-menu { position: absolute; right: 0px; top: 25px; }
.lang-menu ul { display: inline-block; vertical-align: top; padding: 0; }
.lang-menu li { display: block; margin-bottom: 10px; }
.lang-menu li a { display: block; width: 24px; height: 24px; line-height: 2000%; overflow: hidden; background-size: initial; background-repeat: no-repeat; background-position: center; border-radius: 11px; }
a#ro { background-image: url('../img/ro.png'); }
a#en { background-image: url('../img/en.png'); }
a#de { background-image: url('../img/de.png'); }
.toggle-menu {
	display: none;
}
.main-menu {
	background: #004f76;
}
.fixed-nav {
	position: fixed;
	top: 0;
	z-index: 8;
	width: 100%;
}
.main-menu ul {
	display: inline-block;
	margin: 0;
	padding: 0;
	vertical-align: top;
	font-size: 80%;
}
.main-menu li {
	display: inline-block;
	vertical-align: top;
	position: relative;
	padding: 0;
	margin: 0;
}
.main-menu li a {
	display: inline-block;
	position: relative;
	font-size: 155%;
	font-weight: bold;
	color: #fff;
	padding: 0.5em 1.25em;
	text-transform: uppercase;
	text-decoration: none;
}
.main-menu li a:hover {
	text-decoration: none;
}
.main-menu li.active a {
	color: #fed000;
}
.main-menu li.active a:after {
	display: block;
	content: "";
	position: absolute;
	left: 50%;
	bottom: -6px;
	z-index: 2;
	width: 22px;
	height: 6px;
	margin-left: -11px;
	background: url('../img/menu-arr.png') no-repeat;
}
.mobile-menu {
	display: none;
}
/* =Dropdown menu= */

.main-menu li ul	{
	padding: 0;
	margin: 0;
	height: auto;
	list-style-type: none;
	position: absolute;
	top: -999em !important;
	left: -1px;
	background: #004f76;
	text-align: left;
	font-size: .9em;
	}
.main-menu li > ul	{
	top: auto;
	left: auto;
	padding: 10px 0;
	font-weight: normal;
	}
.main-menu ul li ul li	{
	padding: 0;
	margin: 0;
	width: 100%;
	position: relative;
	}
.main-menu li:hover ul, .main-menu li.hover ul	{
	position: absolute;
	left: 0;
	top: 43px !important;
	z-index: 999;
	min-width: 265px;
	}
.main-menu ul li.active ul li a,
.main-menu ul li ul li a {
	width: 100%;
	display: block;
	padding: 5px 26px;
	margin: 0;
	color: #fff;
	}
.main-menu ul li ul li a:hover {
	background-color: #fafafa;
		color: #004f76;
		position: relative;
		z-index: 999;
	}
 /* =Dropdown menu end= */

/* main */

.main {}
.hp .article {
	padding: 0 10px;
}
.heading {
	border-bottom: 1px solid #ccc;
	background: rgb(226, 238, 250) url('../img/banner.jpg') right center no-repeat;
}
.heading .in {min-height: 234px;}
.heading h1 {
	margin: 0 0 0 15px;
	padding: 0 18px;
	border-left: 5px solid #000;
	text-transform: uppercase;
	font-weight: bold;
	position: absolute;
	bottom: 25px;
	
	text-shadow: 1px 1px 3px #E2EEFA;
}
.level2 .heading h1 {
	margin-top: 40px;
}
.heading h1 em {
	display: block;
	font-size: 85%;
	font-style: normal;
	font-weight: 100;
	padding: 5px 0 0 0;
	text-transform: none;
}
.level2 .heading h1 em {
	display: none;
}
aside {
	padding: 2.5em 0;
	font-size: 120%;
}
aside p { margin-bottom: 1.5em;}
.btn-purple, .btn-purple:focus, .btn-purple:hover, .btn-purple:visited { background-color: #e2007a; text-decoration: none; color: rgb(255, 255, 255); padding: 0.5em 2.5em; font-weight: bold;}

.normal aside {
	background: #004f76;
	border-bottom: 12px solid #fed000;
	color: #fff;
	padding: 0;
	font-size: 100%;
	margin-bottom: 2em;
}
aside nav ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.normal aside nav ul {
	padding: 10px 0;
}
.hp aside nav h3 {
	background: #EFEFEE;
	padding: 0.7em 0;
	margin: 0;
	font-size: 100%;
	text-transform: uppercase;
}
.hp aside nav ul {
	border: 1px solid #EFEFEE;
}
.hp aside nav ul li {

	/*border: 1px solid #000;*/

	/*border-width: 1px 1px 0 1px;*/

	position: relative;
}
aside nav ul li {
	position: relative;
}
.normal aside nav ul li.active:before {
	position: absolute;
	left: 0;
	top: 50%;
	margin-top: -18px;
	display: block;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 18px 0 18px 11px;
	border-color: transparent transparent transparent #ffffff;
}
.normal aside nav ul li	a {
	display: block;
	padding: 6px 30px;
	color: #fff;
	font-size: 120%;
	font-weight: bold;
}
.normal aside nav ul li.active a {
	color: #fed000;
}
.hp aside nav ul li:last-child {
	border-width: 1px;
}
.normal aside h3 {
	background: #00354f;
	margin: 0;
	padding: 15px 30px;
	color: #fff;
	text-transform: uppercase;
	font-size: 145%;
	font-weight: bolder;
}
aside nav ul li a {
	display: block;
	text-decoration: none;	/*padding: 5px 15px;*/
	padding: 15px 0;
}

.main .article {
	font-size: 130%;
	padding: 2.5em 0;
}
.perex { font-size: 200%; line-height: 1.3; margin-bottom: 1em; font-weight: 300;}
.history-table>tbody>tr>td { border: none; padding: 0.7em; }
.history-table tr>td:nth-child(1) { min-width: 150px; vertical-align: middle;}

.files-list { margin: 0; padding: 10px 20px; list-style: none; }
.files-list li a:nth-of-type(1) { display: inline-block; padding: 5px 15px 5px 31px !important; }
.file-size { font-weight: bold; padding-right: 15px; }
.files-list li a:nth-of-type(2) { display: inline-block; outline: none; padding: 5px; }

#gmap {width: 60%; height: 400px;}

/* footer */

footer {
	background: #004f76;
	color: #77a1b6;
	padding: 1.5em 0;
}
.footer-links ul {
	display: inline-block;
	width: 33%;
	vertical-align: top;
	text-align: left;
	padding: 1em 0;
	margin: 0;
	line-height: 250%;
}
footer a, footer a:link, footer a:visited {
	color: rgb(119, 161, 182);
	text-decoration: none;
}
footer a:hover {
	color: #ccc;
}
.copyright {
	text-align: right;
	margin-top: 1em;
}
.copyright span {color: #fff;}

.page404 {
	padding: 2em 0;
	text-align: left;
}
.page404 h1 {
	padding-bottom: .5em;
}

/*
	// ========================================== \\
	||                                              ||
	||             DYNWEB styles end                ||
	||                                              ||
	\\ ========================================== //
*/
/* ==========================================================================
	Helper classes
	========================================================================== */

/*
 * Image replacement
 */
.ir { background-color: transparent; border: 0; overflow: hidden;    /* IE 6/7 fallback */ text-indent: -9999px; }
.ir:before { content: ""; display: block; width: 0; height: 150%; }

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */
.hidden { display: none !important; visibility: hidden; }

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }

/*
 * Hide visually and from screenreaders, but maintain layout
 */
.invisible { visibility: hidden; }

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */
.clearfix:before, .clearfix:after { content: " "; /* 1 */ display: table; /* 2 */ }
.clearfix:after { clear: both; }

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */
.clearfix { *zoom: 1; }

/* reponsive layout - media queries */

@media handheld, screen and (max-width:1205px) {
	.heading .in {
		padding: 120px 20px 25px 20px;
	}
	.lang-menu {
		right: 20px;
	}
	.row {
		margin: 0;
	}
}
@media handheld, screen and (max-width:1160px) {
	nav.main-menu {
		font-size: 90%;
	}
	.main-menu li:hover ul, .main-menu li.hover ul {
		top: 38px !important;
	}
}
@media handheld, screen and (max-width:1090px) {
	nav.main-menu {
		font-size: 70%;
	}
	.main-menu li:hover ul, .main-menu li.hover ul {
		top: 29px !important;
	}
	footer .in {
		padding: 0 25px;
	}
	.article {
		padding-left: 20px;
		padding-right: 20px;
	}
}
@media handheld, screen and (max-width:970px) {
	.fixed-nav {
		position: static;
	}
	.mobile-menu {
		display: block;
		background: #ccc;
		width: 100%;
		overflow: hidden;
		text-align: center;
	}
	.mobile-menu ul {
		margin: 0;
		padding: 0;
	}
	.mobile-menu li {
		display: inline-block;
		vertical-align: middle;
	}
	.mobile-menu a {
		display: block;
		padding: 20px;
	}
	.menu-btn a {
		background: url('../img/ico-mobile-menu.png') center no-repeat;
	}
	.home-btn a {
		background: url('../img/ico-mobile-home.png') center no-repeat;
	}
	.main-menu {
		display: none;
	}
	.main-menu li.active > ul {
		display: block;
		background: #ddd;
		font-size: 80%;
	}
	nav.main-menu li {
		display: inline-block;
		width: 100%;
		font-size: 120%;
		text-align: center;
	}
	.main-menu ul li:hover ul, .main-menu ul li ul {
		display: block;
		position: initial;
		background: #ddd;
	}
	.main-menu ul li.active ul li a, .main-menu ul li ul li a {
		color: #004f76;
	}
	.normal aside {
		display: none;
	}
	.main-menu li.active ul li > a {
		color: #004f76;
	}
	.main-menu li.active ul li.active > a {
		color: #ec0770;
	}
	.main-menu li.active a:after {
		display: none;
	}
	.heading {
		text-align: center;
		background: none;
		padding: 1em 0;
	}
	.heading .in {
		padding: 30px 0;
		min-height: initial;
		background: none;
	}
	.heading h1 {
		border: none;
		display: block;
		height: auto;
		position: initial;
	}
	.heading h1 span {
		display: inline;
	}
	.level2 .heading h1 {
		margin: 0;
	}
}
@media handheld, screen and (max-width:767px) {
.copyright { text-align: center; font-size: 80%; padding: 0 0 20px 0; }
.heading { font-size: 100%; }
.article, aside { text-align: center; }
.perex { font-size: 150%; }
.heading h1 { font-size: 200%; }
.footer-links ul { width: 100%; text-align: center; line-height: 150%; }
.footer-links { margin-bottom: 1em; }
footer .text-right { text-align: center; }
}

@media handheld, screen and (max-width:480px) {
.perex { font-size: 130%; }
.heading .in { padding: 0.5em 0; }
.heading h1 { font-size: 130%; margin: 0; }
}
