/*
Author: jankurtak.eu / Ján Kurták
Author URI: http://www.jankurtak.eu/
*/

:root {
  --black: #000000;
  --dark: #242424;
  --green: #2CB13D;
  --gray: #5B5C78;
  --blue: #0A83EE;
  --darkblue: #00417B;
  --red: #F01010;
  --light: #F1F8FF;
  --white: #ffffff;
  --border_light: #BDCFE0;
}
  

html, body {
  position:relative;
  overflow-x: hidden;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  outline: none !important; 
}

*:focus {
  outline: none !important;
  box-shadow:none !important; 
}


body{
  color: var(--dark);
  font-size: 16px;
  line-height: 1.5;
  font-weight: 400;
  font-family: "Jost", sans-serif;
}

a{
  transition: all 0.3s;
  color: var(--blue);
}

a.with-arrow{
  position: relative;
  padding-right: 45px;
}

a.with-arrow::before{
  content: "\f178";
  font-family: 'Font Awesome 5 Pro';
  right: 20px;
  position: absolute;
  top: calc(50% + 1px);
  font-weight: 300;
  transition: all 0.3s;
  transform: translate(0, -50%);
}
a.with-arrow:hover::before{
  right: 15px;
}

p{
  margin-bottom: 15px;
}
b, strong {
  font-weight: 600;
}

/* Title */
h1, h2, h3, h4, h5, h6{
  margin-top: 0;
  font-weight: 600;
  margin-bottom: 10px;
  line-height: 1;
}

h1{font-size:54px; margin-bottom: 10px;}
h2{font-size:36px; margin-bottom: 10px;}
h3{font-size:32px; margin-bottom: 15px;}
h4{font-size:26px}
h5{font-size:22px}
h6{font-size:20px}

.container {
  max-width: 1230px;
}

/* Buttons */
.btn{
  transition: all 0.3s ease-in-out;
  border-radius: 0;
  padding: 12px 20px;
  font-weight: 500;
  border-radius: 3px;
  border-width: 2px;
  font-size: 16px;
}

.btn-primary {
  color: #fff;
  background-color: var(--blue);
  border-color: var(--blue);
}

.btn-primary:hover {
  color: #fff;
  background-color: var(--dark);
  border-color: var(--dark);
}

.btn-outline-primary {
  color: var(--blue);
  border-color: var(--blue);
}

.btn-outline-primary:hover {
  background-color: var(--dark);
  border-color: var(--dark);
}
.btn-link {
  color: var(--dark);
  padding: 0;
}
/* Form control */

.form-control{
  border-radius: 0;
  height: 50px;
  padding: 15px 20px;
  border-radius: 3px;
  color: var(--dark);
  border-color: var(--border_light);
  text-shadow: none;
}
.form-control:focus{
  text-shadow: none;
  border-color: var(--darkblue);
}

.form-control::placeholder {
  color:var(--border_light);
}

/* Slick Arrow*/
.s-arrows .btn {
  width: 50px;
  height: 40px;
  position: relative;
  font-size: 24px;
  color: var(--border_light);
}
.s-arrows .btn:hover {
  color: var(--blue);
}

.s-arrows .btn > i{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.s-arrows .btn:hover {
  background-color: var(--white);
}

.intro .s-arrows{
  position: absolute;
  top: 0;
  right: 0;
}

.title-h.with-border {
  margin-bottom: 30px;
  padding-bottom: 20px;
  position: relative;
}

.title-h.with-border::before {
  content: "";
  width: 70px;
  height: 3px;
  background-color: var(--blue);
  position: absolute;
  left: 0;
  bottom: 0;
}

.title-h.with-border.text-center::before {
  left: 50%;
  transform: translate(-50%, 0);
}


.title-h > span {
  font-weight: 200;
}

ul.with-icon > li{
  list-style: none;
  position: relative;
  padding-left: 20px;
  margin-bottom: 8px;
  line-height: 1.35;
}

ul.with-icon > li::before {
  content: "";
  background-color: var(--blue);
  width: 10px;
  height: 10px;
  border-radius: 10px;
  position: absolute;
  left: 0;
  top: 6px;
}

/* Section */
section {
  margin-bottom: 75px;
  position: relative;
}

section .intro{
  margin-bottom: 30px;
  position: relative;
}
/* Center */

.center-x{
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, 0);
}

