
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600;700&display=swap");

:root {
  --blue: #1d04ff;
  --red: #fa3b3b;
}

* {
  font-family: "Poppins", sans-serif;
  text-decoration: none;
  outline: none;
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

*::selection {
  background: var(--blue);
  color: #fff;
}

html {
  font-size: 62.5%;
  overflow-x: hidden;
}

.heading {
  font-size: 4rem;
  color: black;
  text-align: center;
  padding: 0 1rem;
  padding-top: 6rem;
  letter-spacing: 0.2rem;
  font-weight: 500;
}

.title {
  padding: 0 1rem;
  font-size: 2rem;
  text-align: center;
  font-weight: 400;
  color: #aaa;
}


.home {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
  color: white;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}

.background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  transition: opacity 1.5s ease-in-out; /* Plynulý přechod */
}

.background.hidden {
  opacity: 0; /* Skrytí vrstvy */
}

.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.8));
  z-index: 1; /* Gradient vrstva nad obrázky */
}

.home .content {
  position: relative;
  z-index: 2; /* Ujistí, že obsah zůstane nad pozadím */
  padding-top: 10rem;
  padding-bottom: 0.5rem;
  text-align: center;
 
}

.home .content h1 {
  font-size: 35px;
  color: rgb(247, 242, 242);
  padding: 0 1rem;
  text-shadow: 0 0.3rem 0.5rem rgba(0, 0, 0, 0.3);
 
}

.home .content p {
  font-size: 17px;
  color: rgb(247, 242, 242);
  padding: 0px 10px;
  text-shadow: 0 0.3rem 0.5rem rgba(0, 0, 0, 0.3);
  margin-top: 10px;
 
}


.home .button{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 30px;
  margin-top: 15px;
}

.home .button button {
  text-align: center;
   
    color:white;
    font-size: 18px;
    padding: 10px 5px;
    width: 280px;
    border-radius: 10px;
    cursor: pointer;
    font-weight: bold;
    box-shadow: 2px 3px 2px rgb(161, 160, 160);
    margin: 10px;
    margin-top: 15px;
}

.home  button:hover {
  transition: 1s;
  background-color: blue;
  box-shadow: none;
}

.home h4 {
  font-size: 15px;
  color: rgb(242, 5, 5);
  text-align: center;
  margin-top: 15px;
 
  text-decoration: underline;
  font-style: italic;
  padding-left: 10px;
  padding-right: 10px;
}

.home h4:hover{
  transition: 1s;
  color: blue;
}

.home .box-container {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  animation: fromTop 1s linear;
  margin-bottom: 15px;
  margin-top: 15px;
}

.home .box-container .box {
  height: 26rem;
  width: 27rem;
  background: #fff;
  text-align: center;
  border-radius: 1rem;
  box-shadow: 0 0.3rem 0.5rem rgba(0, 0, 0, 0.5);
  margin: 1.7rem;
  cursor: pointer;
}

.home .box-container .box i {
  height: 6rem;
  width: 6rem;
  line-height: 6rem;
  text-align: center;
  border-radius: 50%;
  color: #fff;
  background: var(--red);
  font-size: 3rem;
  margin: 2rem 0;
  transition: 0.2s;
  animation: fromTop 1s linear;
}

.home .box-container .box h3 {
  font-size: 2rem;
  color: var(--blue);
  transition: 0.2s;
  animation: fromTop 1s linear;
  
}

.home .box-container .box p {
  font-size: 1.3rem;
  padding: 0.7rem 1rem;
  color: #666;
  animation: fromTop 1s linear;
  margin-bottom: 5px;
  
}
.home .box-container .box button {
  font-size: 1.3rem;
  padding: 7px;
  color: #666;
  border: 1px blue solid;
  border-radius: 10px;
  box-shadow: 3px 7px #888888;;
  animation: fromTop 1s linear;
  cursor: pointer;
  background-color: white;
  width: 170px;
}


.home .box-container .box:hover i {
  transition: 1s;
    background: var(--blue);
    transform: scale(1.2);
}

.home .box-container .box:hover h3 {
  color: var(--red);
}

.home .box-container .box button:hover {
  transition: 1s;
  background: var(--blue);
  
  color: white;
  box-shadow: none;
}

.home::before {
  content: "";
  position: absolute;
  bottom: -25rem;
  left: 50%;
  transform: translateX(-150%);
  border-top: 70vh solid #fff;
  width: 120%;
  border-radius: 50%;
  z-index: -1;
}

.about .row {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 90%;
  margin: 0 auto;
  margin-bottom: 29px;
}
.about h1 {
  font-weight: bold;
  padding-top: 0;
  font-size: 35px;
}

.about .mezera {
  height: 50px;
}

.about .image {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 45px;
}

.about .image .video1{
  display: flex;
  flex-direction: column;
  
}

.about .image .video2{
  display: flex;
  flex-direction: column;
 
}

.about .image h5 {
  font-size: 18px;
  margin-bottom: 15px;
}

.about .image iframe {
  border-radius: 15px;
}

.about .row .content {
  padding-left: 0;
}
.about h3 {
  font-size: 17px;
  color: rgba(0, 0, 0, 0.455);
  text-align: center;
 padding-left: 10px;
 padding-right: 10px;
 margin-bottom: 25px;
}

.about button {
  text-align: center;
    background-color: red;
    color:white;
    font-size: 18px;
    padding: 10px 5px;
    width: 280px;
    border-radius: 5rem;
    cursor: pointer;
    font-weight: bold;
    box-shadow: 2px 3px 2px rgb(161, 160, 160);
    display: block;
    margin: 20px auto;
}

