body{
  padding: 0;
  margin: 0;
  font-family: 'Poppins', sans-serif;
  color: #000;
}
body > .content{
  overflow: hidden;
}
a{
  -moz-transition: all 0.25s;
  -webkit-transition: all 0.25s;
  transition: all 0.25s;
  color: #b3c94d;
  text-decoration: none; 
}
a:hover{
  text-decoration: underline;
}
img{
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}
*{
  scroll-behavior: smooth;
}
*:focus{
  outline: none;
}
/* header */
header{
  width: 96%;
  max-width: 1190px;
  margin: 0 auto;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  height: 106px;
  z-index: 10;
}
header .logo img{
  margin: 0px;
}
header nav ul{
  padding: 0;
  margin: 0px;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
header nav ul li{
  margin: 0px 0px 0px 60px;
  padding: 0px 0px;
}
header nav ul li a{
  display: block;
  font-size: 16px;
  line-height: 24px;
  font-weight: 600;
  color: #000;
  text-decoration: none;
}
header nav ul li a:hover{
  text-decoration: underline;
}
/* obsah */
main{
  width: 96%;
  max-width: 1190px;
  margin: 0 auto;
}
.uvod{
  display: flex;
  flex-wrap: wrap;
  height: 530px;
}
.uvod .left{
  width: 53%;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  z-index: 1;
}
.uvod .left:before{
  content: "";
  display: block;
  width: calc(100% + 50vw);
  height: calc(100% + 106px);
  position: absolute;
  right: -60px;
  bottom: 0px;
  background: #b3c94d;
  z-index: -1;
  transform: skewX(-6deg);
}
.uvod .left:after{
  content: "";
  display: block;
  width: calc(100% + 50vw);
  height: calc(100% + 106px);
  position: absolute;
  right: -80px;
  bottom: 0px;
  background: transparent url(images/uvod-podklad.svg) no-repeat right bottom;
  z-index: 1;
}
h1{
  font-size: 52px;
  line-height: 66px;
  font-weight: bold;
  margin: 0px 0px 60px;
  color: #000;
  position: relative;
  z-index: 2;
}
h1 strong{
  color: #fff;
  display: block;
}
h2{
  font-weight: bold;
  font-size: 40px;
  line-height: 56px;
  margin: 0px;
  color: #b3c94d;
  text-align: center;
}
.uvod .left p{
  margin: 0px 0px 70px;
  position: relative;
  z-index: 2;
}
.uvod .right{
  width: 47%;
}
.uvod .right div{
  position: relative;
  width: calc(100% + calc(50vw - 595px));
  height: 100%;
  overflow: hidden;
}
.uvod .right div img{
  position: absolute;
  max-width: 10000px;
  right: 0px;
  bottom: 0px;
}
a.button-ikona{
  display: inline-block;
  text-decoration: none;
  font-size: 19px;
  line-height: 27px;
  font-weight: 600;
  color: #fff;
  padding: 17px 36px 17px 83px;
  border-radius: 50px;
  background: #000 url(images/ikona-auto.svg) no-repeat 27px center;
}
a.button-ikona:hover{
  background-color: #555;
}
.rozcestnik{
  position: relative;
  padding: 78px 0px 85px;
}
.rozcestnik:before,
.cenik:before{
  content: "";
  display: block;
  width: 100vw;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 0px;
  transform: translate(-50%, 0%);
  z-index: -1;
  background: #f2f2f2;
}
.rozcestnik .items{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.rozcestnik .items .item{
  width: calc(20% - 24px);
  text-align: center;
}
.rozcestnik .ikona{
  width: 116px;
  height: 116px;
  margin: 0px auto 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  box-sizing: border-box;
  border: 2px solid #dedede;
  border-radius: 100px;
}
.rozcestnik h3{
  font-size: 17px;
  line-height: 24px;
  font-weight: 600;
  margin: 0px 0px 18px;
  color: #000;
  padding: 0px 40px;
}
.rozcestnik p{
  font-size: 14px;
  line-height: 21px;
  margin: 0px 0px 20px;
  color: #000;
  min-height: 105px;
  text-align: left;
}
a.button{
  font-size: 15px;
  line-height: 21px;
  color: #5e5e5e;
  display: inline-block;
  text-decoration: none;
  padding: 11px 33px;
  border-radius: 50px;
  font-weight: 600;
  border: 1px solid #b2b2b2;
}
a.button:hover{
  background: #b3c94d;
  border-color: #b3c94d;
  color: #fff;
}
.sluzby{
  padding-top: 50px;
}
.sluzby .item-row{
  padding: 100px 0px;
  display: flex;
  flex-wrap: wrap;
  position: relative;
  justify-content: space-between;
  align-items: flex-start;
}
.sluzby .item-row:first-child{
  padding-top: 65px;
}
.sluzby .item-row:nth-child(even){
  flex-direction: row-reverse;
}
.sluzby .item-row:nth-child(even):before{
  content: "";
  display: block;
  width: 100vw;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 0px;
  transform: translate(-50%, 0%);
  z-index: -1;
  background: #f9f9f9;
}
.sluzby .item-row .left{
  width: 48.5%;
  position: relative;
  padding-top: 10px;
}
.sluzby .item-row .right{
  width: calc(51.5% - 56px);
}
.sluzby .item-row .left .ikona{
  width: 116px;
  height: 116px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #b3c94d;
  box-sizing: border-box;
  border: 2px solid #b3c94d;
  border-radius: 100px;
  position: absolute;
  right: 38px;
  bottom: -46px;
}
.sluzby .item-row:nth-child(even) .left .ikona{
  right: auto;
  left: 53px;
}
h3{
  font-size: 30px;
  line-height: 40px;
  margin: 0px 0px 30px;
  font-weight: 600;
  color: #000;
}
p{
  color: #1e1e1e;
  font-size: 16px;
  line-height: 25px;
  margin: 0px 0px 30px;
}
.sluzby p{
  font-weight: 500;
}
main ul{
  padding: 0;
  margin: 0;
  list-style: none;
}
main ul li{
  color: #1e1e1e;
  font-size: 16px;
  line-height: 32px;
  padding-left: 38px;
  background: transparent url(images/li.svg) no-repeat left 9px;
}
.cenik{
  position: relative;
  padding: 90px 0px 110px;
  max-width: 1050px;
  margin: 0 auto;
}
.cenik .tabulka{
  padding-top: 40px;
}
table{
  width: 100%;
  border-collapse: collapse;
}
table th{
  text-align: center;
  font-size: 16px;
  line-height: 30px;
  font-weight: normal;
  color: #363333;
  padding: 0px 10px 10px;
}
table td{
  border-bottom: 1px solid #cfcfcf;
  background: #fff;
  text-align: center;
  font-size: 16px;
  line-height: 30px;
  font-weight: bold;
  color: #1e1e1e;
  padding: 20px 10px;
}
table td:first-child{
  border-left: 1px solid #cfcfcf;
  font-weight: normal;
  padding-left: 70px;
  text-align: left;
  background: #fff url(images/rss-symbol.svg) no-repeat 30px center;
}
table tr:nth-child(even) td:first-child{
  background: #f9f9f9 url(images/rss-symbol.svg) no-repeat 30px center;
}
table td:last-child{
  border-right: 1px solid #cfcfcf;
  color: #b3c94d;
}
table tr:first-child td{
  border-top: 1px solid #cfcfcf;
}
table tr:nth-child(even) td{
  background: #f9f9f9;
}
.kontakt{
  padding: 100px 0px 110px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.kontakt h2{
  width: 100%;
  margin-bottom: 30px;
}

.kontakt p.opening{
  width: 100%;
  margin-bottom: 70px;
  text-align: center;
}

.kontakt .left{
  width: 52%;
}
.kontakt .right{
  width: 40%;
  box-sizing: border-box;
  border-left: 1px solid #e1e1e1;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.kontakt .row{
  display: flex;
  flex-wrap: wrap;
  padding: 8px 0px;
}
.kontakt .row .row-label{
  width: 325px;
  box-sizing: border-box;
  line-height: 18px;
  line-height: 25px;
  color: #484848;
  padding-left: 46px;
  background: transparent url(images/phone.svg) no-repeat left center;
}
.kontakt .row:nth-child(3) .row-label{
  background: transparent url(images/email.svg) no-repeat left center;
}
.kontakt .row .row-item{
  width: calc(100% - 325px);
}
.kontakt .row .row-item a{
  text-decoration: none;
  font-weight: bold;
  font-size: 20px;
  line-height: 25px;
  color: #000;
}
.kontakt .row .row-item a:hover{
  text-decoration: underline;
}
.kontakt .row:nth-child(3) .row-item a{
  color: #b3c94d;
}
.kontakt .right p{
  font-size: 18px;
  margin-bottom: 20px;
}
.kontakt .right p:last-child{
  margin-bottom: 0px;
}
/* footer */
footer{
  position: relative;
  width: 96%;
  max-width: 1190px;
  margin: 0 auto;
  padding: 50px 0px 46px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
footer:before{
  content: "";
  display: block;
  width: 100vw;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 0px;
  transform: translate(-50%, 0%);
  z-index: -1;
  background: #232323;
}
footer .left{
  width: 60%;
}
footer .right{
  width: 40%;
  text-align: right;
}
footer .left p,
footer .right p{
  line-height: 32px;
  color: #fff;
  margin: 0px;
}
/* responze */
@media screen and (max-width: 1250px){
  header nav ul li {margin: 0px 0px 0px 40px;}
  .uvod .right div {width: calc(100% + 200px);}
  h1 {font-size: 46px; line-height: 66px;}
  a.button {padding: 11px 22px;}
  .rozcestnik h3 {padding: 0px 30px;}
  .kontakt .left {width: 57%;}
}
@media screen and (max-width: 1023px){
  main, header, footer{width: 100%; box-sizing: border-box; padding-left: 20px; padding-right: 20px;}
  .uvod {height: auto;}
  .uvod .left {width: 100%; padding: 50px 0px 30px;}
  .uvod .right {width: 100%;}
  .uvod .right div {height: 400px; margin-left: -20px;}
  .rozcestnik .items .item {width: calc(33.33% - 24px);}
  .rozcestnik .items {justify-content: center; gap: 36px;}
  .rozcestnik h3 {min-height: 48px; padding: 0;}
  .kontakt .left {width: 100%;}
  .kontakt .right {width: 100%; border-left: none; padding-top: 60px;}
  footer .left{width: 70%;}
  footer .right{width: 30%;}
}
@media screen and (max-width: 767px){
  header nav ul li {margin: 0px 0px 0px 10px;}
  header .logo{max-width: 180px;}
  h1 {font-size: 38px; line-height: 54px;}
  .rozcestnik .items .item {width: calc(50% - 24px);}
  .sluzby .item-row .left {width: 100%; padding-top: 0; margin-bottom: 70px;}
  .sluzby .item-row .right {width: 100%;}
  .cenik .tabulka {overflow: auto; white-space: nowrap;}
  .kontakt .row .row-label {width: 100%;}
  .kontakt .row .row-item {width: 100%; padding-left: 48px; padding-top: 8px;}
  .kontakt .left {max-width: 270px;}
  footer .left {width: 100%; text-align: center; margin-bottom: 30px;}
  footer .right {width: 100%; text-align: center;}
}
@media screen and (max-width: 479px){
  header {justify-content: center;}
  header .logo {max-width: 100%; width: 100%;}
  header .logo img {margin: 0px auto;}
  header nav ul {justify-content: center;}
  header nav ul li {margin: 0px 8px;}
  h1 {font-size: 30px; line-height: 46px; text-align: center;}
  a.button-ikona {text-align: center;}
  .rozcestnik .items .item {width: 100%;}
  .rozcestnik h3 {min-height: 1px;}
  .rozcestnik p {min-height: 1px;}
  h3 {font-size: 24px; line-height: 36px;}
  .sluzby .item-row {padding: 60px 0px;}
  .sluzby .item-row:first-child {padding-top: 50px;}
  .cenik {padding: 60px 0px 60px;}
  .kontakt {padding: 60px 0px 60px;}
  h2 {font-weight: bold; font-size: 28px; line-height: 44px;}
  .kontakt h2 {margin-bottom: 35px;}
  .uvod .right div {height: 300px;}
  .uvod .right div img {max-width: 185%;}
}