.center-y{
  position: absolute;
  top: 50%;
  left: 0;
  transform: translate(0,-50%);
}

.center-both{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}

/* Image Cover */
picture.cover {
  margin: 0;
  position: relative;
  display: block;
  padding-top: 56.25%;
}

a > picture.cover > img, a > picture.cover > source,
picture.cover > img, picture.cover > source {
  position: absolute;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  left: 0;
  top: 0;
}

/* Image Aspect Ratio */
picture.cover.fit-43{
  padding-top: 75%;
}

picture.cover.fit-11{
  padding-top: 100%;
}

picture.cover.fit-45{
  padding-top: 125%;
}

picture.frame::before{
  content: "";
  position: absolute;
  background-color: var(--light);
  width: 100%;
  height: 100%;
}

picture.frame{
  margin-bottom: 50px;
}

picture.frame.frame-left-bottom::before{
  top: 50px;
  right: 50px;
}

picture.frame.frame-right-bottom::before{
  top: 50px;
  left: 50px;
}

/* HEADER */
header {
  z-index: 9;
  position: relative;
  height: 100px;
}

header .logo > img{
  max-width: 140px;
}

header #menu{
  float: right;
}

header #menu > ul{
  margin-bottom: 0;
  font-size: 0;
}

header #menu > ul > li{
  display: inline-block;
  position: relative;
}

header #menu > ul > li > a{
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100px;
  font-size: 16px;
  padding: 15px 10px;
  margin: 0 5px 0 0;
  text-decoration: none;
  -webkit-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
  line-height: 1;
  font-weight: 600;
  position: relative;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
  text-transform: uppercase;
  color: var(--dark);
}

header #menu > ul > li > a:hover{
  color: var(--blue);
}


header #menu > ul > li:not(.menu-btn) > a::before{
  content: "";
  width: 100%;
  height: 0;
  position: absolute;
  top: 0;
  left: 0;
  background-color: transparent;
  -webkit-transition: all 0.3s;
  -o-transition: all 0.3s;
  transition: all 0.3s;
}

header #menu > ul > li > a:hover::before, header #menu > ul > li.current-menu-item > a::before, header #menu > ul > li.current_page_parent > a::before{
  background-color: var(--blue);
  height: 4px;
}

header #menu > ul > li.current-menu-item > a,
header #menu > ul > li.current_page_parent > a,
header #menu > ul > li.current-page-ancestor > a{
  color: var(--blue);
}

header #menu > ul > li > a:hover {
  color: var(--blue);
}

header #menu > ul > li.current-menu-item > a:hover,
header #menu > ul > li.current_page_parent > a:hover,
header #menu > ul > li.current-page-ancestor > a:hover{
  color: var(--blue);
  border-color: transparent;
}

/*Menu btn*/
header #menu > ul > li.menu-btn > a {
  height: auto;
  background: var(--green);
  border-radius: 50px;
  padding: 18px 20px 18px 50px;
  color: var(--white);
  -webkit-box-shadow: 0 5px 15px rgba(40, 167, 69, 0.2);
          box-shadow: 0 5px 15px rgba(40, 167, 69, 0.2);
  margin-left: 15px;
  position: relative;
  font-size: 14px;
}
header #menu > ul > li.menu-btn > a:hover {
  background-color: var(--blue);
  color: var(--white);
  -webkit-box-shadow: 0 5px 15px rgba(27, 120, 242, 0.5);
          box-shadow: 0 5px 15px rgba(27, 120, 242, 0.5);
}

header #menu > ul > li.menu-btn > a::before {
  content: "\f1ec";
  font-family: "Font Awesome 5 Pro";
  top: 15px;
  left: 20px;
  font-size: 22px;
  position: absolute;
  font-weight: 300;
  height: 0;
  width: 0;
  border-radius: 0;
}

