/* 0 px - 640 px */
@media screen and (max-width: 640px){
  .rs_mob_block{ display: block; }

  BODY{ padding: 0px; font-size: 16px; }

  H1, H2{
    display: block;
    font-size: 30px;
  }
  .top H1{ font-size: 40px; }
  
  A.logo,
  A.logo:link,
  A.logo:visited{
    top: 10px;
    left: 10px;
    height: 38px;
    padding: 2px 0px 5px 55px;
    margin: 0px;
    font-size: 30px;
    z-index: 101;
  }
  A.logo SPAN, A.logo:link SPAN, A.logo:visited SPAN{
    display: inline-block;
  }
  
  .top{
    aspect-ratio: 360 / 650;
  }
  .top H1{
    top: 90px;
    left: 30px;
    width: calc(100% - 60px);
    margin: 0px;
    line-height: 100%;
  }
  .top H2{
    top: 310px;
    left: 30px;
    width: calc(100% - 60px);
    margin: 0px;
    font-size: 20px;
  }
  .top DIV.top_tlacitka{
    top: auto;
    bottom: 10px;
    left: 30px;
    width: calc(100% - 60px);
    margin: 0px;
  }
  .top_tlacitka A, .top_tlacitka A:link, .top_tlacitka A:visited{
    float: none;
    margin: 0px 0px 20px 0px;
  }
  .top .top_prechod_H{ background: none; }
  .top .top_prechod_L{
    width: 100%;
    aspect-ratio: 360 / 650;
    background-position: -250px top;
  }
  
  DIV.kroky{ display: block; }
  DIV.kroky DIV.krok{ display: block; max-width: none; }
  DIV.krok H2{ padding: 0px 50px; }
  DIV.krok SPAN{
    position: relative;
    top: auto;
    right: auto;
    width: 26px;
    height: 120px;
    background-image: url(obr/krok_sipkaD.png);
    margin: 20px auto;
  }
  DIV.reference{ grid-template-columns: 1fr; }
  DIV.kontakty{ text-align: center; }
  DIV.kontakty DIV SPAN{
    display: block;
    margin: 0px auto 30px auto;
  }
  DIV.kontakty DIV.email{
    font-size: 20px;
  }

  .main{
    min-width: 0px;
    max-width: 90%;
    width: 90%;
  }
  .mainL, .mainP{
   width: 100%;
   float: none;
   margin: 0px auto 20px auto;
  }
  .pruh1poz,
  .pruh3poz{
   top: auto;
   bottom: -20%;
   right: -100%;
   width: 100%;
   height: 100%;
  }

  DIV.sluzby{ grid-template-columns: 1fr; }
  DIV.sluzby A.sluzba SPAN.slico{
    width: 70px;
    height: 70px;
  }
  DIV.sluzby A.sluzba SPAN.slico IMG{ width: 100%; }
  DIV.sluzby A.sluzba SPAN.sltxt{ width: calc(100% - 90px); }
  DIV.sluzby A.sluzba STRONG{
    font-size: 25px;
    line-height: 25px;
  }

  .bloky3{
    grid-template-columns: 1fr;
  }
  
  DIV.cenik{ width: 80%; }
  DIV.cenik SPAN{ border: none; }
  DIV.cenik EM{
    float: none;
    text-align: center;
    background-color: transparent;
  }
  DIV.cenik STRONG{
    float: none;
    text-align: center;
    background-color: transparent;
  }

  .copy, A.kao:link, A.kao:visited{
   float: none;
   margin: 20px 0px 0px 0px;
   text-align: center;
  }
  .bottom{
   width: 100%;
   min-width: 100%;
   max-width: 100%;
   padding: 50px 0px 100px 0px;
   text-align: center;
  }
}
/* 0 px - 1000 px */
@media screen and (max-width: 1000px){
  .rs_nev{ display: none; }
  .rs_block{ display: block; }

  A.ico_menu,
  A.ico_menu:link, A.ico_menu:visited{
   position: fixed;
   top: 10px;
   right: 10px;
   display: block;
   width: 42px;
   height: 42px;
   background-image: url(obr/ico_menu.png);
   background-repeat: no-repeat;
   background-position: center center;
   cursor: pointer;
   z-index: 101;
  }
  A.ico_menu:hover, A.ico_menu:active{
   background-image: url(obr/ico_menu_over.png);
  }
  .menupruh{
   top: 0px;
   background-color: #FFFFFF;
   background-image: linear-gradient(to bottom, #FFFFFF, #F1F6FD);
  }
  .menu{
    display: none;
    position: absolute;
    left: 0px;
    top: 70px;
    width: 100%;
    background-color: #FFFFFF;
    background-image: linear-gradient(to bottom, #FFFFFF, #F1F6FD);
    padding: 10px 0px 20px 0px;
  }
  .menu A, .menu A:link, .menu A:visited{
    float: none;
    font-size: 20px;
    padding: 5px 20px;
    margin: 0px auto;
    width: calc(80% - 40px);
  }
}
/* 641 px - 1000 px */
@media screen and (min-width: 641px) and (max-width: 1000px){
  A.logo,
  A.logo:link,
  A.logo:visited{
    top: 70px;
    left: 30px;
  }
  DIV.sluzby{
    grid-template-columns: 1fr 1fr;
  }
  DIV.kroky{
    grid-template-columns: 1fr 1fr;
    margin: 0px auto;
  }
}
/* 1001 px - 1600 px */
@media screen and (min-width: 1001px) and (max-width: 1600px){
  .top H1{
    width: 72%;
  }
}