/* general css ----------------------------------- */
body {
   overflow-x: hidden;
   font-size: 16px;
   font-family: 'Montserrat', sans-serif;
   color: #000;
   line-height: 164%;
}
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: #52c3f1;
   border: 1px solid #52c3f1;
}
html {
   scroll-behavior:smooth;
   position: relative;
   overflow-x: hidden;
}
img {max-width:100%;}
a, button, img, header, h3 {
	transition: all 0.3s ease-in-out;
	-webkit-transition: all 0.3s ease-in-out;
	outline: none;
}
h1 {
   font-size: 60px;
   font-weight: 700;
   position: relative;
   color: #2d3741;
   margin: 0 0 40px 0;
   padding-bottom: 40px;
}
h1 span {
   display: block;
   color: #fff;
   padding-top: 10px;
}
h1:before {
   height: 5px;
   width: 68px;
   content: "";
   background: #fff;
   position: absolute;
   bottom: 0;
   left: 0;
}
h1 span b {position: relative;}
h1 span b:before {
   position: absolute;
   content: "";
   top: -2px;
   left: 4px;
   background: #fff;
   width: 38%;
   height: 8px;
}
h3 {
   font-size: 20px;
   font-weight: 700;
   position: relative;
   margin: 20px 0 0 0;
}
h2, h4 {
   font-size: 42px;
   font-weight: 700;
   position: relative;
   margin: 0 0 60px 0;
   padding-bottom: 30px;
   color: #2d3741;
}
h2:before, h4:before {
   height: 5px;
   width: 68px;
   content: "";
   background: #52c3f1;
   position: absolute;
   bottom: 0;
   left: 50%;
   margin-left: -34px;
}
h2 {display: inline-block;}
h5 {
   font-size: 42px;
   font-weight: 700;
   position: relative;
   margin: 0 0 30px 0;
   padding-bottom: 30px;
}
h5:before {
   height: 5px;
   width: 68px;
   content: "";
   background: #fff;
   position: absolute;
   bottom: 0;
   left: 50%;
   margin-left: -34px;
}
h6 {font-size: 16px;}
main {
   background: #fff;
   position: relative;
   z-index: 1;
   margin-bottom: 240px;
}