/* Slider */
section.module-slider{
  position: relative;
  max-width: 1920px;
  margin: 0 auto 0 auto;
}

section.module-slider::before{
  content: "";
  background-color: var(--light);
  width: 100vw;
  left: calc((-100vw + 1920px) / 2);
  height: 50%;
  bottom: 0;
  position: absolute;
  z-index: 0;
}

section.module-slider .slider-item{
  position: relative;
  height: 700px;
}

section.module-slider .slider-item > picture{
  padding-top: inherit;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

section.module-slider .slider-item > picture::before{
  content: "";
  background-color: rgba(0, 65, 123, 0.6);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  z-index: 1;
}

section.module-slider .slider-item > picture > img{
  object-position: center;
}

section.module-slider .slider-item .btn-outline-primary {
  color: var(--white);
  border-color: var(--white);
  margin-left: 10px;
}

section.module-slider .slider-item .btn-outline-primary:hover {
  color: var(--white);
  border-color: transparent;
}
section.module-slider .slider-item .container{
  position: relative;
  z-index: 2;
  top: 50%;
  transform: translate(0, -50%);
}

section.module-slider .slider-item .text{
  max-width: 700px;
  color: var(--white);
  padding: 150px 0;
}

section.module-slider .container.dots{
  position: absolute;
  top: 50%;
  width: 100%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: right;
}

.slick-dots > li {
  font-size: 0;
}

section.module-slider .container.dots .slick-dots > li > button {
  border: 0;
  margin-bottom: 15px;
  opacity: 0.5;
  padding: 11px 0;
  position: relative;
  width: 70px;
  background: transparent;
}
section.module-slider .container.dots .slick-dots > li.slick-active > button {
  opacity: 1;
}
section.module-slider .container.dots .slick-dots > li > button::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 3px;
  background: var(--white);
  top: 0;
  left: 0;
}
section.module-slider .container.dots .slick-dots > li > button::after {
  content:"";
  width: 0;
  transition: width 3s linear;
  position: absolute;
  height: 3px;
  background: var(--blue);
  top: 0;
  left: 0;
}

section.module-slider .container.dots .slick-dots > li.slick-active button::after {
  animation: progressBar 3.1s linear forwards;
}

@keyframes progressBar {
  0% {
    width: 0%;
  }
  100% {
    width: 100%;
  }
}

/* Products home*/
section.products{
  padding-top: 75px;
}

section.products::before{
  content: "";
  background-color: var(--light);
  width: 100%;
  height: 450px;
  top: 0;
  left: 0;
  position: absolute;
  z-index: -1;
}

section.products .item .title-h{
  font-size: 24px;
  margin-bottom: 20px;
}

section.products .item .title-h > a{
  color: var(--dark);
}

section.products .item > a > picture{
  margin-bottom: 20px;
}

section.products .item > ul > li > a{
 display: block;
 text-decoration: underline;
 padding: 2px;
}

/* About */
section.about{
  padding: 75px 0;
  color: var(--white);
}
section.about > picture.bg{
  padding-top: inherit;
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: calc(100vw - ((100vw - 1230px) / 2) - 15px);
  height: 100%;
  z-index: 0;
  background: var(--darkblue);
}

section.about > picture.bg::after {
  content: "";
  width: 200px;
  height: 100%;
  left: -1px;
  top: 0;
  background-color: var(--white);
  position: absolute;
  z-index: 9;
}

section.about > picture.bg > img{
  mix-blend-mode: soft-light;
  opacity: 0.5;
}


section.about .text{
  padding-left: 50px;
}

section.about .text .btn-outline-primary{
  color: var(--white);
}

/* Services home*/
section.services.bg {
  background-color: var(--light);
  padding: 75px 0 45px 0;
}

section.services .intro{
  margin-bottom: 50px;
  max-width: 360px;
  margin-right: 50px;
}

section.services .service-item{
  margin-bottom: 30px;
}