.about button:hover {
  transition: 1s;
  background-color: blue;
  box-shadow: none;
}

.about h4 {
  font-size: 15px;
  color: rgb(242, 5, 5);
  text-align: center;
  margin-bottom: 20px;
  text-decoration: underline;
  font-style: italic;
  padding-left: 10px;
  padding-right: 10px;
}

.about h4:hover{
  transition: 1s;
  color: blue;
}

.about .title span {
  font-size: 2.5rem;
}
.about .row .content h3 {
  font-size: 3rem;
  color: rgb(0, 0, 0);
  text-align: center;
}

.about .row .content p {
 
  font-size: 15px;
  color: black
  padding 1rem 0;
  
  word-wrap: break-word;
  text-align: center;
}

.about .row .content .textp{
  font-weight: bold;
  color: black;
}

.about .row .content {
  text-align: center;
  
}


.about .row .content button:hover {
  transition: transform color 1s;
  transform: scale(1.05);
  background-color: red;

}


/*recenze*/




.footer {
  text-align: center;

}

.footer .credit {
  font-size: 2rem;
  border-top: 0.1rem solid #999;
  margin: 0 auto;
  margin-bottom: 2rem;
  color: #666;
  width: 90%;
  padding-top: 15px;
}

.footer .credit span {
  color: var(--blue);
}

::-webkit-scrollbar {
  width: 0.7rem;
}

::-webkit-scrollbar-track {
  background: #f9f9f9;
}

::-webkit-scrollbar-thumb {
  background: var(--red);
  border-radius: 1rem;
}



/* media queries  */
@media (max-width: 1600px){
  
  .home .content {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-flow: column;
    padding-top: 12rem;
    padding-bottom: 2rem;
    text-align: center;
    
  }

  .home .content p {
    padding: 1.5rem 2rem;
  }
}


@media (max-width: 960px) {
  .home .button {
    margin-bottom: 0;
  }
  .home .button button{
    margin: 10px;
  }
   .home .box-container {
    margin-top: 0;
   }

  
  .about .mezera {
    height: 25px;
  }

}


@media (max-width: 768px) {
  html {
    font-size: 55%;
  }


  .home::before {
    display: none;
  }

  .home .content h1 {
    font-size: 30px;;
  }
  .home .content p {
    font-size: 15px;
  }

  .home button {
    width: 240px;
    
  }
 
  .home .box-container .box:hover i {
    transition: 1s;
      background: var(--blue);
      transform: scale(1.0);
  }
  
  .home .box-container .box:hover h3 {
    color: var(--red);
  }

 
  .home .box-container .box h3 {
    font-size: 15px;
  }
 
  .about h3 {
    margin-bottom: 3px;
  }

 
  .about .row .content {
   
    padding-top: 1.5rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    
  }
  
  .about .row button {
    
    display: block;
    margin: 0 auto;
     
  }

  }

  @media (max-width: 670px) {
   

    .about .row .content p {
      text-align: center; /* nebo 'start', což je ekvivalentní */
      padding: 0; /* upravte podle potřeby */
      /* Další možné úpravy */
      font-size: 13px; /* menší velikost textu */
      word-wrap: normal; /* zrušení zalomení slov */
      word-spacing: normal; /* normalizace mezislovního prostoru */
      letter-spacing: normal; /* normalizace mezera mezi písmeny */
      
    }
    

  }

  @media (max-width: 440px){
    
    .home .button button {
      width: 240px;
      font-size: 15px;
    }

  }

  @media (max-width: 460px){
    
    .about .image {
      gap: 25px;
      display: flex;
      justify-content: center;
      align-items: center;
      flex-wrap: wrap;
    }

    .about button {
      width: 240px;
      font-size: 15px;
    }

   .about .image .video1{   
      display: flex;
      justify-content: center;
      align-items: center;
    }
    .about .image .video2{   
      display: flex;
      justify-content: center;
      align-items: center;
    }
    .about .image .video1 iframe {
      width: 240px;
      height: 160px;
    }
    .about .image .video2 iframe {
      width: 240px;
      height: 160px;
    }

    .about h4{
      margin-bottom: 5px;
      font-size: 12px;
    }
  
    .about .image h5 {
      font-size: 15px;
    }
    .home .content h1{
      font-size: 25px;
      padding-left: 5px;
      padding-right: 5px;
    }

    .about h1 {
      
      font-size: 25px;
    }
    .about h3 {
      
      font-size: 15px;
    }


   
  }
    
    #moreText {
      display: none;
      opacity: 0;
      max-height: 0;
      overflow: hidden;
      transition: max-height 1s ease-out, opacity 0.8s ease-out;
    }
    
    #moreText.show {
      display: inline;
      max-height: 500px; /* Adjust this value based on the amount of text */
      opacity: 1;
    }

    @keyframes fromTop{
      0%{
        opacity: 0;
        transform: translateY(-50px);
    }
    
      100%{
        opacity: 1;
        transform: translateY(0px);
    }
    }

    @keyframes fromLeft{
      0%{
        opacity: 0;
        transform: translateX(-50px);
    }
    
      100%{
        opacity: 1;
        transform: translateX(0px);
    }
    }

    @media (max-width: 600px){
      #backToTop { 
        display: none;
        opacity: 0;
      }
    }

    @media (min-width: 600px){

      #backToTop {
        display: none; /* Skryté ve výchozím stavu */
        position: fixed;
        bottom: 20px;
        right: 20px;
        z-index: 199;
        border: none;
        outline: none;
        background-color: blue;
        color: white;
        cursor: pointer;
        padding: 15px 20px;
        border-radius: 50%;
        font-size: 20px;   
      }

      #backToTop:hover {
        background-color: #555;
      }}
