/* Cascade Style Sheets - www.pbsolution.cz */

*,
*:before,
*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

* {
    margin: 0;
    padding: 0;
}

body {
    font-family: 'Montserrat', sans-serif;
    font-size: 16px;
    line-height: 1.4em;
    font-weight: 500;
}

.blue {
    color: #2c85a2;
}

.strong {
    font-weight: 600;
}

.nopadding {
    padding: 0 !important;
}

.nomargin {
    margin: 0 !important;
}

#header {
    background: #fff;
    box-shadow: 0px 0px 5px 0px rgba(73, 73, 73, 0.73);
    z-index: 9;
    position: fixed;
    width: 100%;
}

#logo {
    margin: 10px 0;
}

.container-wide {
    width: 1330px;
    max-width: 100%;
    margin: 0 auto;
}

#services {
    background: #f8f8f8;
    border-bottom: 1px solid #c8c8c8;
}

#services h2 {
    font-weight: 600;
    margin: 20px 0;
}

#services .box {
    color: #2b84a2;
    font-size: 20px;
    padding: 20px 180px 20px 30px;
    margin-bottom: 30px;
    font-weight: 500;
    box-shadow: 9px 8px 21px 0px rgba(73, 73, 73, 0.2);
}

#services .box.vzorky {
    background: #fff url('../../img/web/ico-vzorky.png') no-repeat right 30px center;
}

#services .box.vysetreni {
    background: #fff url('../../img/web/ico-vedec.png') no-repeat right 30px center;
}

#services .box.certifikat {
    background: #fff url('../../img/web/ico-certifikat.png') no-repeat right 30px center;
}

#services .box.analyza {
    background: #fff url('../../img/web/ico-molekula.png') no-repeat right 30px center;
}

#examination {
    background: #e2fffd;
    border-top: 2px solid #57c3bc;
    padding: 25px 0;
}

#examination p {
    text-decoration: underline;
    font-size: 25px;
    line-height: 30px;
    font-weight: 600;
}

#examination img {
    margin-bottom: 25px;
}

#threats {
    margin: 35px 0 30px 0;
}

#threats p {
    font-weight: 600;
}

#threats img {
    margin-bottom: 20px;
}

.row-flex {
    flex: 1;
    display: flex;
    flex-wrap: wrap;
}

.service {
    flex: 1;
    background: #0068b5;
    color: #fff;
    font-weight: 600;
    padding: 15px 15px 20px 15px;
    width: calc(20% - 30px);
    margin: 15px;
    float: left;
    position: relative;
    overflow: hidden;
}

.service img {
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 0;
}

.service p {
    z-index: 100;
    position: relative;
}

.service-cover {
    background: #fff;
    border: 2px solid #ddd;
    font-size: 21px;
    z-index: 20;
    line-height: 1.3em;
    color: #0068b5;
    padding: 20px;
    position: absolute;
    left: 0;
    top: 0;
    display: inline-block;
    width: 100%;
    height: 100%;
    -webkit-transition: all 3000ms ease-out;
    -moz-transition: all 3000ms ease-out;
    -o-transition: all 3000ms ease-out;
    transition: all 3000ms ease-out;
}

.service-cover img {
    position: absolute;
    bottom: -2px;
    right: -2px;
    opacity: .1;
}

.service:hover .service-cover {
    -webkit-transition: all 2000ms ease-out;
    -moz-transition: all 2000ms ease-out;
    -o-transition: all 2000ms ease-out;
    transition: all 2000ms ease-out;
    opacity: 0;
}

.description {
    -webkit-transition: all 1000ms ease-out;
    -moz-transition: all 1000ms ease-out;
    -o-transition: all 1000ms ease-out;
    transition: all 1000ms ease-out;
    opacity: 0;
}

.service:hover .description {
    opacity: 1;
}

.service .description p {
    line-height: 1em;
    margin: 5px 5px;
}

.service .description .title {
    font-size: 21px;
    z-index: 20;
    line-height: 1.3em;
    color: #fff;
    padding: 0;
    left: 0;
    top: 0;
    padding-right: 10px;
    padding-left: 2px;
    font-weight: 600;
    position: relative;
    top: 2px;
    display: inline-block;
    width: 100%;
    height: 100%;
}

