body,
html {
    width: 100%;
	height: 100%;
}

body, p {
	color: #787976; 
	font: 400 1rem/1.5625rem "Open Sans", sans-serif;
}

.logo {
	display: block;
	padding: 20px;
}

.title-text {
	font: 100 2.9rem/1.9rem "Antonio", sans-serif;
	text-align: justify;
	padding-left: 20px;
	padding-bottom: 5px;
	color: #787976;
}

.title-info {
	font: 150 2.9rem/1.9rem "Bebas Neue", sans-serif;
	text-align: justify;
	padding-left: 30%;
	padding-bottom: 5px;
	color: #888f9a47;
	display: flex;
	position: absolute;
	-webkit-animation: ani_title-text 1s infinite ease-in-out;
	animation: ani_title-text 1s;
	animation-duration: 5s;
	animation-iteration-count: initial;
	animation-play-state: running;
}

.header {
	background: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.5)), url('../images/header-background.jpg') center center no-repeat;
	background-size: cover;
	height: 100%;
}
.header .header-content {
	padding-top: 8rem;
	padding-bottom: 2.125rem;
	text-align: center;
}

.p-heading {
	width: 85%;
	margin-right: auto;
	margin-left: auto;
}

/**********************************/
/*     Navbar   			      */
/**********************************/

.navigace {
	text-align: right;
	padding-right: 20px;
	animation: ani_nav 5s;
	animation-direction: alternate;
	animation-iteration-count: 1;
	animation-duration: 1s;
	-webkit-animation-duration: 1s;
}

.navigace-line {
	height: 0.8px;
	background: linear-gradient(90deg,rgba(144, 238, 144, 0), #9ca5b4);
}

.nav-menu {
	font: 100 0.9rem/1.9rem "Open Sans", sans-serif;
}

.nav-menu li{
	display:inline;
}

.nav-menu li a{
	display:inline-block;
	padding:10px;
	color: #9ca5b4;
}
.nav-menu li :hover{
	color: #ffffff;
	text-decoration: none;
	transition: 0.5s linear;
	border-bottom-style: solid;
	border-bottom-width: thin;
	border-bottom-color: red;
}

.nav-link{
}
/**********************************/
/*     Navbar   			      */
/**********************************/

/**********************************/
/*     Animation			      */
/**********************************/
@keyframes ani_title-text {
	from {
		opacity: 0;
		transform: scale(0,0);
	}

	to {
		opacity: 1;
	}

}


@keyframes ani_logo {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}

}

@keyframes ani_nav {
	from {
		transform: scale(0,0);
		opacity: 0;
	}

	to {
		opacity: 1;
	}

}

@keyframes ani_jump {
	from {
		transform: translateY(150%);
		opacity: 0;
	}

	to {
		transform: translateY(0);
		opacity: 1;
	}
}

@keyframes ani_rotate {
	from {
		transform: rotate(1turn);
		opacity: 0;
	}

	to {
		transform: rotate(3turn);
		opacity: 1;
	}
}


/** GALERIE **/

.galcert {
	margin: 0px;
	padding: 0px;
	margin-left: auto;
	margin-right: auto;
	display: block;
	text-align: center;
}

image-link {

}

.galimg {
	margin: 20px;
	height: 320px;
	border: 1px solid #ddd;
	padding: 5px;
}

.galimg:hover {
	box-shadow: 0 0 1px 1px rgb(251, 66, 15);
	opacity: 0.5;
}

/** GALERIE **/



/**********************/
/*     Pages          */
/**********************/

.section-title {
	color: #4c586b;
	font: 100 1.9rem/1.9rem "Antonio", sans-serif;
	padding-top: 20px;
	padding-left: 0px;
	padding-bottom: 5px;
}

.card {
	margin-bottom: 10px;
}

.card-title {
	color: #3d4a58;
	font: 100 1.2rem/1.2rem "Antonio", sans-serif;
	padding-top: 20px;
	padding-left: 15px;
	padding-bottom: 0px;
}

.card-image {

}

.img-norm {

}

.img-zak {
	padding: 0px;
	margin: 20px;
}

.img-zak a:link {
	padding: 0px;
	margin: 20px;
}

.img-zak a:hover{
	padding: 5px;
	margin: 20px;
}

.img-title {
	border: 1px solid #555;
	margin-top: 10px;
	width: 100%;
}

.img-fluid {
	display: flex;
	margin-left: auto;
	margin-right: auto;
	width: 100%;
}

.img-ico {
	height: 80px;
	display: flex;
	position: relative;
	padding: 1px;
	margin: 2px;
	border: 1px;
	border-color: #c8c8c8;
	border-style: solid;
	float: inline-end;
}

.img-footer {
	height: 60px;
	display: flex;
	position: relative;
	padding: 1px;
	margin: 1px;
	float: inline-end;
}