section.services .service-item picture{
  margin-bottom: 20px;
  overflow: hidden;
  border-radius: 5px;
}
section.services .service-item picture > img{
  border-radius: 5px;
}
section.services .service-item:hover picture > img{
  transform: scale(1.05);
}
section.services .service-item .title-h{
  font-size: 26px;
}

section.services .service-item > p:last-child{
  margin-bottom: 0;
}

section.services.sub .intro{
  margin-bottom: 30px;
  max-width: inherit;
  margin-right: 0;
}
section.services.sub .service-item{
  position: relative;
  margin-bottom: 30px;
  padding: 30px;
  border-right: 0;
  transition: all 0.3s;
}
section.services.sub .service-item::before {
  content: "";
  border-top: 1px solid var(--border_light);
  border-left: 1px solid var(--border_light);
  border-bottom: 1px solid var(--border_light);
  width: calc(100vw - ((100vw - 1230px) / 2));
  left: 0;
  top: 0;
  border-radius: 5px 0 0 5px;
  height: 100%;
  position: absolute;
  transition: all 0.3s;
}
section.services.sub .service-item:hover::before {
  background-color: var(--light);
}
section.services.sub .service-item:hover{
  background-color: var(--light);
}
section.services.sub .service-item picture{
  margin-bottom: 0;
}
section.services.sub .service-item .title-h{
  font-size: 28px;
}


/* Gallery  */
section.module-gallery .slick-gallery{
  width: calc(100vw - ((100vw - 1230px) / 2));
}
section.module-gallery .slick-gallery .slick-list{
  margin-left: -15px;
}
section.module-gallery .slick-gallery .gallery-item{
  padding: 0 15px;
}

/* CTA */
section.cta{
  padding: 150px 0 0px 0;
  color: var(--white);
  max-width: 1920px;
  margin: 0 auto 75px auto;
}

section.cta > picture.bg{
  padding-top: inherit;
  display: block;
  position: absolute;
  width: 100%;
  left: 0;
  top: 0;
  height: 100%;
  z-index: 0;
}

section.cta > picture.bg::before{
  content: "";
  background: linear-gradient(45deg, rgba(0,0,0,1) 0%, rgba(54,55,63,1) 100%);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
}

section.cta > picture.bg > img{
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
  opacity:0.15;
}

section.cta::before{
  border-top: 100px solid #fff;
  border-left: 1920px solid transparent;
  width: 0;
  height: 0;
  top: 0;
  content: "";
  position: absolute;
  overflow: hidden;
  left: 0;
  margin: auto;
  z-index: 1;
}

section.cta::after{
  content: "";
  position: absolute;
  width: 100%;
  height: 80px;
  bottom: 0;
  left: 0;
  background-color: var(--white);
}

section.cta .contact-line{
  padding: 50px 0;
  background-color: var(--white);
  box-shadow: 0 0 30px rgba(0, 0, 0, .1);
  z-index: 9;
  position: relative;
  color: var(--dark);
  border-radius: 10px;
  margin-top: 30px;
}

section.cta .contact-line .contact-item .icon > i{
  font-size: 48px;
  color: var(--blue);
}
section.cta .contact-line .contact-item > span{
  margin-top: 15px;
}

/* Footer */
footer{
  background-color: var(--light);
  color: var(--dark);
  margin: 0;
  padding: 65px 0 0px 0;
}

footer .footer-box{
  min-width: 210px;
}

footer .footer-box.company{
  max-width: 260px;
  margin-right: 40px;
}

footer .row .menu .footer-box{
  min-width: 150px;
}
footer .footer-box .head{
  display: block;
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 15px;
  min-width: 150px;
  text-transform: uppercase;
}
footer .footer-box .logo{
  max-width: 180px;
  margin-bottom: 30px;
}

footer .footer-box ul{
  margin-bottom: 30px;
}

footer .footer-box ul > li > a{
  padding: 3px 0 3px 15px;
  display: block;
  position: relative;
}

footer .footer-box ul > li > a::before{
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
  width: 6px;
  height: 6px;
  border-radius: 5px;
  background-color: var(--border_light);
  transition: all 0.3s ease-in;
}
footer .footer-box ul > li > a:hover::before{
  background-color: var(--blue);
}