.service .description a {
    color: #fff !important;
    font-size: 13px;
}

#page .container {
    margin-top: 3em;
}

#page h1 {
    color: #0068b5;
    margin-bottom: 25px;
}

#page h2 {
    color: #0068b5;
    font-weight: 600;
    font-size: 30px;
    margin: 30px 0 20px 0;
}

#page a {
    font-weight: 600;
    color: #0068b5;
}

#page .btn {
    color: #fff;
}

#page ul {
    margin: 30px 0;
}

#page ul li {
    list-style: none;
    margin: 10px 0;
    padding-left: 15px;
    background: url('../../img/web/submenu-default.png') no-repeat left top 5px;
}

#page #submenu ul {
    margin: 0;
    padding: 0;
}

#page #submenu ul li {
    list-style: none;
    margin: 0;
    padding: 0;
}

#page #submenu > ul > li > a {
    display: block;
    background: #818181;
    color: #fff;
    font-weight: 600;
    padding: 15px 20px;
    border-bottom: 1px solid #666;
}

#submenu > ul > li:hover > a {
    background: #0068b5 !important;
    text-decoration: none;
}

.news-preview {
    padding: 15px 40px;
}

.news-preview a {
    color: #000;
    display: flex;
}

.news-preview a:hover {
    text-decoration: none;
}

.news-preview img {
    -webkit-filter: grayscale(1);
    -moz-filter: grayscale(1);
    -o-filter: grayscale(1);
    -ms-filter: grayscale(1);
    filter: grayscale(1);
    -webkit-transition: filter .5s;
    -moz-transition: filter .5s;
    -ms-transition: filter .5s;
    -o-transition: filter .5s;
    transition: filter .5s;
}

.news-preview a:hover img {
    -webkit-filter: grayscale(0);
    -moz-filter: grayscale(0);
    -o-filter: grayscale(0);
    -ms-filter: grayscale(0);
    filter: grayscale(0);
}

.news-preview h3 {
    color: #2b84a2;
    font-weight: 600;
    font-size: 18px;
    margin: 0 0 15px 0;
    text-decoration: underline;
}

.news-preview h3 a:hover {
    text-decoration: none;
}

.naws-preview div {
    font-size: 16px;
}

#footer {
    background: #4a4f65;
    padding: 6px 0 0;
    color: #fff;
    font-size: 18px;
    margin-top: 2em;
}

#footer h2 {
    color: #b5cf52;
    font-size: 26px;
    padding-top: 18px;
}

#footer a.email, #footer a.email2 {
    color: #fff;
}

#footer .white-block {
    background: #fff;
    width: 100%;
    padding: 60px 125px;
}

#footer div.text {
    margin-left: 15px;
}

#footer .kontakt {
    padding: 0 0 0 110px;
}

#footer .kontakt h3 {
    font-size: 35px;
    font-weight: 600;
}

#footer .kontakt {
    font-size: 20px;
}

#footer .kontakt p {
    margin: 0;
}

#footer .kontakt ul {
    list-style: none;
    margin: 45px 0;
}

#footer .kontakt ul li {
    padding-left: 65px;
    margin: 15px 0;
}

#footer .kontakt ul li.home {
    background: url('../../img/web/ico-house.png') no-repeat left center;
}

#footer .kontakt ul li.phone {
    background: url('../../img/web/ico-phone.png') no-repeat left center;
}

#footer .kontakt ul li.email {
    background: url('../../img/web/ico-envelope.png') no-repeat left center;
    padding-top: 10px;
    padding-bottom: 10px;
}

#footer .kontakt .btn-facebook {
    background: #147bdc url('../../img/web/facebook.png') no-repeat left 16px center;
    font-size: 18px;
    padding: 23px 20px 23px 80px;
    color: #fff;
    -webkit-transition: background .5s;
    -moz-transition: background .5s;
    -ms-transition: background .5s;
    -o-transition: background .5s;
    transition: background .5s;
}

