html {
    font-size: 25px;
}




body {
     /* Ensures the image covers the entire screen */
     background-image: url("/img/pozadi.webp");
     background-repeat: no-repeat; /* Avoid repeating the image */
     background-position: center; /* Center the image on the screen */
     background-size: cover; /* Ensure the image covers the screen */
     background-attachment: fixed;
    background-color: #838383;/* Centers the image */
    font-family: Arial, Helvetica, sans-serif;
    color: #FFF;
    margin: 0;
}
a {
    color: #dddddd;
    text-decoration: underline;
}
.sidenav_hidden {
    opacity: 0;
    transform: translateX(200px);
    transition: opacity 0.5s ease, transform 0.5s ease;
}

.bold {
    font-weight: bold;
}

.hidden {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.5s ease, transform 0.5s ease;
}

.visible {
    opacity: 1;
    transform: translateY(0);
}

/* The sidebar menu */
.sidenav {
    
    margin-left: 10px;
    height: auto; /* Adjust height to fit content */
    width: 10rem; /* Set the width of the sidebar */
    position: fixed; /* Fixed Sidebar (stay in place on scroll) */
    z-index: 1; /* Stay on top */
    left: 0; /* Align to the left edge */
    top: 50%; /* Move the sidenav's top edge to the middle of the viewport */
    transform: translateY(-50%); /* Shift it up by half its height to center */
    display: flex;
    flex-direction: column; /* Stack items vertically */
    align-items: stretch; /* Make links full width */
    padding: 0;
}

.sidenav a:hover {
    color: #272727;
    background-color: #dddddd;
}

/* The navigation menu links */
.sidenav a {
    
    margin: 0.4rem 0;
    padding: 0.4rem 0.5rem 0.4rem 1rem;
    border-radius: 1rem;
    text-decoration: none;
    transition: background-color 0.3s ease, color 0.3s ease;
    font-size: 1.5rem;
    color: #dddddd;
    background-color: #272727;
    display: block;
}
.sidenav a.active {
    color: #272727;
    background-color: #dddddd;
}


/* Style page content */
.container {
    margin-left: 11.5rem; /* Same as the width of the sidebar */
}

.name {
    float: left;
    margin: 1vw 0 0 1vw;
    width: 20vw;
    padding: 0.5rem 1rem 0.5rem  1rem;
    overflow: hidden;
    border-radius: 1rem;
    background-color: #272727;
    color: #dddddd;

}
.responsive-logo {
        width: 100%;         /* Obrázek zabere 100% šířky kontejneru */
        height: auto;        /* Výška se automaticky přizpůsobí šířce pro zachování poměru stran */
        margin: 0 auto;
        display: block;
      
}

.background-rect {
    
    margin-top: 1rem;
    width: fit-content;
    padding: 0px 1rem 0px 1rem;
    overflow: hidden;
    border-radius: 1rem;
    background-color: #272727;
    color: #dddddd;

}
.form-rect {
    
    margin-top: 1rem;
    width: fit-content;
    padding: 1rem;
    overflow: hidden;
    border-radius: 1rem;
    background-color: #272727;
    color: #dddddd;

}

.form-rect input {
    color: #dddddd;
    font-size: 0.7rem;
    padding: 0.5rem;
    width: 50vw;
    background-color: #464646;
    border-radius: 0.5rem;
    border: 0px;
}
.form-rect textarea {
    font-family: Arial, Helvetica, sans-serif;
    color: #dddddd;
    font-size: 0.7rem;
    padding: 0.5rem;
    width: 50vw;
    background-color: #464646;
    border-radius: 0.5rem;
    border: 0px;
}
.form-rect  button {
    font-size: 0.7rem;
    font-weight: bolder;
    padding: 0.5rem;
    width: fit-content;
    background-color: rgb(0, 174, 255);
    color: #dddddd;
    border-radius: 0.5rem;
    border: 0px;
}
.form-rect  button:hover {

    background-color: rgb(2, 99, 145);

}

.tabulka-max3sloupce-hodneradku {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* Maximálně 3 sloupce stejné šířky */
    gap: 10px; /* Mezery mezi buňkami */
    width: 100%; /* Šířka kontejneru */
}
.tabulka-max3sloupce-hodneradku > .background-rect {
    width: auto;
    text-align: center;
    padding: 1rem;
}



/* Obrázky uvnitř buněk */
.tabulka-max3sloupce-hodneradku img {
    width: 98%;
    height: auto;
    margin: 1%;
    border-radius: 0.9rem;
}
.tabulka-max2sloupce-hodneradku {
    display: grid;
    grid-template-columns: repeat(2, 1fr); /* Maximálně 3 sloupce stejné šířky */
    gap: 10px; /* Mezery mezi buňkami */
    width: 100%; /* Šířka kontejneru */
}
.tabulka-max2sloupce-hodneradku > .background-rect {
    width: auto;
    text-align: center;
    padding: 1rem;
}



/* Obrázky uvnitř buněk */
.tabulka-max2sloupce-hodneradku img {
    width: 98%;
    height: auto;
    margin: 1%;
    border-radius: 0.9rem;
}


