*{
    
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Lora', sans-serif;
}

body {
    
    background: #eaeaea;
    min-height: 200vh;
}

html {
    scroll-behavior: smooth;
    transition: .10s;
    
}

header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: 0.6s;
    padding: 10x 100px;
    z-index: 2;    
    height: 75px;
    font-size: 17px;
    background-color: darkred;
}

header .logo  {
    display: block;
    position: relative;
    font-weight: 600;
    padding: 40px 40px;
    color: white;
    text-decoration: none;
    font-size: 26px;
    text-transform: uppercase;
    letter-spacing: 2px;
}

header ul {
    
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    
}

header ul li {
    
    position: relative;
    list-style: none;
    
}

header ul li a {
    
    position: relative;
    margin: 0 15px;
    text-decoration: none;
    color: white;
    font-weight: 500;
    font-size: 26px;
    font-family: 'Lora';
}

.logo:hover,
.navbar a:hover,
.navbar a.active
{ 
    color: red;
}

 header .zpet { 

    display: flex;
    position: relative;
    margin: 0 15px;
    text-decoration: none;
    color: white;
    font-size: 26px;
    font-family: 'Lora';
    justify-content: center;
     align-items: center;
    font-weight: 500;
    height: 40px;

}

header .zpet:hover {
    
    color: red;
}

.pozadi {
    position: relative;
    width: 100%;
    height: 500px;
    background-size: cover;
    background-image:linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0.9)),url(images/sluzby1.jpg); /* Ztmavené pozadí - méně ostré*/
    
}

.uvod {
    padding-top: 150px;
    text-align: left;
    padding-left: 50px;
    padding-bottom: 25px;
    
    
}

.uvod h1{
    
    font-size: 50px;
    color: white;
    align-items: center;
    text-align: center;
    margin-top: 75px;
    
}

.navbar a:hover { 
    color: red;
}


/*.areal-text p {
    
    text-align: left;
    padding-left: 50px;
    margin: auto;
    font-size: 20px;
    font:bold;
    color: white;
    
}

*/

.nav2 {
    display: flex;
    column-gap: 2rem;
    
}

.nav2 ul {
    padding: 10px 50px;
    display: flex;
    margin-top: 40px;
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    
 
}

.nav2 ul li {
    
    position: relative;
    list-style: none;
    
    
}

.nav2 ul li a {
    
    position: relative;
    margin: 0 15px;
    text-decoration: none;
    color: darkred;
    font-weight: 500;
    font-size: 35px;
    font-family: 'Lora';
}

.nav2 a:hover,
.nav2 a.active
{ 
    color: red;
    transition: .0.5s;
}


.gallery h1 {
    text-align: left;
    font-size: 35px;
    margin: 30px 0;
    color: #000;
    font-weight: 500;
}

.gallery {
    padding-top: 65px;
    margin: 15px 50px;
}

.gallery img {
    
    width: 200px;
    padding: 5px;

    transition: 1s;
    cursor: pointer;
}

.gallery img:hover {
    transform: scale(1.1);
}

.svetliky {
    
    margin-top: 35px;
    margin-left: 50px;
    font-size: 25px;
    color: #000;
}

.strechy_votice {
    
    margin-top: 70px;
    margin-left: 50px;
    font-size: 25px;
    color: #000;
}



.kamenice {
    
    margin-top: 70px;
    margin-left: 50px;
    font-size: 25px;
    color: #000;
}

.votice {
    
    margin-top: 70px;
    margin-left: 50px;
    font-size: 25px;
    color: #000;
}

.ladvi {
    
    margin-top: 70px;
    margin-left: 50px;
    font-size: 25px;
    color: #000;
}

.obklady {
    
    margin-top: 70px;
    margin-left: 50px;
    font-size: 25px;
    color: #000;
}

.stavby_klic {
    
    margin-top: 70px;
    margin-left: 50px;
    font-size: 25px;
    color: #000;
}

.pergoly {
    
    margin-top: 70px;
    margin-left: 50px;
    font-size: 25px;
    color: #000;
}

.rekonstrukce {
    
    margin-top: 70px;
    margin-left: 50px;
    font-size: 25px;
    color: #000;
}