#footer .kontakt .btn-facebook:hover,
#footer .kontakt .btn-facebook:focus {
    text-decoration: none;
    background: #1465bc url('../../img/web/facebook.png') no-repeat left 16px center;
}

#kontakt a {
    color: #57c3bc;
}

#banner {
    box-shadow: 0px 0px 5px 0px rgba(73, 73, 73, 0.34);
}

#banner > .row {
    display: flex;
    justify-content: center;
}

#banner .row .centered {
    align-self: center;
}

.main-banner {
  background:url('../../img/web/banner.jpg') no-repeat center right;
  background-size:cover;
}

.banner-text {
  padding:30px;
}

#banner h1 {
    text-transform: uppercase;
    font-size: 40px;
    font-weight: 600;
    margin: 0;
}

#banner h2 {
    text-transform: uppercase;
    font-size: 26px;
    font-weight: 600;
    margin: 0;
}

.banner-text p {
    color: #a2a2a2;
    font-size: 16px;
    line-height: 30px;
    margin: 30px 0;
}

.banner-text a {
    background: #57c3bc url('../../img/web/btn-tooth.png') no-repeat left 10px center;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-radius: 0px;
    font-size: 14px;
    color: #fff;
    font-weight: 600;
    padding: 12px 18px 12px 45px;
    text-shadow: 0px 0px 3px rgba(73, 73, 73, 0.55);
    -webkit-transition: background .5s;
    -moz-transition: background .5s;
    -ms-transition: background .5s;
    -o-transition: background .5s;
    transition: background .5s;
}

.banner-text a:hover {
    text-decoration: none;
    background: #55B1AA url('../../img/web/btn-tooth.png') no-repeat left 10px center;
}

.banner-navigation {
  background:#e2fffd;
}

.banner-navigation a {
  color:#000;
  font-size:18px;
  text-decoration:underline !important;
}

.banner-navigation a:hover {
  text-decoration:none !important;
}

.banner-navigation img {
  margin-top:30px;
  margin-bottom:10px;
}

#copyright {
    margin: 2em;
}

#copyright img {
    margin: 15px;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: 400;
}

h2 {
    font-size: 36px;
}

.btn {
    -webkit-transition: all 250ms ease-out;
    -moz-transition: all 250ms ease-out;
    -o-transition: all 250ms ease-out;
    transition: all 250ms ease-out;
}

.btn:hover {
    -webkit-transition: all 250ms ease-out;
    -moz-transition: all 250ms ease-out;
    -o-transition: all 250ms ease-out;
    transition: all 250ms ease-out;
}

.btn.btn-green {
    border-radius: 0;
    color: #fff;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 18px;
    padding: 15px 45px 15px 20px;
    background: #b5cf52 url('../../img/web/ico-arrow.png') no-repeat right 20px center;
}

.btn.btn-green:hover {
    background-color: #9cb53b;
}

.btn.btn-blue {
    border-radius: 0;
    color: #fff;
    font-weight: 600;
    text-transform: uppercase;
    font-size: 16px;
    line-height: 48px;
    padding: 0 60px 0 25px;
    background: #2b84a2 url('../../img/web/ico-arrow.png') no-repeat right 25px center;
}

.btn.btn-blue:hover {
    background-color: #287491;
}

img {
    max-width: 100%;
}

.headline {
    display: block;
    text-align: center;
    background: #f3f3f3;
    padding: 15px;
    font-size: 23px;
    margin: 35px 0;
    color: #0068b5;
}

.contact-boxes {
    font-size: 25px;
    font-weight: 600;
    color: #000;
}

#page .contact-boxes .email {
    color: #000;
}

.contact-boxes img {
    margin-right: 10px;
}

a.fancybox_galerie img {
    margin: 10px;
    max-width: 250px;
    transition: border-color 250ms ease-in-out, filter 250ms ease-in-out;
    -webkit-filter: none;
    -moz-filter: none;
    -o-filter: none;
    -ms-filter: none;
    filter: none;
}