.center {
    display: grid; /* Enables Grid layout */
    place-items: center; 
}
.dorady {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* 3 equal columns */
    gap: 1rem;
    margin-left: 0.2rem;
    margin-right: 0.2rem;
}


.modra {
    color: rgb(0, 174, 255);
}
.modrepozadi {
    background-color: rgba(0, 174, 255, 0.26);
    padding: 0.5rem;
    border-radius: 0.2rem;
}
.ruzova {
    color: rgb(255, 0, 119);
}
.ruzovepozadi {
    background-color: rgba(255, 0, 119, 0.26);
    padding: 0.5rem;
    border-radius: 0.2rem;
}
.zelena {
    color: rgb(0, 255, 76);
}
.zelenepozadi {
    background-color: rgba(0, 255, 76, 0.26);
    padding: 0.5rem;
    border-radius: 0.2rem;
}

.container h2 {
    font-size: 2rem;
}
.container h1 {
    font-size: 3rem;
}
section {
    height: fit-content;
    padding-bottom: 3rem;
    margin: 0 0.5rem 0 0.5rem;
}

.mobile-menu {
    display: none;
}

header {
    overflow: hidden;
  position: relative;
}



/* The Overlay (background) */
.overlay {
    /* Height & width depends on how you want to reveal the overlay (see JS below) */   
    height: 100%;
    width: 0;
    position: fixed; /* Stay in place */
    z-index: 1; /* Sit on top */
    left: 0;
    top: 0;
    background-color: rgb(0,0,0); /* Black fallback color */
    background-color: rgba(0,0,0, 0.9); /* Black w/opacity */
    overflow-x: hidden; /* Disable horizontal scroll */
    transition: 0.5s; /* 0.5 second transition effect to slide in or slide down the overlay (height or width, depending on reveal) */
  }
  
  /* Position the content inside the overlay */
  .overlay-content {
    position: relative;
    top: 25%; /* 25% from the top */
    width: 100%; /* 100% width */
    text-align: center; /* Centered text/links */
    margin-top: 30px; /* 30px top margin to avoid conflict with the close button on smaller screens */
  }
  
  /* The navigation links inside the overlay */
  .overlay a {
    padding: 8px;
    text-decoration: none;
    font-size: 36px;
    color: #818181;
    display: block; /* Display block instead of inline */
    transition: 0.3s; /* Transition effects on hover (color) */
  }
  
  /* When you mouse over the navigation links, change their color */
  .overlay a:hover, .overlay a:focus {
    color: #f1f1f1;
  }
  
  /* Position the close button (top right corner) */
  .overlay .closebtn {
    position: absolute;
    top: 20px;
    right: 45px;
    font-size: 60px;
  }


  footer {
    border-radius: 1rem 1rem 0rem 0rem; 
    background-color: #272727;
    font-size: 0.8rem;
    color: #dddddd;
    padding: 1rem 0 1rem 0;
    text-align: center;
    min-height: 10vh;

  }
  footer a {
    color: #dddddd;
    text-decoration: underline;
    padding: 0.1rem;
    transition: background-color 0.3s ease, color 0.3s ease;
    border-radius: 0.1rem; 
    text-decoration: underline;
  }
  footer a:hover {
    background-color: #dddddd;
    color: #272727;
    padding: 0.1rem;
    border-radius: 0.1rem; 
    text-decoration: underline;
  }
  
  /* When the height of the screen is less than 450 pixels, change the font-size of the links and position the close button again, so they don't overlap */
  @media screen and (max-height: 450px) {
    .overlay a {font-size: 20px}
    .overlay .closebtn {
      font-size: 40px;
      top: 15px;
      right: 35px;
    }
  }

  @media (max-width: 768px) {
    .hidden {
        display: block;
    }
}


@media (max-width: 925px) {
    
    section {
        height: fit-content;
        
    }
    .mobile-menu {
        display: inline;
        float: right;
        margin: 1vw 0 0 1vw;
        width: fit-content;
        padding: 1rem 1rem 1rem 1rem;
        overflow: hidden;
        border-radius: 1rem;
        background-color: #272727;
        color: #dddddd;
    }
    .sidenav {
        display: none;
    }
    .container {
        margin: 0 auto;
    }
}
@media (max-width: 1110px) {
    html {
        font-size: 16px;
    }
    section {
        height: fit-content;
        margin-left: 0.1wv;
        margin-right: 0.1wv;
        
    }
    
    
    
}
@media (max-width: 700px) {
    .dorady {
        display: grid;
        grid-template-columns: 1fr; /* Jeden sloupec */
        gap: 0.1px;
        margin: 1rem auto auto auto;
    }
    .tabulka-max3sloupce-hodneradku {
        display: grid;
        grid-template-columns: 1fr; /* Tři sloupce stejné šířky */
        gap: 1rem;
        width: 100%;
    }
    .background-rect {
    
        
        margin-left: 0.2rem;
        margin-right: 0.2rem;
        width: auto;
        
        padding: 0px 0.5rem 0px 0.5rem;
        overflow: hidden;
        border-radius: 1rem;
        background-color: #272727;
        color: #dddddd;
    
    }

}
@media (max-width: 518px) {
    html {
        font-size: 12px;
    }
}