/* 0 px - 640 px */
@media screen and (max-width: 640px){
  .mainL,
  .mainP,
  .mainT,
  .mainTL,
  .mainTP,
  .mainTL2,
  .mainTP2{
   display: block;
   width: 100%;
   height: auto;
   float: none;
  }
  .mainTL.foto,
  .mainTP.foto,
  .mainTL2.foto,
  .mainTP2.foto{ height: 400px; }
  .mainTP .padH100{ padding: 0px; }
  H1.logo{
    padding: 0px;
  }
  H1.logo A,
  H1.logo A:link,
  H1.logo A:visited{
   width: 320px;
   height: 152px;
   background-size: 100%;
  }
  .mainTP .padL70{ padding-left: 20px; }
  .mainTP .padP70{ padding-right: 20px; }
  .vreference A SPAN.robr, .vreference A:link SPAN.robr, .vreference A:visited SPAN.robr{
   float: none;
   margin: 0px auto 0px auto;
  }
  .vreference A STRONG, .vreference A:link STRONG, .vreference A:visited STRONG{
   text-align: center;
  }
  .vreference A SPAN.rtext, .vreference A:link SPAN.rtext, .vreference A:visited SPAN.rtext {
   float: none;
   width: 90%;
   margin: 0px auto 0px auto;
  }
}
/* 641 px - 1550 px */
@media screen and (min-width: 641px) and (max-width: 1550px){
  .mainL.foto,
  .mainP.foto,
  .mainTL.foto,
  .mainTP.foto{
   background-size: auto 100%;
  }
}
/* 0 px - 1000 px */
@media screen and (max-width: 1000px){
  .rs_nev{ display: none; }
  .rs_block{ display: block; }
  .toppruhpoz{
   position: fixed;
   height: 70px;
   background-color: #FFFFFF;
   box-shadow: 0px 0px 5px 0px #E0E0E0;
   -webkit-box-shadow: 0px 0px 5px 0px #E0E0E0;
   -moz-box-shadow: 0px 0px 5px 0px #E0E0E0;
  }
  .toppruh{
   width: 100%;
   max-width: 100%;
   min-width: 100%;
  }
  .menu{
   display: none;
  }
  .menu_respons{
   display: block;
  }
  .menu_respons A,
  .menu_respons A:link, .menu_respons A:visited{
   position: absolute;
   top: 15px;
   right: 20px;
   display: block;
   width: 42px;
   height: 42px;
   background-image: url(obr/ico_menu.png);
   background-repeat: no-repeat;
   background-position: center center;
   cursor: pointer;
  }
  .menu_respons A:hover, .menu_respons A:active{
   background-image: url(obr/ico_menu_over.png);
  }
  .smenu_respons{
   display: none;
   position: fixed;
   top: 70px;
   left: 0px;
   width: 100%;
   background-color: #797979;
   z-index: 19;
  }
  .rs_smenu A,
  .rs_smenu A:link,
  .rs_smenu A:visited{
   display: block;
   width: calc(100% - 10px);
   padding: 7px 0px 7px 10px;
   color: #FFFFFF;
   border-bottom: solid 1px #F0F0F0;
   text-align: left;
   text-decoration: none;
   font-weight: 300;
   font-size: 15px;
  }
  .rs_smenu A:hover,
  .rs_smenu A:active,
  .rs_smenu A.a,
  .rs_smenu A.a:link,
  .rs_smenu A.a:visited{
   color: #FFFFFF;
   background-color: #117691;
  }
  .rs_vlajky{
   display: block;
   text-align: center;
   border-top: solid 1px #F0F0F0;
   border-bottom: solid 1px #F0F0F0;
   padding: 10px 0px 5px 0px;
  }
  .rs_vlajky .vlajky{
   position: relative;
   top: auto;
   left: auto;
   display: inline-block;
   float: none;
   padding: 0px;
   margin: 0px auto 0px auto;
  }
  .rs_vlajky A,
  .rs_vlajky A:link,
  .rs_vlajky A:visited{
   float: none;
   display: inline-block;
   margin: 0px 10px 0px 10px;
  }
  .toppruh .blokL A.tlogo, .toppruh .blokL A.tlogo:link, .toppruh .blokL A.tlogo:visited{
   color: #797979;
   font-size: 30px;
   height: auto;
   width: 250px;
   margin-top: 15px;
   margin-left: 10px;
   text-align: left;
  }
  .toppruh .blokL A.tlogo EM, .toppruh .blokL A.tlogo:link EM, .toppruh .blokL A.tlogo:visited  EM{
   font-size: 16px;
  }
  .main{
   width: 96%;
   max-width: 96%;
   min-width: 96%;
  }
  .main .padL100{ padding-left: 20px; }
  .main .padP100{ padding-right: 20px; }
  A.reference, A.reference:link, A.reference:visited, A.reference:hover, A.reference:active {
   width: 100%;
   margin: 30px auto 30px auto;
   float: none;
   background-position: center center;
   position: relative;
  }
  A.reference SPAN.rt, A.reference:link SPAN.rt, A.reference:visited SPAN.rt{
   margin: 25px 50% 25px 0px;
   display: inline-block;
  }
  FORM TABLE TR TD,
  FORM TABLE TR TD.left,
  FORM TABLE TR TD.right{
   display: block;
   text-align: center;
  }
  INPUT.i, TEXTAREA{
   width: calc(100% - 20px);
  }
  A.apanel, A.apanel:link, A.apanel:visited{
   width: 100%;
   margin: 10px auto 10px auto;
  }
  .mainP IMG.flr{
   float: none;
   margin: 10px auto 10px auto;
   max-width: 100%;
  }
  .fotogalerie A, .fotogalerie A:link, .fotogalerie A:visited {
    width: calc(50% - 2px);
  }
  .copy, A.kao:link, A.kao:visited{
   float: none;
   margin: 20px 0px 0px 0px;
   text-align: center;
  }
  .copy DIV.right{
   text-align: center;
  }
  .bottom{
   width: 100%;
   min-width: 100%;
   max-width: 100%;
   padding: 50px 0px 100px 0px;
  }
}
/* 1001 px - 1100 px */
@media screen and (min-width: 1001px) and (max-width: 1100px){
  .menu SPAN,
  .menu A,
  .menu A:link, .menu A:visited{
   padding: 0px 5px 0px 5px;
   letter-spacing: -0.5px;
  }
}
/* 1101 px - 1300 px */
@media screen and (min-width: 1101px) and (max-width: 1300px){
  .menu SPAN,
  .menu A,
  .menu A:link, .menu A:visited{
   padding: 0px 5px 0px 5px;
  }
}
/* 1401 px - ... */
@media screen and (min-width: 1401px){

}