footer .sign{
  padding: 18px 0;
  background-color: var(--white);
}

/* Hlavicka podstránky */
section.page-head{
  position: relative;
  padding: 75px 0;
}

section.page-head .title-h{
  position: relative;
  margin: 0;
  padding-left: 75px;
  color: var(--white);
}

section.page-head picture {
  position: absolute;
  width: calc(100vw - ((100vw - 1230px) / 2));
  height: 100%;
  top: 0;
  padding: inherit;
  z-index: 0;
}

section.page-head picture::before {
  content: "";
  background-color: rgba(0, 65, 123, 0.8);
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  position: absolute;
  z-index: 1;
}
/* Modules */

/* Modul Content*/
section.module-content .container > .title-h{
  margin-bottom: 75px;
}
section.module-content .container > .row{
  margin-bottom: 100px;
}

section.module-content .container > .row .title-h{
  margin-bottom: 20px;
}

section.module-content ul.with-icon > li{
  padding: 0 0 0 20px;
}

section.module-content ul.with-icon > li::before {
  top:7px;
  transform: none
}

/* Modul vlastnosti*/
section.module-features{
  padding: 50px 0 20px 0;
  color: var(--white);
  margin-bottom: 0;
}
section.module-features.blue{background-color: var(--blue);}
section.module-features.green{background-color: var(--green);}
section.module-features.red{background-color: var(--red);}
section.module-features .feature-item{
  margin-bottom: 30px;
}
section.module-features .feature-item .icon{
  max-width: 72px;
  margin-right: 15px;
}
section.module-features .feature-item .icon > img{
  width: 100%;
}
/* Modul vyhody */
section.module-benefit{
  padding: 50px 0;
  background-color: var(--light);
}
section.module-benefit .benefit-item{
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}

section.module-benefit .benefit-item > .number{
  background-color: var(--green);
  color: var(--white);
  border-radius: 50%;
  min-width: 48px;
  width: 48px;
  height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-right: 15px;
  font-weight: 600;
  font-size: 22px;
}

/* Grid bloky */
section.module-grid-blocks .block-item > picture{
  margin-bottom: 20px;
  border-radius: 3px;
}
section.module-grid-blocks .block-item > picture > img{
  border-radius: 3px;
}
section.module-grid-blocks .block-item > .title-h{
  font-size: 18px;
}
section.module-grid-blocks .block-item .btn-link{
  color: var(--blue);
  margin-top: 15px;
}

/* Files */
section.module-files{
  padding: 50px 0;
  background-color: var(--light);
  margin-bottom: 0;
}
section.module-files .title-h{
  margin-bottom: 20px;
}
section.module-files .file-item .icon{
  font-size: 32px;
  color: var(--green);
  margin-right: 15px;
}
section.module-files .file-item a{
  font-weight: 500;
}
/* Vypis izolacii */
section.izolacie{
  background-color: var(--light);
  padding: 75px 0;
}

section.izolacie .izolacia-item{
  position: relative;
  background-color: var(--white);
  border-radius: 3px;
  border: 1px solid var(--border_light);
  padding: 10px 30px 30px 30px;
  height: auto;
  display: flex !important;
  align-items: stretch;
  flex-direction: column;
  margin: 0 15px;
  max-width: 290px;
  z-index: 1;
  margin-bottom: 20px;
  transition: all 0.3s ease-in-out;
}
section.izolacie .izolacia-item:hover{
  box-shadow: 0 5px 15px rgba(0, 0, 0, .1);
}
section.izolacie .izolacia-item .bg{
  position: absolute;
  background-color: var(--light);
  height: 230px;
  width: 100%;
  top: 0;
  left: 0;
  z-index: -1;
  overflow: hidden;
}
section.izolacie .izolacia-item .bg::before {
  content: '';
  position: absolute;
  bottom: -55%;
  left: 0;
  right: 0;
  height: 100%;
  background: var(--white);
  transform: skew(0deg, -30deg);
}
section.izolacie .izolacia-item picture{
  position: relative;
  min-height: 215px;
}
section.izolacie .izolacia-item picture > img{
  padding: 30px;
}
section.izolacie .izolacia-item .title-h{
  font-size: 20px;
}

