/* general css ----------------------------------- */
body {
   overflow-x: hidden;
   font-size: 16px;
   font-family: 'Poppins', sans-serif;
   color: #000;
}
body.modal-open {padding: 0 !important;}
body::-webkit-scrollbar, div::-webkit-scrollbar {width: 6px;}
body::-webkit-scrollbar-track, div::-webkit-scrollbar-track {background: #fff;}
body::-webkit-scrollbar-thumb, div::-webkit-scrollbar-thumb {
   background-color: #2EDCA3;
   border: 1px solid #2EDCA3;
}
html {
   scroll-behavior:smooth;
   position: relative;
   overflow-x: hidden;
}
img {max-width:100%;}
a, button, img, header, .slidingmenu, .form-data h3:before {
	transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	outline: none;
}
h1 {
   color: #2EDCA3;
   font-size: 50px;
   margin-bottom: 30px;
}
h2 {color: #2EDCA3;}
.button01, .button02, .button03, .button04 {
   padding: 14px 20px;
   background: #000;
   color: #2EDCA3;
   display: inline-block;
   font-size: 15px;
}
.button02 {
   background: #fff;
   color: #000;
}
.button03 {
   background: #000;
   color: #fff;
   border: none;
}
.button04 {
   background: #fff;
   color: #000;
   border: solid 1px #000;
}
.button01:hover, .button02:hover, .button03:hover {
   background: #2EDCA3;
   color: #000;
   text-decoration: none;
}
.button04:hover {
   background: #fff;
   color: #2EDCA3;
   text-decoration: none;
   border: solid 1px #2EDCA3;
}

/* modal -------------------------------------- */
.modal-dialog {
   max-width: 800px;
   width: 100%;
   margin: 60px auto;
}
.modal-dialog .close {
   position: absolute;
   width: 26px;
   height: 26px;
   border: none;
   opacity: 1;
   margin: 0;
   right: 20px;
   top: 20px;
}
.modal-dialog .close span {
   position: absolute;
   left: 0;
   top: 0;
   right: 0;
   bottom: 0;
   transition: all 0.3s ease-in-out;
}
.modal-dialog .close:hover span {transform: rotate(90deg);}
.modal-dialog .close span:before, .modal-dialog .close span:after {
   position: absolute;
   left: 0;
   top: 50%;
   width: 100%;
   height: 2px;
   background: #2C2E44;
   content: "";
   transform: rotate(45deg);
}
.modal-dialog .close span:after {transform: rotate(-45deg);}
.modal-header {
   border-bottom: none;
   padding: 0;
}
.modal-content {
   border: none;
   border-radius: 0;
   padding: 30px;
}
.modal-content h5 {
   font-size: 30px;
   margin: 30px 0 0 0;
   text-align: center;
   width: 100%;
   line-height: 40px;
   color: #2EDCA3;
}
.modal-body > p {
   font-size: 16px;
   text-align: center;
}
.modal-body .form-control {
   border: 1px solid #CBD3D0;
   border-radius: 0;
   height: 45px;
   margin-bottom: 15px;
}
.modal-body textarea.form-control {min-height: 120px;}
.modal-body .form-control:focus {border-color: #2EDCA3;}
.modal-body .form-control:focus, .btn:focus {box-shadow: none;}
.modal-body label span {color: #FF0000;}
.modal-body .button03 {margin-top: 20px;}

/* navigace ----------------------------------- */
header {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   z-index: 10;
   padding: 10px 0;
   background: #000;
}
.logo {
   position: relative;
   display: inline-block;
   width: 164px;
   margin: 0 0 0 30%;
}
.logo .st0 {
   fill:#FFFFFF;
   transition: all 0.3s ease-in-out;
}
.logo .st1 {fill:#B9B9B9;}
.logo .st2 {fill:#8B8A8A;}
.logo .st3 {fill:#5D5D5D;}
.logo:hover .st0 {fill:#2EDCA3;}
header .nav-link {
   position: relative;
   white-space: nowrap;
   color: #fff;
   margin: 0 20px;
}
header .nav-link:hover {color: #2EDCA3;}
header .nav-link.active {
   color: #2EDCA3;
   text-decoration: underline;
}
header .nav-item:last-child {padding-left: 340px;}
.moremenu, .moremenu:focus {
   position: relative;
   z-index: 1;
   border: none;
   background: none;
   outline: none;
}
.slidingmenu {
   position: fixed;
   right: 0;
   top: 0;
   height: 100vh;
   width: 360px;
   color: #fff;
   z-index: 0;
   display: block !important;
   background: #000;
   padding: 15px 15px 15px 60px;
}
.slidingmenu.collapse {right: -100%;}
.slidingmenu.collapse.show {right: 0;}
.slidingmenu ul {
   list-style-type: none;
   margin: 0;
   padding: 60px 0;
}
.slidingmenu ul a, .slidingmenu span a, .slidingmenu div a {color: #fff;}
.slidingmenu div a {font-size: 31px;}
.slidingmenu div a + a {
   font-size: 15px;
   text-decoration: underline;
   position: relative;
   display: inline-block;
   padding-left: 30px;
   margin-top: 5px;
}
.slidingmenu div a + a:hover {text-decoration: none;}
.slidingmenu div a + a:before {
   position: absolute;
   content: "";
   left: 0;
   top: 0;
   background: url("../images/mail.svg") no-repeat center top;
   width: 22px;
   height: 22px;
}
.slidingmenu h3 {
   font-size: 30px;
   margin-bottom: 20px;
}
.slidingmenu h6 {
   font-size: 18px;
   margin-top: 60px;
}
.slidingmenu strong {
   font-weight: normal;
   display: block;
   margin: 20px 0;
}
.slidingmenu p {font-size: 12px;}
.slidingmenu span {
   font-weight: 300;
   text-transform: uppercase;
   display: block;
   margin: 10px 0 0 0;
}
.slidingmenu span a.active {font-weight: 500;}
.slidingmenu span a {margin-right: 10px;}
.navbar-toggler {padding: .25rem 0;}
.navbar-toggler:focus, .navbar-toggler:hover {outline: none;}
.hamburger {
   width: 30px;
   height: 20px;
   position: absolute;
   margin: 0px;
   -webkit-transform: rotate(0deg);
   -moz-transform: rotate(0deg);
   -o-transform: rotate(0deg);
   transform: rotate(0deg);
   -webkit-transition: .5s ease-in-out;
   -moz-transition: .5s ease-in-out;
   -o-transition: .5s ease-in-out;
   transition: .5s ease-in-out;
   cursor: pointer;
   right: 0;
   top: -3px;
}
.hamburger span {
   display: block;
   position: absolute;
   height: 1px;
   width: 100%;
   border-radius: 9px;
   opacity: 1;
   left: 0;
   -webkit-transform: rotate(0deg);
   -moz-transform: rotate(0deg);
   -o-transform: rotate(0deg);
   transform: rotate(0deg);
   -webkit-transition: .25s ease-in-out;
   -moz-transition: .25s ease-in-out;
   -o-transition: .25s ease-in-out;
   transition: .25s ease-in-out;
}
.hamburger span {background: #fff;}
.hamburger:hover span {background: #2EDCA3;}
.hamburger span:nth-child(1) {top: 0px;}
.hamburger span:nth-child(2), .hamburger span:nth-child(3) {top: 7px;}
.hamburger span:nth-child(4) {top: 14px;}
.hamburger.open span {background: #fff;}
.hamburger.open:hover span {background: #2EDCA3;}
.hamburger.open span:nth-child(1) {
   top: 11px;
   width: 0%;
   left: 50%;
}
.hamburger.open span:nth-child(2) {
   -webkit-transform: rotate(45deg);
   -moz-transform: rotate(45deg);
   -o-transform: rotate(45deg);
   transform: rotate(45deg);
}
.hamburger.open span:nth-child(3) {
   -webkit-transform: rotate(-45deg);
   -moz-transform: rotate(-45deg);
   -o-transform: rotate(-45deg);
   transform: rotate(-45deg);
}
.hamburger.open span:nth-child(4) {
   top: 11px;
   width: 0%;
   left: 50%;
}

/* home --------------------------------------- */
.home {
   position: relative;
   overflow: hidden;
   height: 100vh;
   height: calc(var(--vh, 1vh) * 100);
}
.sliderhomepage, .sliderhomepage .owl-stage-outer, .sliderhomepage .owl-stage, .sliderhomepage .owl-item {height: 100%;}
.sliderhomepage .owl-stage-outer {z-index: 2;}
.home .item {
   height: 100%;
   position: relative;
   overflow: hidden;
}
.home .owl-item.animated .item img, .home .owl-item.active .item img {animation: zoom 30s;}
   @keyframes zoom {
     from {transform: scale(1, 1);}
     to {transform: scale(1.5, 1.5) /*translate(10%,0)*/;}
   }
.note {
   position: absolute;
   z-index: 1;
   bottom: 10%;
   left: 5%;
   width: 40%;
   max-width: 550px;
   font-size: 20px;
   color: #fff;
}
.note > div {
   position: relative;
   z-index: 1;
   margin-bottom: 20%;
   padding-right: 6%;
}
.note > div:before {
   position: absolute;
   background: rgba(0,0,0,.5);
   content: "";
   left: -25%;
   right: 0;
   top: -24%;
   bottom: -24%;
   z-index: -1;
}
.note > span {
   display: block;
   text-align: right;
}
.note > span a + a {margin-left: 15px;}
.note h1, .note h2 {
   font-size: 70px;
   margin-bottom: 10px;
}
.home .owl-dots {
   position: absolute;
   left: 7%;
   bottom: 3%;
   counter-reset: section;
   z-index: 10;
}
.home .owl-dot {
   position: relative;
   counter-reset: subsection;
   height: 20px;
   text-align: center;
   transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
   color: #fff;
}
.home .owl-dot:before {
   position: absolute;
   color: #fff;
   counter-increment: section;
   content: counter(section);
   font-size: 15px;
   left: 50%;
   transform: translate(-50%,0);
   z-index: 0;
}
.home .owl-dot.active {margin-bottom: 70px;}
.home .owl-dot.active:after {
   content: "";
   left: 49.6%;
   width: 1px;
   height: 60px;
   background: #fff;
   top: 25px;
   z-index: 1;
   position: absolute;
   animation: dotline 0.6s 1;
}
   @keyframes dotline { 
      0% {height: 0;}
      100% {height: 60px;}
   }
.home .owl-dot.active:last-child {margin: 0;}
.home .owl-dot.active:last-child:after {display: none;}


/* standardy --------------------------------------- */
.standardy {
   position: relative;
   padding: 140px 5% 0 5%;
}
.fotky {padding-top: 30px;}
.fotky .col-md-5 span {
   width: 100%;
   height: 50%;
   display: block;
   padding-bottom: 15px;
}
.fotky .col-md-5 span + span {padding: 15px 0 0 0;}
.fotky a {
   width: 100%;
   height: 100%;
   position: relative;
   display: block;
   overflow: hidden;
}
.fotky .col-md-5 a img {
   position: absolute;
   width: 100%;
   transform: translate(0,-50%);
   top: 50%;
}
.fotky a:hover img {transform: scale(1.1,1.1);}
.fotky .col-md-5 a:hover img {transform: translate(0,-50%) scale(1.1,1.1);}
.fotky .col-md-4 {padding-top: 30px;}

/* detail --------------------------------------- */
.dum {
   position: relative;
   transform: translate(-10%,0);
}
.dum.prehled {transform: translate(0,0);}
.dumsvg {
   position: absolute;
   z-index: 1;
   top: -.5%;
   left: 0;
   width: 100%;
   height: 100%;
}
.np1, .zs4, .np2, .np3, .np4, .np5, .np6, .np7 {
   opacity: 0;
   fill: #2EDCA3;
   stroke: #fff;
   stroke-width: 5;
   transition: all 0.2s ease-in-out;
}
a:hover .np1, a:hover .zs4, a:hover .np2, a:hover .np3, a:hover .np4, a:hover .np5, a:hover .np6, a:hover .np7 {opacity: .6;}
.patropudorys {
   position: absolute;
   z-index: 1;
   top: 0;
   left: 0;
   right: 0;
}
.byt {
   opacity: .6;
   fill: rgba(0,0,0,0);
   transition: all 0.2s ease-in-out;
}
.byt:hover {fill: #2EDCA3;}
.prodano, .prodano:hover {
   fill: #383f3c;
   cursor: default;
}
.flor {
   position: absolute;
   background: rgba(0,0,0,.8);
   font-size: 20px;
   padding: 15px 30px 15px 5%;
   white-space: nowrap;
   bottom: 15%;
   left: 0;
   z-index: 2;
   color: #fff;
}
.flor .col-4 {
   font-size: 50px;
   color: #2EDCA3;
}
.cta {
   position: relative;
   padding: 12px 0 12px 13%;
   font-size: 18px;
   margin: 0 0 40px 0;
}
.cta:before, .cta:after {
   position: absolute;
   content: "";
   left: 0;
   top: 0;
   bottom: 0;
   background: rgba(0,0,0,.1);
   width: 13%;
   z-index: -1;
}
.cta:after {
   left: 13%;
   background: rgba(0,0,0,1);
   width: 87%;
}
.cta h5 {
   font-size: 31px;
   margin: 0;
}
.cta h6 {
   font-size: 50px;
   color: #2EDCA3;
   margin: 0;
   text-align: center;
}
.cta span {color: #fff;}
.cta .col-sm-3.align-self-center {text-align: right;}
.nfo {
   position: relative;
   padding: 40px 0 40px 13%;
}
.nfo .table {margin-bottom: 80px;}
.nfo .table td {
   padding-left: 0;
   font-size: 20px;
}
.nfo .table tr:first-child td {border: none;}
.nfo .button04 {
   width: 44%;
   text-align: center;
}
.nfo .button04 + .button04 {margin-left: 6%;}
.floornfo {
   position: relative;
   padding: 40px 0 40px 13%;
}
.floornfo .table tr:first-child td {
   border: none;
   background: #d2d2d2;
   text-transform: uppercase;
   font-weight: 600;
}
.floornfo .table tr:first-child td a {color: #000;}
.floornfo .table tr:hover {background: #c0f4e3;}
.floornfo .table tr + tr td:last-child {text-align: right;}
.floornfo .table tr + tr td:last-child a {
   display: inline-block;
   color: #000;
   padding: 5px 20px;
   background: #2edca3;
}

/* formular ------------------------------------------------- */
.form-title {
   background: url("../images/bg01.jpg") no-repeat center top;
   background-size: 102% auto;
   min-height: 450px;
   position: relative;
   padding: 0 0 0 13%;
}
.form-title:before {
   content: "";
   position: absolute;
   left: 0;
   top: 0;
   width: 56%;
   height: 100%;
   background: rgba(46,220,163,.78);
}
.form-title > div {
   position: absolute;
   left: 13%;
   top: 50%;
   transform: translate(0,-25%);
   z-index: 1;
   color: #fff;
   font-weight: 500;
}
.form-title h1 {color: #000;}
.nfo-data {padding: 40px 0;}
.typ {margin-right: 15px;}
.typ span {color: #FF0000;}
.form-data {padding: 40px 0 0 0;}
.form-data h3 {
   margin: 0;
   position: relative;
}
.form-data h3:before {
   position: absolute;
   content: "";
   right: 10px;
   top: 6px;
   width: 20px;
   height: 20px;
   border-bottom: solid 1px #000;
   border-left: solid 1px #000;
   transform: rotate(-225deg);
}
.form-data h3.collapsed:before {
   transform: rotate(-45deg);
   top: -2px;
}
.form-data ul {
   padding: 0;
   list-style-type: none;
}
.card {
   border: 1px solid #CBD3D0;
   border-radius: 0;
   border-left: none;
   border-right: none;
}
.card-header {
   padding: 15px 0;
   background-color: #fff;
   border-bottom: none;
}
.checkbox input, .radiobox input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.checkbox {
   display: block;
   position: relative;
   padding-left: 32px;
   cursor: pointer;
   font-size: 20px;
   margin: 0;
}
.form-data ul .checkbox {font-size: 16px;}
.form-data ul li {padding: 5px 15px;}
.checkmark {
   position: absolute;
   top: 2px;
   left: 0;
   height: 20px;
   width: 20px;
   border: solid 1px #000;
}
.checkbox input:checked ~ .checkmark {
   background-color: #000;
   border-color: #000;
}
.form-data ul .checkbox input:checked ~ .checkmark {
   background-color: #2EDCA3;
   border-color: #2EDCA3;
}
.checkbox input:checked ~ .checklabel {
   color: #2EDCA3;
   font-weight: 600;
}
.checkmark:after {
   content: "";
   position: absolute;
   display: none;
}
.checkbox input:checked ~ .checkmark:after {display: block;}
.checkbox .checkmark:after {
   left: 6px;
   top: 2px;
   width: 6px;
   height: 12px;
   border: solid white;
   border-width: 0 2px 2px 0;
   -webkit-transform: rotate(45deg);
   -ms-transform: rotate(45deg);
   transform: rotate(45deg);
}
.radiobox {
   display: inline-block;
   position: relative;
   padding: 15px 30px;
   cursor: pointer;
   font-size: 20px;
   font-weight: 600;
   margin: 0 8px;
}
.radiomark {
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   border: solid 1px #000;
}
.radiobox input:checked ~ .radiomark {
   background-color: #2EDCA3;
   border-color: #2EDCA3;
}
.radiolabel {position: relative;}
.personal-data {padding: 40px 0;}
.personal-data h2, .nfo-data h2 {
   font-size: 22px;
   margin: 30px 0 20px 0;
}
.personal-data .form-control {
   border: 1px solid #CBD3D0;
   border-radius: 0;
   height: 45px;
   margin-bottom: 15px;
}
.personal-data .form-control:focus {border-color: #2EDCA3;}
.personal-data .form-control:focus, .btn:focus {box-shadow: none;}
.personal-data label span {color: #FF0000;}
.personal-data .button03 {margin-top: 40px;}


/* cookies -------------------------------------------------- */
.cc_container {
   background: #a0a0a0 !important;
   color: #000 !important;
   font-size: 16px !important;
   font-family: 'Catamaran', sans-serif !important;
   font-weight: 200;
}
.cc_banner-wrapper {z-index:100000 !important;}
.cc_container .cc_btn, .cc_container .cc_btn:visited {
   color:#fff !important;
   background-color:#000 !important;
   min-width:190px;
	border-radius:0px !important;
}
.cc_container .cc_btn:hover {background-color:#2EDCA3 !important;}
.cc_container .cc_logo {display:none !important;}
.cc_container .cc_btn {bottom:12px !important;}



/* tom 2021 ---------------------------- */


/* financovani ------------------------ */
.financovani {
   background: url("../images/bg02.jpg") no-repeat center top;
   background-size: 100% auto;
   padding: 80px 0;
}
.financovani h1 {
   background: rgba(0,0,0,.5);
	display: inline-block;
	padding: 20px 30px;
	margin: 43vh 0 0 0;
	font-size: 40px;
}
.financovani h2 {
	color: #000;
	font-size: 30px;
	font-weight: 600;
}

.financovani ol {
	margin: 0 0 200px 0;
	padding: 0;
	counter-reset: li;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	position: relative;
}
.financovani ol:before {
	position: absolute;
	border-left: dashed 3px #2edca3;
	content: "";
	height: 100%;
	width: 3px;
	left: 50%;
	top: 0;
	z-index: 0;
	margin-left: -1.5px;
}
.financovani ol li {
	position: relative;
	padding: 45px 45px 45px 160px;
	margin: 0;
	-ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
	transform: translate(0,50%);
}
.financovani ol li:nth-child(2n+1) {
	padding: 45px 160px 45px 45px;
	transform: translate(0,0);
}
.financovani ol li:before {
	position: absolute;
	top: 50%;
	left: 55px;
	border: 3px solid #383f3c;
	border-radius: 100%;
	width: 80px;
	height: 80px;
	line-height: 70px;
	text-align: center;
	font-size: 50px;
	font-weight: 600;
	color: #383f3c;
	content: counter(li);
	counter-increment: li;
	margin-top: -40px;
}
.financovani ol li:nth-child(2n+1):before {
	left: auto;
	right: 55px;
}
.financovani ol li:after {
	position: absolute;
	background: #2edca3;
	content: "";
	left: 30px;
	top: 15px;
	right: 0;
	bottom: 15px;
	z-index: -1;
}
.financovani ol li:nth-child(2n+1):after {
	left: 0;
	right: 30px;
}
.financovani ol li .row {height: 100%;}
.financovani ol li span {
	height: 20px;
	width: 20px;
	display: block;
	position: absolute;
	top: 50%;
	left: -10px;
	background: #2edca3;
	border-radius: 100%;
	margin-top: -10px;
}
.financovani ol li:nth-child(2n+1) span {
	right: -10px;
	left: auto;
}
.financovani ol li span:before {
	height: 3px;
	width: 40px;
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	background: #2edca3;
	margin-top: -1.5px;
	content: "";
}
.financovani ol li:nth-child(2n+1) span:before {
	right: 0;
	left: auto;
}
.hypo {padding:  0 40px;}



/* tom 2022 ---------------------------- */