a.fancybox_galerie img:hover {
    margin: 10px;
    transition: border-color 250ms ease-in-out, filter 250ms ease-in-out;
    -webkit-filter: grayscale(100%);
    -moz-filter: grayscale(100%);
    -o-filter: grayscale(100%);
    -ms-filter: grayscale(100%);
    filter: grayscale(100%);
}

a.fancybox_galerie:hover {
    text-decoration: none;
}

#accordion .panel {
    box-shadow: none;
    border: 0;
    margin-bottom: 20px;
}

#accordion .panel-heading {
    padding: 15px;
    border-radius: 0;
    background: #0068b5;
}

#accordion .panel-heading h4 a {
    color: #fff;
}

#submenu li ul li {
    background: #f2f2f2;
}

#submenu li ul {
/ / display: none;
}

#submenu li:hover ul {
/ / display: block;
}

#submenu li ul li a.active {
    background: #e8e8e8;
}

#submenu li ul li a {
    color: #3b3b3b;
    padding: 5px 20px;
    display: block;
    font-weight: 500;
}

.active2 {
    background: #0168b5 !important;
}

div.submenu2 a.active2 {
    background: inherit !important;
}

div.submenu2 a.active {
    background: #e8e8e8 !important;
}

.submenu2 {
    display: none;
}

.active-child .submenu2 {
    display: block;
}

.active-child .submenu2 > ul > li > div {
    display: none;
}

.active-child .submenu2 > ul > li.active-child > div {
    display: block;
}

#submenu ul ul ul li {
    background: #f9f9f9;
    font-size: 15px;
}

#submenu ul ul ul li a {
    padding-left: 40px;
    background: url('../../img/web/right-arrow.png') no-repeat left 20px center !important;
    background-size: 12px 12px !important;
}

nav.navbar.navbar-default {
    margin-bottom: 0;
}

@media (min-width: 992px) {

    nav.navbar.navbar-default {
        border: 0;
        box-shadow: none;
        background: transparent;
        display: inline-block;
        border-radius: 0;
    }

    #header nav.navbar-default ul {
        display: inline-block;
    }

    #header nav.navbar-default li {
        list-style: none;
        display: inline-block;
        position: relative;
    }

    #header nav.navbar-default li a {
        display: block;
        padding: 0 20px;
        color: #000;
        font-weight: 500;
        font-size: 16px;
        line-height: 74px;
    }

    #header nav.navbar-default li a:hover, #header nav.navbar-default li a.active {
        text-decoration: none;
        color: #2b84a2;
    }

    #header nav.navbar-default li a img {
        filter: brightness(0);
    }

    #header nav.navbar-default li:hover a img,  #header nav.navbar-default li a.active img {
        filter: brightness(1);
    }

    #header nav.navbar-default li ul {
        display: none;
        position: absolute;
        background: #fff;
        padding: 30px;
        z-index: 9999;
        text-align: left;
        box-shadow: 0 3px 3px #ccc;
        border: 0;
    }

    #header nav.navbar-default li:hover ul {
        display: block;
    }

    #header nav.navbar-default li ul li {
        white-space: nowrap;
        text-transform: none;
        font-size: 18px;
        background: url('../../img/web/submenu-default.png') no-repeat left top 20px;
    }

    #header nav.navbar-default li ul li a {
        padding: 15px 15px 20px 23px;
        font-weight: 300;
        background: transparent !important;
        border: 0;
    }

    #header nav.navbar-default li ul li a:hover {
        border: 0;
    }

    #header nav.navbar-default li ul li ul {
        display: none !important;
    }

}