section.izolacie .izolacia-item p{
  font-size: 15px;
  margin-bottom: 0;
}

.slick-izolacie,
.slick-izolacie .slick-track,
.slick-izolacie .slick-slide {
  height: 100%;
}

.slick-izolacie{
  margin-left: -15px;
  width: calc(100vw - ((100vw - 1230px) / 2));
}
.slick-izolacie .slick-list{
  padding-left: 15px;
}

.slick-izolacie .slick-track {
  display: flex;
}

/* Kontaktny formulár */
section.form{
  background-color: var(--darkblue);
  color: var(--white);
  margin-bottom: 0;
  padding: 75px 0;
}
section.form > picture {
  padding-top: inherit;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
section.form > picture > img {
  mix-blend-mode: soft-light;
  opacity: 0.3;
}
section.form .text{
  max-width: 320px;
  padding: 40px 30px 30px 30px;
  background-color: rgba(255,255,255,.05);
  color: var(--white);
  border-radius: 3px;
  border: 1px solid rgba(255,255,255,.2);
  backdrop-filter: blur(10px);
}

section.form .text strong.title{
  display: block;
  position: relative;
  margin: 30px 0 20px 0;
}

section.form .text strong.title::before{
  content: "";
  position: absolute;
  width: calc(100% - 140px);
  height: 1px;
  background-color: rgba(255,255,255,.2);
  top: 50%;
  right: 0;
  transform: translate(0,-50%);
}

section.form .text ul.inner-contact {
  font-size: 20px;
  list-style: none;
  margin-bottom: 0;
}

section.form .text ul.inner-contact > li {
  padding-left: 32px;
}

section.form .form-control {
  background-color: transparent;
  color: var(--white);
  border-color: rgba(255,255,255,.6);
}
section.form .form-control:focus {
  border-color: rgba(255,255,255,1);
  background-color: transparent;
}
section.form .form-control::placeholder  {
  opacity: 0.5;
  color: var(--white);
}
section.form .suhlas {
  position: relative;
}

.suhlas input[type="checkbox"] {
  display: none;
}

.suhlas input[type="checkbox"] + label {
  display: block;
  cursor: pointer;
  line-height: 22px;
  margin-bottom: 0;
}

.suhlas input[type="checkbox"] + label::before {
  content: "\f00c";
  font-family: 'Font Awesome 5 Pro';
  font-weight: 600;
  border-radius: 2px;
  display: inline-block;
  width: 20px;
  height: 20px;
  padding-left: 0;
  padding-bottom: 0;
  margin-right: 8px;
  vertical-align: bottom;
  color: transparent;
  -webkit-transition: .2s;
  -o-transition: .2s;
  transition: .2s;
  line-height: 18px;
  font-size: 11px;
  border: 1px solid var(--white);
  text-align: center;
}

.suhlas input[type="checkbox"]:checked + label::before {
  background-color: var(--green);
  border-color: var(--green);
  color: var(--white)
}

section.form .suhlas a {
  color: var(--white);
  text-decoration: underline;
}
section.form .btn-outline-primary {
  color: var(--white);
  border-color: transparent;
  background-color: var(--blue);
}
section.form .btn-outline-primary:hover {
  color: var(--dark);
  background-color: var(--white);
}

/* Dopytový formulár */
section.dopyt-form{
  padding: 75px 0;
}
section.dopyt-form::before{
  position: absolute;
  content: "";
  height: 100%;
  width: calc(100vw - ((100vw - 1230px) / 2) - 200px);
  top: 0;
  right: 0;
  background-color: var(--light);
}
section.dopyt-form picture{
  padding-top: inherit;
  height: 100%;
}
section.dopyt-form form{
  padding-left: 20px;
}

section.dopyt-form form .bootstrap-select .btn-light {
  background-color: var(--white);
  border-color: var(--border_light);
  outline: 0 !important;
  outline-offset: 0;
  font-weight: 400;
  color: var(--dark);
  border-width: 1px;
}

section.dopyt-form form .bootstrap-select .bs-placeholder .filter-option-inner-inner {
  color: var(--border_light);
}
section.dopyt-form form .bootstrap-select .dropdown-toggle::after {
  color: var(--border_light);
}
section.dopyt-form form .bootstrap-select.show .dropdown-toggle::after {
  color: var(--dark);
}
.bootstrap-select > .dropdown-toggle.bs-placeholder, .bootstrap-select > .dropdown-toggle.bs-placeholder:active, .bootstrap-select > .dropdown-toggle.bs-placeholder:focus, .bootstrap-select > .dropdown-toggle.bs-placeholder:hover {
  color: var(--dark);
  border-color: var(--darkblue);
}

section.dopyt-form form .suhlas input[type="checkbox"] + label::before{
  border: 1px solid var(--border_light);
  background-color: var(--white);
}

section.dopyt-form form .suhlas input[type="checkbox"]:checked + label::before {
  background-color: var(--green);
  border-color: var(--green);
  color: var(--white);
}

/* Kontakt */
section.contact .fakturacne .title-h{
  font-size: 24px;
  margin-bottom: 30px;
  border-radius: 5px;
}

section.contact .fakturacne{
  border: 1px solid var(--border_light);
  padding: 50px;
  margin-bottom: 75px;
  position: relative;
}

section.contact .fakturacne::before {
  content: "";
  background-color: var(--light);
  height: 100%;
  top: 0;
  right: 0;
  width: 50%;
  position: absolute;
}

section.contact .fakturacne .udaje{
  margin: 15px 0 0 0;
}

section.contact .fakturacne .udaje > span > strong {
  min-width: 100px;
  display: inline-block;
}

section.contact .fakturacne .text.right{
  padding-left: 35px;
}

/* Kontakt */
ul.inner-contact{
  font-size: 24px;
}

ul.inner-contact > li {
  list-style: none;
  position: relative;
  padding-left: 40px;
  margin-bottom: 5px;
}

ul.inner-contact > li::before{
  content: "\f879";
  font-family: 'Font Awesome 5 Pro';
  position: absolute;
  color: var(--blue);
  left: 0;
  font-weight: 300;
  top: 50%;
  transform: translateY(-50%);
}
ul.inner-contact > li:nth-child(2)::before{
  content: "\f0e0";
}

section.contact .fakturacne hr{
  margin: 30px 0;
}

section.contact .fakturacne .inner-socials > li {
  list-style: none;
  display: inline-block;
  padding: 0;
  margin-right: 10px;
}

section.contact .fakturacne .inner-socials > li > a > i{
  margin-right: 8px;
}

section.contact .fakturacne .inner-socials > li::before {
  display: none;
}

@media (max-width:1199px) {
  header{
    position: relative;
    z-index: 99;
    height: auto;
    padding: 20px 0;
  }

  header .row > div{
      position: static;
  }

  header #logo{
      position: relative;
  }

  header #toggleMenu{
    position: relative;
    display: block;
    width: 50px;
    height: 50px;
    margin-right: 0;
    padding: 0;
    line-height: 50px;
    font-size: 26px;
    text-align: center;
    color: var(--white);
    background-color: var(--blue);
    z-index: 10;
    border: 0;
  }

  header #menu{
    position: absolute;
    padding: 15px;
    top: 90px;
    left: 0;
    width: 100%;
    padding: 5px 0 20px;
    background: var(--dark);
    visibility: hidden;
    opacity: 0;
    transition: visibility 0.3s ease, top 0.3s ease, opacity 0.3s ease;
  }

  body.menuToggled #menu{
    top: 100%;
    visibility: visible;
    opacity: 1;
  }

  header #menu ul{
    padding: 0 15px;
    max-width: 960px;
    margin-left: auto;
    margin-right: auto;
  }

  header #menu ul > li
  {
    display: block;
    border-left: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.1);
  }

  header #menu ul > li > a
  {
    display: block;
    width: 100%;
    padding: 15px 0;
    font-weight: 600;
    transition: padding 0.3s ease;
    height: auto;
    color: var(--white);
    text-transform: inherit;
    margin: 0;
  }
  header #menu > ul > li.menu-btn {
    border: 0;
  }
  header #menu > ul > li.menu-btn > a {
    height: auto;
    background: var(--green);
    border-radius: 3px;
    padding: 18px 20px 18px 50px;
    color: var(--white);
    -webkit-box-shadow: 0 5px 15px rgba(40, 167, 69, 0.2);
    box-shadow: 0 5px 15px rgba(40, 167, 69, 0.2);
    margin-left: 0;
    position: relative;
    font-size: 14px;
  }

  header #menu > ul > li:not(.menu-btn) > a::before {
    display: none;
  }

  section.module-slider .slider-item .text {
    padding: 150px 50px;
  }

  section.services .intro {
    max-width: inherit;
    margin-right: 0;
  }
}