.text-norm {
	color: #363c44;
	font: 16px "Calibri", sans-serif;
	text-align: inherit;
}

.text-norm-bl {
	color: #363c44;
	font: 16px "Calibri", sans-serif;
	text-align: justify
}

.text-ref {
	color: #333439;
	font: 16px "Archivo Narrow", sans-serif;
	padding-left: 10px;
}

.text-ref a {
	color: #333439;
	font: 16px "Archivo Narrow", sans-serif;
	padding-left: 10px;
}

.text-ref :hover {
	color: red;
}


.onas {
	background-color: #E3E7FF;
}
.card-onas {
}

/* Karta camo */

.camo {
	background-color: #ffffff;
	padding-top: 50px;
	padding-bottom: 50px;
}

.camo .page {
	display: contents;
	width: 100%;
}

.camo .card {
	background-color: #dde8ff;
	max-width: 265px;
	min-width: 265px;
	margin: 10px;
	border-top-left-radius: 0.375rem;
	border-top-right-radius: 0.375rem;
}

.camo .card-body {
	padding: 10px;
}

.camo .card-image {
	background-color: #3b3b3b;
	min-height: 100px;
	max-height: 100px;
	border-top-left-radius: 0.375rem;
	border-top-right-radius: 0.375rem;
}

.camo .card-image img {
	max-height: 100px;
	border-top-left-radius: 0.375rem;
	border-top-right-radius: 0.375rem;
}

.camo .card-footer {
	background-color: #ffffff;
	min-height: 73px;
	border-bottom-left-radius: 0.375rem;
	border-bottom-right-radius: 0.375rem;
	margin: 0px;
	padding: 5px;
}

/* Karta camo */



/* Karta servis */

.servis {
	background-color: #D4D7DF;
	padding-top: 50px;
	padding-bottom: 50px;
}

.servis .page {
	display: contents;
	width: 100%;
}

.servis .card {
	background-color: #dde8ff;
	max-width: 340px;
	min-width: 340px;
	margin: 20px;
	border-top-left-radius: 0.375rem;
	border-top-right-radius: 0.375rem;
}

.servis .card-body {
	padding: 10px;
}

.servis .card-image {
	background-color: #3b3b3b;
	min-height: 200px;
	max-height: 200px;
	border-top-left-radius: 0.375rem;
	border-top-right-radius: 0.375rem;
}

.servis .card-image img {
	max-height: 200px;
	border-top-left-radius: 0.375rem;
	border-top-right-radius: 0.375rem;
}

.servis .card-footer {
	background-color: #ffffff;
	min-height: 73px;
	border-bottom-left-radius: 0.375rem;
	border-bottom-right-radius: 0.375rem;
	margin: 0px;
	padding: 5px;
}

/* Karta servis */

/* Karta oprávnění */
.opravnenibg {
	background-image: url('../images/bg_01.jpg');
	background: linear-gradient(rgb(212, 215, 223), rgba(0, 0, 0, 0.28)), url('../images/bg_01.jpg') center center no-repeat;

	background-size:cover;
	padding-top: 1px;
}

.opravneni {
	background-color: #162743;
	margin-top: -30px;
	margin-bottom: -30px;
	margin-left: auto;
	margin-right: auto;
	width: 80%;
	max-width: 1000px;
	box-shadow: 3px 3px 10px rgb(0, 0, 0);
	position: relative;
	z-index: 100;
}

.opravneni .section-title {
	color: #bfbfbf;
	font: 100 1.9rem/1.9rem "Antonio", sans-serif;
	padding-top: 30px;
	padding-left: 15px;
	padding-bottom: 5px;
}

.opravneni .card-title {
	color: #ffffff;
	font: 100 1.2rem/1.2rem "Antonio", sans-serif;
	padding-top: 20px;
	padding-left: 15px;
	padding-bottom: 30px;
}

.opravneni .card-body {
	padding: 10px;
}

.opravneni .card-footer {
	min-height: 73px;
}

.card-opravneni {
	max-width: 400px;
}

/* Karta oprávnění */

/* Karta zákazníci */
.zakaznici {
	background-color: #B6BAD4;
	padding-top: 50px;
	padding-bottom: 50px;
	z-index: 90;
}

.card-zakaznici {
}

.prace {
	background-color: #d4e4ff;
}
.card-prace {
}


.card card-body {
	padding: 2.25rem 2rem 2.125rem 2rem;
	border: 1px solid #ebe8e8;
	border-bottom-left-radius: 0.375rem;
	border-bottom-right-radius: 0.375rem;
	background-color: #fff;
}


/***********************/
/*     Kontakt         */
/***********************/
.form-1 {
	padding-top: 6.625rem;
	padding-bottom: 5.625rem;
	background-color: #ffffff;
}