.sadrove_omitky {
    
    margin-top: 70px;
    margin-left: 50px;
    font-size: 25px;
    color: #000;
}

.back-to-top {
    
    position: fixed;
    width: 45px;
    height: 45px;
    bottom: 25px;
    right: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    background-color: darkred;
    color: #eaeaea;
    padding: 5px;
    cursor: pointer;
    transition: .5s ease;
     opacity: 0;
    animation: slideTop 1s ease forwards;
    animation-delay: .1s;
    

}

.back-to-top span {
    
      font-size: 35px;
      text-decoration: none;
}

.back-to-top:hover {
    
    background-color: red;
    color: #eaeaea;
    transition: 0.2s ease-out;
}

/*ANIMATION*/

@keyframes slideTop {
    
    0% {
        transform: translateY(100px);
        opacity: 0;
    }
    
        100% {    
         transform: translateY(0);
            opacity: 1;
    }
}

/* Responzivní menu */

@media (max-width: 1440px){
    
    header {
        
        padding: 0px;
    }
    
    
    .nav2 {
        
        display: flex;
        position: absolute;
        display: flex;
        width: 100%;
        text-align: left;
        margin: 0px;
        padding-left: 50px;
        left: 0;
      
    }

    .nav2 ul li a {
        
          font-size: 30px;
    }
    
}

@media (max-width:1024px){
    header, header ul, header ul li{
        width: 100%;
        
    }
    
    header.sticky {
        
        padding: 3px;
        
    }
}

@media (max-width: 1024px){
    
    .nav2 ul{
        display: block;
        position: absolute;
        right: 0;
        left: 0;
        display: flex;
        flex-direction: column;
        background-color: transparent;
        grid-row-gap: 0.1rem;
        text-align: center;
        box-shadow: 4px 4px 20px rgb(15 54 55 / 20%);
        margin-top: 0px;
    
    }
    
    .nav2 a {
            
        display: block;
        padding: 15px;
    }
    
    .nav2 a:hover {
        
        border-bottom: none;
        color: #eaeaea;
    }
    
    .kamenice {
        
        margin-top: 500px;
        margin-bottom: 0px;
    }
    
}

@media (max-width: 768px){
    
    .pozadi {
        
        width: 100%;
        height: 100%;
    }
}

@media (max-width: 500px){

    
 header  {
 
    margin: 0;
    padding: 0;
    float: none;
    display: flex;
    text-align: center;
  }
    
  header {
    float: none;
  }
    
    .logo {
        display: none;
    }
    
    .onMobile {
        display: none;
    }
    
    .uvod {
        
        padding-left: 25px;
    }

    .uvod h1{
        
        font-size: 35px;
        text-align: center;
    }
    
    .gallery h1 {
        
        text-align: center;
        padding-right: 20px;
        font-size: 25px;
    }
    
    .gallery img {
        
        text-align: center;
        padding: 0;
        padding-left: 55px;
    }
    
}

@media (max-width: 425px) {
    
     .gallery {
      
        padding: 0;
        padding-right: 55px;
    }

    .gallery h1{
        
        font-size: 30px;
        text-align: center;
    }
    
    
}

@media (max-width: 380px) {
    
    .uvod h1 {
        
        font-size: 35px;
        padding-right: 20px;
    }
    
    .gallery h1 {
        
        padding-left: 20px;
        font-size: 25px;
        text-align: center;
    }
    
    .gallery img {
        
        padding: 0;
        padding-right: 30px;
    }
}

@media (max-width: 325px){
    
    header .logo {
        
        font-size: 22px;
    }
    
    header .zpet {
        
        font-size: 22px;
    }
    
     .uvod h1{
        
        font-size: 25px;
        text-align: center;
    }
    
     .nav2 ul li a {
        
          font-size: 25px;
    }
    
     .kamenice {
        
        margin-top: 500px;
        margin-bottom: 0px;
    }
    
      .gallery h1 {
        
        padding-left: 20px;
        font-size: 20px;
        text-align: left;
    }
    
    .gallery img {
        
        
        padding: 0;
        padding-right: 65px;
    }
}