@media (max-width: 1200px) {

    .banner-text a {
      display:block;
      line-height:1.1;
      background-position:20px center;
    }
    
    .banner-text p {
      line-height:1.2;
    }
    
    #banner h1 {
      font-size:36px;
    }

    .navbar-header {
        float: none;
    }

    .navbar-toggle {
        display: block;
    }

    .navbar-collapse.collapse {
        display: none !important;
    }

    .navbar-collapse.collapse.in {
        display: block !important;
    }

    nav.navbar {
        position: initial;
        border: 0;
        box-shadow: none;
        margin: 0;
        padding-top: 25px;
        display: inline-block;
        background: transparent;
    }

    nav.navbar > div > button {
        margin: 0;
        z-index: 9999;
        background: transparent !important;
        border: 0 !important;
    }

    button.navbar-toggle.active {
        position: fixed;
        right: 15px;
        background: transparent !important;
    }

    button.navbar-toggle.active > span {
        color: #fff !important;
        background: #fff !important;
    }

    .navbar-toggle .icon-bar:nth-of-type(2) {
        top: 1px;
    }

    .navbar-toggle .icon-bar:nth-of-type(3) {
        top: 2px;
    }

    .navbar-toggle .icon-bar {
        position: relative;
        transition: all 500ms ease-in-out;
    }

    .navbar-toggle.active .icon-bar:nth-of-type(1) {
        top: 6px;
        transform: rotate(45deg);
    }

    .navbar-toggle.active .icon-bar:nth-of-type(2) {
        background-color: transparent !important;
    }

    .navbar-toggle.active .icon-bar:nth-of-type(3) {
        top: -6px;
        transform: rotate(-45deg);
    }

    #mobile-menu {
        position: fixed;
        left: 0;
        top: 0px;
        z-index: 8888;
        background: #0068b5;
        width: 100%;
        text-align: left;
        padding: 20px 20px;
    }

    #mobile-menu ul {
        margin: 0;
        padding: 0;
    }

    #mobile-menu > ul > li {
        list-style: none;
        display: block;
        padding: 0;
        margin: 0;
    }

    #mobile-menu > ul > li > a {
        white-space: nowrap;
        margin-left: 0;
        display: block;
        font-size: 110%;
        font-weight: bold;
        text-align: center;
        border: 0;
        padding: 10px;
    }

    #mobile-menu > ul > li a {
        color: #fff;
    }

    #mobile-menu > ul > li.open > a.dropdown-toggle {
        background: transparent !important;
        box-shadow: none;
    }

    #mobile-menu > ul > li.open:before {
        background: #0068b5 url('../../img/web/chevron-arrow-down.svg') no-repeat center center;
        background-size: 15px 15px;
        color: #fff;
        position: absolute;
        top: 39px;
        width: 40px;
        height: 21px;
        left: calc(50% - 20px);
        text-align: center;
        content: '';
    }

    #mobile-menu > ul > li > ul {
        padding: 20px 0;
        border-top: 1px solid #01508b;
        border-bottom: 1px solid #01508b;
        margin: 10px 0;
    }

    #mobile-menu > ul > li > ul > li {
        font-size: 120%;
        list-style: none;
        text-align: center;
    }

    #mobile-menu > ul > li > ul > li > a {
        border: 0;
        display: block;
        padding: 5px;
        font-weight: 300 !important;
        text-align: center;
    }

    .analyze-box {
        margin: 0;
    }

    .analyze-box a {
        display: flex;
        vertical-align: bottom;
        left: 0;
        height: 100%;
    }

    .analyze-box a span {
        align-self: flex-end;
        display: inline;
        height: auto;
    }

    .service {
        width: calc(100% - 30px);
        float: none;
        text-align: center;
        flex: none;
    / / padding-top: 200 px;
    }

    .service-cover {
        position: absolute;
        top: 0;
        left: 0;
        height: auto;
        border: 1px solid #0068B5;
        display: none;
    }

    #footer {
        background-image: none;
        background: #333;
        text-align: center;
        font-size: 16px;
    }

    #footer div {
        padding: 0;
    }

    #footer .contact-pin,
    #footer .contact-email,
    #footer .contact-phone {
        background: none;
        padding: 0 !important;
        margin: 0 !important;
    }

    #footer a {
        color: #fff !important;
    }

    a.fancybox_galerie img {
        max-width: calc(50% - 25px);
    }

    .btn.btn-green {
        font-size: 12px !important;
        padding: 10px;
        background-image: none;
    }

    #page .container {
        margin-top: 1em;
    }

    #page h2 {
        text-align: left !important;
    } 
    
    #banner > .row {
      flex:none;
      display:block;
    }   

}