.form-1 .text-container {
	margin-bottom: 4rem;
}

.form-1 .section-title {
	font-size: 20px;
	margin-bottom: 0.5rem;
}

.form-1 h2 {
	font-size: 14px;
	margin-bottom: 1.375rem;
	color: #6e6e6e;
}

.form-1 .list-unstyled .fas {
	color: #4b505b;
	font-size: 1.0rem;
	line-height: 1.375rem;
	padding-right: 4px;
}

.form-1 .list-unstyled .media-body {
	margin-left: 0.625rem;
}

.form-1 .label-control {
	font-size: 12px;
	color: #4b505b;
}

.form-1 .form-control-input,
.form-1 .form-control-select {
	font-size: 16px;
	border: 1px solid #4b505b;
	background-color: #ffffff;
	color: #6e6e6e;
	padding-bottom: 20px;
}

.form-1 .form-control-textarea {
	border: 1px solid #4b505b;
	background-color: #ffffff;
	color: #6e6e6e;
}

.form-1 .form-control-input:focus,
.form-1 .form-control-input:hover,
.form-1 .form-control-select:focus,
.form-1 .form-control-select:hover,
.form-1 .form-control-textarea:focus,
.form-1 .form-control-textarea:hover {
	border: 1px solid #6e6e6e;
}

#lmsgSubmit.h3.text-center.tada.animated,
#lmsgSubmit.h3.text-center {
	color: #fff;
}

.form-1 .help-block.with-errors .list-unstyled {
	color: #4c586b;
}

/* IE10+ hack to solve lower label text position compared to the rest of the browsers */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
	.label-control {
		top: 0.9375rem;
	}
}

.form-control-input:focus + .label-control,
.form-control-input.notEmpty + .label-control,
.form-control-textarea:focus + .label-control,
.form-control-textarea.notEmpty + .label-control {
	top: 0.125rem;
	opacity: 1;
	font-size: 0.85rem;
	font-weight: 500;
	color: red;
}

.form-control-input,
.form-control-select {
	display: block; /* needed for proper display of the label in Firefox, IE, Edge */
	width: 100%;
	padding-top: 1.25rem;
	padding-bottom: 0.25rem;
	padding-left: 1.3125rem;
	border: 1px solid #dadada;
	border-radius: 0.25rem;
	background-color: #fff;
	color: #787976;
	font: 400 1.875rem/1.375rem "Open Sans", sans-serif;
	transition: all 0.2s;
	-webkit-appearance: none; /* removes inner shadow on form inputs on ios safari */
}

.form-control-select {
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
	height: 3rem;
}

/* IE10+ hack to solve lower label text position compared to the rest of the browsers */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
	.form-control-input {
		padding-top: 1.25rem;
		padding-bottom: 0.75rem;
		line-height: 1.75rem;
	}

	.form-control-select {
		padding-top: 0.875rem;
		padding-bottom: 0.75rem;
		height: 3.125rem;
		line-height: 2.125rem;
	}
}

select {
	/* you should keep these first rules in place to maintain cross-browser behavior */
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	-o-appearance: none;
	appearance: none;
	background-image: url('../images/down-arrow.png');
	background-position: 96% 50%;
	background-repeat: no-repeat;
	outline: none;
}

select::-ms-expand {
	display: none; /* removes the ugly default down arrow on select form field in IE11 */
}

.form-control-textarea {
	display: block; /* used to eliminate a bottom gap difference between Chrome and IE/FF */
	width: 100%;
	height: 8rem; /* used instead of html rows to normalize height between Chrome and IE/FF */
	padding-top: 1.25rem;
	padding-left: 1.3125rem;
	border: 1px solid #dadada;
	border-radius: 0.25rem;
	background-color: #fff;
	color: #787976;
	font: 400 1rem/1.5625rem "Open Sans", sans-serif;
	transition: all 0.2s;
}

.form-control-input:focus,
.form-control-select:focus,
.form-control-textarea:focus {
	border: 1px solid #a1a1a1;
	outline: none; /* Removes blue border on focus */
}

.form-control-input:hover,
.form-control-select:hover,
.form-control-textarea:hover {
	border: 1px solid #a1a1a1;
}

.checkbox {
	font: 400 0.7rem/0.7rem "Open Sans", sans-serif;
}

input[type='checkbox'] {
	vertical-align: -15%;
	margin-right: 0.375rem;
}

/* IE10+ hack to raise checkbox field position compared to the rest of the browsers */
@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
	input[type='checkbox'] {
		vertical-align: -9%;
	}
}

.form-control-submit-button {
	display: inline-block;
	width: 100%;
	height: 3.125rem;
	border: 0.125rem solid #4b505b;
	border-radius: 0.25rem;
	background-color: #4b505b;
	color: #fff;
	font: 700 0.75rem/1.75rem "Open Sans", sans-serif;
	cursor: pointer;
	transition: all 0.2s;
}