/* navigace ----------------------------------- */
.logo {
   position: relative;
   display: inline-block;
   width: 180px;
   margin: 15px 0 15px 25px;
}
header {
   position: fixed;
   top: 0;
   left: 0;
   width: 100%;
   z-index: 10;
   background: #fff;
}
header.open {padding-bottom: 20px;}
.scroll-down header {top: -100px;}
header .navbar-nav {
   font-weight: 600;
   font-size: 16px;
   margin-top: 8px;
}
header .nav-link {
   position: relative;
   margin-left: 15px;
   white-space: nowrap;
   color: #2d3741;
}
header .nav-item:nth-child(3) .nav-link {color: #52c3f1;}
header .nav-item:last-child {margin-left: 30px;}
header .nav-link:hover {color: #52c3f1;}
header .nav-link:hover:before {
   content: "";
   position: absolute;
   bottom: 5px;
   left: 10px;
   right: 10px;
   height: 1px;
   background: #52c3f1;
   animation: hovermenu 0.6s 1;
}
   @keyframes hovermenu { 
      0% {right: 100%;}
      100% {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: 10px;
   top: -40px;
}
.hamburger span {
   display: block;
   position: absolute;
   height: 3px;
   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: #2d3741;}
.hamburger span:nth-child(1) {top: 0px;}
.hamburger span:nth-child(2), .hamburger span:nth-child(3) {top: 10px;}
.hamburger span:nth-child(4) {top: 20px;}
.hamburger.open span {background: #52c3f1;}
.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%;
}
header.open .navbar-nav {padding: 20px 0 0 0;}

/* cta --------------------------------------- */
.cta {
   position: relative;
   height: 100vh;
   background: #52c3f1; 
   color: #fff;
   font-size: 20px;
   padding-top: 70px;
   overflow: hidden;
}
.cta .container-fluid {
   height: 100vh;
   padding: 0;
}
.cta .container-fluid .row {height: 100vh;}
.cta .container-fluid .col-sm-6 {overflow: hidden;}
.cta a {
   display: inline-block;
   font-weight: 700;
   color: #fff;
   margin-top: 40px;
   padding: 15px 30px;
   border: solid 4px #fff;
   text-transform: uppercase;
}
.cta a:hover {
   background: #fff;
   color: #cd0023;
   text-decoration: none;
}
.cta img {
   position: absolute;
   top: 50%;
   left: 50%;
   transform: translate(-41%,-54%);
   max-width: none;
   height: 94%;
}
.cta .col-sm-6 > div {padding: 0 10% 0 15%;}

/* toughcore --------------------------------------- */
.toughcore {
   padding: 100px 0;
   text-align: center;
   color: #2d3741;
}
.toughcore p {margin-bottom: 30px;}
.toughcore h3 {
   padding: 100px 0 20px 0;
   background: url("../images/ico01.svg") no-repeat center top;
   background-size: 75px auto;
   letter-spacing: -.5px;
   font-size: 19px;
}
.toughcore .col-sm-3 + .col-sm-3 h3 {background-image: url("../images/ico03.svg");}
.toughcore .col-sm-3 + .col-sm-3 + .col-sm-3 h3 {background-image: url("../images/ico02.svg");}
.toughcore .col-sm-3 + .col-sm-3 + .col-sm-3 + .col-sm-3 h3 {background-image: url("../images/ico04.svg");}
.toughcore h3:hover {transform: scale(1.2,1.2);}
.toughcore .col-sm-12 a, .toughcore .col-md-12 a {
   display: inline-block;
   font-weight: 700;
   font-size: 20px;
   background: #52c3f1;
   color: #fff;
   margin-top: 80px;
   padding: 15px 30px;
   border: solid 4px #52c3f1;
}
.toughcore .col-md-12 a {margin: 30px 0 50px 0;}
.toughcore .col-sm-12 a:hover, .toughcore .col-md-12 a:hover {
   background: #fff;
   color: #52c3f1;
   text-decoration: none;
   transform: scale(1.2,1.2);
}

/* galerie ---------------------------------------- */
.galerie {
   background: #f4f5f5;
   padding: 100px 0;
   text-align: center;
}
.galerie .col-sm-8, .galerie .col-sm-6, .galerie .col-sm-4 {padding: 15px;}
.galerie .col-sm-8 .col-sm-6 {padding: 0 15px 15px 15px;}
.galerie .col-sm-8 .row {padding-bottom: 15px;}
.galerie a {
   display: block;
   position: relative;
   overflow: hidden;
}
.galerie .col-sm-4 a {
   height: 46.2%;
   margin-bottom: 30px;
}
.galerie .col-sm-4 a + a {margin: 0;}
.galerie .row + .row .col-sm-4 a {
   height: 62.9%;
}
.galerie .row + .row .col-sm-4 a + a {height: auto;}
.galerie .row + .row .col-sm-4 + .col-sm-4 a {
   height: auto;
   margin-bottom: 0;
}
.galerie .row + .row .col-sm-4 + .col-sm-4 + .col-sm-4 a {margin-bottom: 30px;}
.galerie .row + .row .col-sm-4 + .col-sm-4 + .col-sm-4 a + a {
   height: 62.9%;
   margin-bottom: 0;
}
.galerie a:hover img {transform: scale(1.2,1.2) !important;}

/* formular --------------------------------------- */
.formular {
   background: #52c3f1;
   padding: 100px 0;
   text-align: center;
   color: #fff;
   letter-spacing: .5px;
}
.formular .col-md-12 p {
   margin-bottom: 60px;
   font-weight: 600;
}
.formular .col-sm-12 p {
   text-align: left;
   font-size: 13px;
}
.formular .col-sm-12 p a {
   font-weight: 600;
   color: #fff;
   text-decoration: underline;
}
.formular .col-sm-12 p a:hover {text-decoration: none;}
.formular .form-control {
   background: none;
   border: none;
   border-radius: 0;
   border-bottom: solid 1px #fff;
   color: #fff;
   padding-left: 0;
   margin-bottom: 30px;
}
.formular .form-control:focus {box-shadow: none;}
.formular ::placeholder {
   color: #fff !important;
   opacity: 1 !important;
}
.formular :-ms-input-placeholder {color: #fff !important;}
.formular ::-ms-input-placeholder {color: #fff !important;}
.formular button {
   background: none;
   border: solid 4px #fff;
   color: #fff;
   padding: 15px 30px;
   font-size: 20px;
   font-weight: 700;
   margin-top: 40px;
}
.formular button:hover {
   background: #fff;
   border: solid 4px #fff;
   color: #52c3f1;
}
.modal-content {
   border: none;
   border-radius: 0;
}
.modal {padding: 0 !important;}
#odeslano .modal-dialog {
   color: #fff;
   text-align: center;
   top: 45%;
}
.modal-backdrop.show {opacity: .8;}
#odeslano.materialkod {background: rgba(0,0,0,.7);}
#materialy .modal-dialog {
   max-width: 900px;
   margin: 0;
   transform: translate(-50%,-50%);
   left: 50%;
   top: 50%;
   
}
#materialy .modal-content {
   background: #52c3f1;
   color: #fff;
   font-size: 14px;
   line-height: 20px;
   padding: 40px;
}
#materialy .form-control {
   background: none;
   border: none;
   border-radius: 0;
   border-bottom: solid 1px #fff;
   color: #fff;
   padding-left: 0;
   margin-bottom: 30px;
}
#materialy .form-control:focus {box-shadow: none;}
#materialy ::placeholder {
   color: #fff !important;
   opacity: 1 !important;
}
#materialy :-ms-input-placeholder {color: #fff !important;}
#materialy ::-ms-input-placeholder {color: #fff !important;}
#materialy button {
   background: none;
   border: solid 4px #fff;
   color: #fff;
   padding: 15px 30px;
   font-size: 20px;
   font-weight: 700;
   margin-top: 40px;
}
#materialy button:hover {
   background: #fff;
   border: solid 4px #fff;
   color: #52c3f1;
}
#materialy h5 {
    font-size: 34px;
    margin: 0;
    padding-bottom: 0;
}
#materialy h5:before {display: none;}
#materialy .modal-header {border-bottom: none;}
#materialy .close {
   margin: 0 0 0 0;
   border-color: transparent;
}
#materialy .modal-body > p {
   margin: -20px 0 40px 0;
   font-size: 20px;
}

/* footer ----------------------------------------- */
footer {
   background: #2d3741;
   padding: 50px 0;
   position: fixed;
   bottom: 0;
   left: 0;
   width: 100%;
   z-index: 0;
   color: #acaeb1;
   line-height: 180%;
}
footer ul {
   list-style-type: none;
   margin: 0;
   padding: 0;
}
footer img {
   opacity: .25;
   width: 180px;
}
footer a + a img {
   width: 240px;
   position: absolute;
   left: 15px;
   bottom: 7px;
}
footer a:hover img {
   opacity: 1;
}
footer p {margin: 0;}
footer .col-sm-3 li a {color: #acaeb1;}
footer .col-sm-3 li a:hover {color: #fff;}

/* 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:#52c3f1 !important;}
.cc_container .cc_logo {display:none !important;}
.cc_container .cc_btn {bottom:12px !important;}



/* tom 2021 ---------------------------- */