#header nav.navbar-default li.btn-vysetreni {
    background: #57c3bc url('../../img/web/btn-tooth.png') no-repeat left 10px center;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-radius: 0px;
    padding: 6px 0;
    margin: 15px 0;
    -webkit-transition: background .5s;
    -moz-transition: background .5s;
    -ms-transition: background .5s;
    -o-transition: background .5s;
    transition: background .5s;
    text-shadow: 0px 0px 3px rgba(73, 73, 73, 0.55);
}

#header nav.navbar-default li.btn-vysetreni a {
    line-height: 16px;
    text-align: left;
    color: #fff;
    padding: 0 8px 0 45px;
    font-weight: 600;
    font-size: 14px;
}

#header nav.navbar-default li.btn-vysetreni:hover {
    background: #55b1aa url('../../img/web/btn-tooth.png') no-repeat left 10px center;
}

@media (min-width: 992px) {
    .col-own-1 {
        width: 14.28%;
    }
}

@media (max-width:768px) {
  #header nav.navbar-default {
    padding-top:13px;
  }
  
  #header nav.navbar-default li.btn-vysetreni a {
    text-align:center !important;
    padding-left:15px !important;
    padding-right:15px !important;
  }
  
  h1 {
    font-size:28px !important;
  }  
  
  h2 {
    font-size:24px !important;
  }
  
  #banner .row {
    display:block;    
    text-align:center;    
  }
  
  #banner p {
    font-size:16px;
    line-height:1.3;
  }
  
  #banner .col-md-6 {
    padding:0;    
  }    
  
  #banner .col-md-6:first-of-type {
    margin:auto -15px;
  }
  
  #banner img {
    margin-bottom:15px;    
  }
  
  #banner a {
    display:block;
    line-height:1.2;
    background-position:15px center;
  }
  
  #threats h1 {
    font-size:24px !important;
  }
  
  #footer .white-block {
    display:none;
  }
  
  #footer .kontakt {
    padding-left:0px;
    font-size:14px;
    padding-bottom:40px;
  }
  
  #footer .kontakt ul {
    margin:15px 0;
  }
  
  #footer .kontakt ul li {
    background:transparent !important;
    padding-left:0;
    margin:5px 0;    
  }
  
  #footer .kontakt .btn-facebook {
    font-size:14px;
    padding:10px 10px 10px 40px;
    background-size:20px 20px;
    background-position:10px center;
  }    
  
  #homepage-news p.text-right {
    text-align:left !important;
  }
  
  .news-preview {
    padding:15px;
  }
  
  .news-preview:first-of-type {
    border-bottom:1px solid #ccc;
  }
  
  .news-preview a {
    display:block;
  }
  
  .news-preview img {
    margin-bottom:25px;
  }
  
  .banner-navigation a {
    font-size:14px;
  }
    
  #banner .col-md-6:first-of-type {
    margin:0;
  }
  
  .banner-navigation .col-md-6 {  
    
    width:50%;
  }
    
}


    #frm-objednavkaForm fieldset {
        float: left;
        width: 50%;
        margin-bottom: 20px;
        padding: 0 10px;
    }
    #frm-objednavkaForm fieldset input:not([type=radio]):not([type=checkbox]), #frm-objednavkaForm fieldset textarea {
        width: 100%;
    }
    #frm-objednavkaForm fieldset input[type=radio], #frm-objednavkaForm fieldset input[type=checkbox] {
        margin-right: 10px;
    }
    #souhlas label {
        display: unset;
    }
    #frm-objednavkaForm fieldset input[type=submit] {
        width: unset !important;
        color: #fff;
        text-transform: uppercase;
        padding: 6px 8px;
        font-weight: 600;
        margin-top: 10px;
        background: #57c3bc;
        -moz-border-radius: 0px;
        -webkit-transition: background .5s;
        -moz-transition: background .5s;
        -ms-transition: background .5s;
        -o-transition: background .5s;
        border: none;
        transition: background .5s;
    }
    #frm-objednavkaForm fieldset input[type=submit]:hover {
        background: #55b1aa;
    }
    #frm-objednavkaForm fieldset select {
        background: #57c3bc;
        border: 0;
        color: #fff;
        width: 200px;
    }