@media (max-width: 991px) {  
  section {
    margin-bottom: 50px;
  }
  section.module-slider .slider-item {
    height: 500px;
  }
  picture.frame {
    margin-bottom: 100px;
  }
  section.module-content .container > .row {
    margin-bottom: 50px;
  }

  section.module-content .container > .row picture > img{
    margin-bottom: 50px;
  }

  section.izolacie {
    padding: 50px 0;
  }

  section.form form {
    margin-bottom: 30px;
  }

  section.form .text {
    max-width: inherit;
  }

  section.form .text ul.inner-contact > li {
    display: inline-block;
    margin-right: 30px;
  }

  section.dopyt-form {
    padding: 50px 20px;
  }

  section.dopyt-form::before {
    width: 100%;
  }

  section.dopyt-form picture {
    padding-top: 56.25%;
    height: auto;
    margin-bottom: 30px;
  }

  section.dopyt-form form {
    padding-left: 0;
  }

  section.services.bg {
    padding: 50px 0 15px 0;
  }

  section.services.sub .service-item picture {
    margin-bottom: 30px;
  }

  section.module-gallery .slick-gallery .gallery-item > picture.cover {
    padding-top: 75%;
  }
  footer {
    padding: 50px 15px 0px 15px;
  }

  footer .footer-box.company {
    max-width: inherit;
  }

  footer .footer-box {
    margin-bottom: 30px;
  }
}
@media (max-width: 767px) {  
  h1 {
    font-size: 42px;
    margin-bottom: 5px;
  }
  h2 {
    font-size: 32px;
    margin-bottom: 5px;
  }
  .title-h.with-border {
    margin-bottom: 25px;
    padding-bottom: 15px;
  }
  section.contact .fakturacne {
    padding: 30px;
    margin-bottom: 50px;
  }
  section.contact .fakturacne .text.right {
    padding-left: 20px;
  }
  ul.inner-contact {
    font-size: 20px;
  }

  section.module-gallery .slick-gallery {
    width: 100%;
  }
  section.module-gallery .slick-gallery .slick-list {
    margin-left: -15px;
    margin-right: -15px;
  }
  section.module-gallery .slick-gallery .gallery-item > picture.cover {
    padding-top: 100%;
  }
}

@media (max-width: 575px) {  
  h1 {
    font-size: 32px;
  }

  h2 {
    font-size: 26px;
  }

  h3 {
    font-size: 22px;
  }

  .title-h.with-border::before {
    height: 2px;
  }

  section.module-slider .slider-item {
    height: 400px;
  }

  section.module-slider .slider-item .text {
    padding: 100px 30px;
  }

  section.page-head .title-h {
    padding-left: 30px;
  }

  section.form .text ul.inner-contact > li {
    display: block;
    margin-right: 0;
  }

  section.contact .fakturacne {
    padding: 30px 30px 10px 30px;
  }

  section.contact .fakturacne .text.right {
    padding-left: 0;
    margin-top: 50px;
  }

  section.contact .fakturacne::before {
    content: "";
    background-color: var(--light);
    height: 172px;
    bottom: 0;
    top: inherit;
    right: 0;
    width: 100%;
    position: absolute;
  }
} 