.form-control-submit-button:hover {
	background-color: transparent;
	color: #4b505b;
}

/* Form Success And Error Message Formatting */
#lmsgSubmit.h3.text-center.tada.animated,
#cmsgSubmit.h3.text-center.tada.animated,
#pmsgSubmit.h3.text-center.tada.animated,
#lmsgSubmit.h3.text-center,
#cmsgSubmit.h3.text-center,
#pmsgSubmit.h3.text-center {
	display: block;
	margin-bottom: 0;
	color: #b93636;
	font: 400 1.125rem/1rem "Open Sans", sans-serif;
}

.help-block.with-errors .list-unstyled {
	color: rgb(75, 80, 91);
	font-size: 12px;
	line-height: 1.125rem;
	text-align: left;
}

.help-block.with-errors ul {
	margin-bottom: 0;
}
/* end of form success and error message formatting */

/* Form Success And Error Message Animation - Animate.css */
@-webkit-keyframes tada {
	from {
		-webkit-transform: scale3d(1, 1, 1);
		-ms-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
	10%, 20% {
		-webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
		-ms-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
		transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
	}
	30%, 50%, 70%, 90% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
		-ms-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
	}
	40%, 60%, 80% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
		-ms-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
	}
	to {
		-webkit-transform: scale3d(1, 1, 1);
		-ms-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
}

@keyframes tada {
	from {
		-webkit-transform: scale3d(1, 1, 1);
		-ms-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
	10%, 20% {
		-webkit-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
		-ms-transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
		transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg);
	}
	30%, 50%, 70%, 90% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
		-ms-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
	}
	40%, 60%, 80% {
		-webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
		-ms-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
	}
	to {
		-webkit-transform: scale3d(1, 1, 1);
		-ms-transform: scale3d(1, 1, 1);
		transform: scale3d(1, 1, 1);
	}
}

.tada {
	-webkit-animation-name: tada;
	animation-name: tada;
}

.animated {
	-webkit-animation-duration: 1s;
	animation-duration: 1s;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both;
}
/* end of form success and error message animation - Animate.css */



/**********************/
/*     Footer         */
/**********************/
.footer {
	padding-top: 2rem;
	background-color: #4b505b;
}

.footer .text-container {
	margin-bottom: 2.25rem;
}

.footer h4 {
	font-size: 0.975rem;
	margin-bottom: 0.75rem;
	color: #fff;
}

.footer p,
.footer ul {
	color: #9ca5b4;
	font-size: 0.675rem;
	line-height: 1.375rem;
}


/**********************************/
/*     Back To Top Button         */
/**********************************/
a.back-to-top {
	position: fixed;
	z-index: 999;
	right: 0.75rem;
	bottom: 0.75rem;
	display: none;
	width: 2.625rem;
	height: 2.625rem;
	border-radius: 1.875rem;
	background: #A2A6BCFF url("../images/up-arrow.png") no-repeat center 47%;
	background-size: 1.125rem 1.125rem;
	text-indent: -9999px;
}

a:hover.back-to-top {
	background-color: #6e6e6e;
}

/************************/
/*     Preloader     	*/
/************************/
.spinner-wrapper {
	position: fixed;
	z-index: 999999;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: #000000;
}

.spinner-text {
	background: url("../images/logo/letadlow.png") no-repeat center;
	position: relative;
	top: 50%;
	height: 144px;
}

.spinner {
	position: relative;
	top: 50%;
	left: 50%;
	width: 100px;
	height: 1.25rem;
	margin: -0.625rem 0 0 -1.875rem;
	margin-left: -60px;
	text-align: center;
}

.spinner > div {
	display: inline-block;
	width: 0.5rem;
	height: 0.5rem;
	border-radius: 50%;
	background-color: #fff;
	-webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
	animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}


.spinner .bounce1 {
	-webkit-animation-delay: -0.62s;
	animation-delay: -0.62s;
}
.spinner .bounce2 {
	-webkit-animation-delay: -0.48s;
	animation-delay: -0.48s;
}
.spinner .bounce3 {
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
}
.spinner .bounce4 {
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
}

@-webkit-keyframes sk-bouncedelay {
	0%, 80%, 100% { -webkit-transform: scale(0); }
	40% { -webkit-transform: scale(1.0); }
}

@keyframes sk-bouncedelay {
	0%, 80%, 100% {
		-webkit-transform: scale(0);
		-ms-transform: scale(0);
		transform: scale(0);
	} 40% {
		  -webkit-transform: scale(1.0);
		  -ms-transform: scale(1.0);
		  transform: scale(1.0);
	  }
}