html {
  scroll-behavior: smooth;
}

body {
     margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;   
    align-items: center;      
    font-family: 'Poppins', sans-serif; 
}

.navbar {
   background-color: #fff;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1),
              inset 0 0 20px rgba(255, 255, 255, 0.05);
  width: 80%;
  height: 60px;
  border-radius: 50px;
  display: flex;             
  align-items: center;  
  justify-content: space-between;
  padding: 0 20px;
  margin-top: 10px;    
  z-index: 1100;  
  position: fixed;
}

.text a {
  color: #000000;
  text-decoration: none;
  display: inline-block;          
  transition: transform 0.3s ease-in-out;  
  transform: translateY(0);        
}

.text a:hover {
  transform: translateY(-5px);     
}

.volaj{
    border-color: black;
   background: transparent;

    /* jemný tieň a vnútorný odlesk */
    
    height: 40px;
    margin-top: 8px;
    font-family: 'Poppins', sans-serif; 
    transition: all 0.4s ease-out; 
    cursor: pointer;
    border: 1px solid black;
    margin-bottom: 8px ;
    color: #000000;
}

.volaj:hover{
    background-color: black;
    color: #fff;
}

/* container burger */
/* Menší burger */
.burger {
  position: relative;
  width: 25px;
  height: 18px;
  background: transparent;
  cursor: pointer;
  display: inline-block;
  -webkit-tap-highlight-color: transparent;
  margin-right: 10px;
  margin-bottom: 3%;
}

.burger input {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  left: 0;
  top: 0;
  margin: 0;
  cursor: pointer;
}

/* Prúžky */
.burger span {
  display: block;
  position: absolute;
  height: 2.5px; /* tenšie čiary */
  width: 100%;
  background: black;
  border-radius: 9px;
  left: 0;
  transform: rotate(0deg);
  transition: transform .25s ease-in-out, top .25s ease-in-out, left .25s ease-in-out, width .25s ease-in-out, opacity .25s ease-in-out;
}

/* Pozície prúžkov */
.burger span:nth-of-type(1) {
  top: 0px;
  transform-origin: left center;
}

.burger span:nth-of-type(2) {
  top: 50%;
  transform: translateY(-50%);
  transform-origin: left center;
}

.burger span:nth-of-type(3) {
  top: 100%;
  transform: translateY(-100%);
  transform-origin: left center;
}

/* Stav keď je zaškrtnuté (X) */
.burger input:checked ~ span:nth-of-type(1) {
  transform: rotate(45deg);
  top: 0px;
  left: 3px;
}

.burger input:checked ~ span:nth-of-type(2) {
  width: 0%;
  opacity: 0;
}

.burger input:checked ~ span:nth-of-type(3) {
  transform: rotate(-45deg);
  top: 17px;
  left: 3px;
}

#nav-links {
  opacity: 0;
  overflow: hidden;
  transform: translateY(-20px);
  transition: all 0.4s ease;
  display: flex;
  flex-direction: column;
  position: absolute;
  top: 70px;
  left: 0;
  width: 100%;
  background-color: #fff;
  border-radius: 20px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1),
              inset 0 0 20px rgba(255, 255, 255, 0.05);
  padding: 0; 
  gap: 20px;
  text-align: center;
 pointer-events: none;
 
}

#nav-links.active {
  max-height: 500px; 
  opacity: 1;
  transform: translateY(0);
  padding: 20px 0;
  pointer-events: auto;
}

.logo img {
    width: 60px;
    margin-top: 10px;
}

.servisy-sekcia{
  width: 95%;
  gap: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 15px;
  margin-top: 60px;
}

.servisy-kontajner{
  gap: 10px;
  display: flex;
  flex-direction: column;
}

.servisy-card{
  background-color: #14100f;
  padding: 4rem 1.5rem 3.5rem 1.5rem;
  border-radius: 20px;
  cursor: pointer
}

section h2{
  font-size: 40px;
}

.servisy-ikona{
  display: inline-block;
  position: relative;
  margin-bottom: 2rem;
}

.servisy-ikona i{
  font-size: 2.5rem;
  position: relative;
  z-index: 1000;
  color: #fff;
}

.servisy-kruh{
  width: 3rem;
  height: 3rem;
  background-color: #b30404;
  border-radius: 50%;
  position: absolute;
  top: -1rem;
  right: -1rem;
  transition: transform .4s;
}

.servisy-nadpis{
  font-size: 20px;
  margin-bottom: 1rem;
  color: #fff;
}

#nadpis.show  {
  opacity: 0;
  animation: fadeIn 0.5s ease-out 0.4s forwards;
}

.servisy-text{
  color: #fff;
}

.servisy-card:hover .servisy-kruh{
  transform: translate(.25rem, -.25rem);
}

.servisy-card a{
  font-size: 20px;
  color: #fff;
  cursor: pointer;
  text-decoration: none;
  transform: translateY(0);
  transition: all 0.4s ease-out;
  display: inline-block;
}

#j.show{
  opacity: 1;
  transform: translateX(0);
  animation: slideFromLeft 0.8s ease-out forwards;
}

#t.show{
  opacity: 1;
  transform: translateX(0);
  animation: slideFromLeft 0.8s ease-out forwards;
}

#p.show{
  opacity: 1;
  transform: translateX(0);
  animation: slideFromLeft 0.8s ease-out forwards;
}

#s.show{
  opacity: 1;
  transform: translateX(0);
  animation: slideFromLeft 0.8s ease-out forwards;
}

#d.show{
  opacity: 1;
  transform: translateX(0);
  animation: slideFromRight 0.8s ease-out forwards;
}

#st.show{
  opacity: 1;
  transform: translateX(0);
  animation: slideFromRight 0.8s ease-out forwards;
}

#š.show{
  opacity: 1;
  transform: translateX(0);
  animation: slideFromRight 0.8s ease-out forwards;
}

#o.show{
  opacity: 1;
  transform: translateX(0);
  animation: slideFromRight 0.8s ease-out forwards;
}

.servisy-card a:hover{
  transform: translateY(-5px);
}

.servisy2-sekcia{
  width: 95%;
  gap: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 15px;
  margin-top: 10px;
}

.servisy2-kontajner{
  gap: 10px;
  display: flex;
  flex-direction: column;
}

.servisy2-card{
  background-color: #14100f;
  padding: 4rem 1.5rem 3.5rem 1.5rem;
  border-radius: 20px;
  cursor: pointer;
}

.servisy2-card a{
  font-size: 20px;
  color: #fff;
  cursor: pointer;
  text-decoration: none;
  transform: translateY(0);
  transition: all 0.4s ease-out;
  display: inline-block;
}

.servisy2-card a:hover{
  transform: translateY(-5px);
}

section h2{
  font-size: 40px;
}

.servisy2-ikona{
  display: inline-block;
  position: relative;
  margin-bottom: 2rem;
}

.servisy2-ikona i{
  font-size: 2.5rem;
  position: relative;
  z-index: 1000;
  color: #fff;
}

.servisy2-kruh{
  width: 3rem;
  height: 3rem;
  background-color: #b30404;
  border-radius: 50%;
  position: absolute;
  top: -1rem;
  right: -1rem;
  transition: transform .4s;
}

.servisy2-nadpis{
  font-size: 20px;
  margin-bottom: 1rem;
  color: #fff;
}

.servisy2-text{
  color: #fff;
}

.servisy2-card:hover .servisy2-kruh{
  transform: translate(.25rem, -.25rem);
}

.servisy3-sekcia{
  width: 95%;
  gap: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 15px;
  margin-top: 10px;
}

.servisy3-kontajner{
  gap: 10px;
  display: flex;
  flex-direction: column;
}

.servisy3-card{
  background-color: #14100f;
  padding: 4rem 1.5rem 3.5rem 1.5rem;
  border-radius: 20px;
  cursor: pointer;
}

.servisy3-card a{
  font-size: 20px;
  color: #fff;
  cursor: pointer;
  text-decoration: none;
  transform: translateY(0);
  transition: all 0.4s ease-out;
  display: inline-block;
}



.servisy3-card a:hover{
  transform: translateY(-5px);
}

section h2{
  font-size: 40px;
}

.servisy3-ikona{
  display: inline-block;
  position: relative;
  margin-bottom: 2rem;
}

.servisy3-ikona i{
  font-size: 2.5rem;
  position: relative;
  z-index: 1000;
  color: #fff;
}

.servisy3-kruh{
  width: 3rem;
  height: 3rem;
  background-color: #b30404;
  border-radius: 50%;
  position: absolute;
  top: -1rem;
  right: -1rem;
  transition: transform .4s;
}

.servisy3-nadpis{
  font-size: 20px;
  margin-bottom: 1rem;
  color: #fff;
}

.servisy3-text{
  color: #fff;
}

.servisy3-card:hover .servisy3-kruh{
  transform: translate(.25rem, -.25rem);
}

#j, #d, #t, #st, #p, #š, #s, #o, #nadpis, .kontakt-nadpis, .container, .ikony,
.linky,
.rychle-linky,
.kopirajt,
.cislo-info,
.email-info,
.adresa-info{
  opacity: 0;
  transform: translateX(0);
  transition: all 0.8s ease-out;
}

.kontakt-nadpis h1{
  color: #000000;
  font-size: 45px;
  text-align: center;
}

.kontakt-nadpis.show  {
  opacity: 0;
  animation: fadeIn 0.5s ease-out 0.4s forwards;
}

  .container {
    background: none;
    padding: 20px 30px;
    border-radius: 10px;
    width: 80%;
    max-width: 400px;
    margin-top: -20px;
  }

  .container.show {
  opacity: 0;
  animation: slideFromDown 0.7s ease-out 0.2s forwards;
}

.container {
  opacity: 0;
  transform: translateX(0);
  transition: all 0.8s ease-out;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

  .kontakt-text {
    text-align: center;
    color: #333;
  }

  label {
    display: block;
    margin-top: 10px;
    color: #555;
    font-weight: bold;
    margin-left: -10px;
  }

  input, textarea {
    width: 100%;
    padding: 8px;
    margin-top: 5px;
    border: 1px solid #14100f91;
    border-radius: 10px;
    font-size: 14px;
    margin-left: -10px;
  }

  .kontakt-btn{
    width: 100%;
    margin-top: 15px;
    padding: 10px;
    background: none;
    color: #000000;
    border: 1px solid #000;
    font-size: 18px;
    cursor: pointer;
    transition: all 0.4s ease-out;
    font-family: 'Poppins', sans-serif;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 45px;
  }
  

  .kontakt-btn:hover {
    background-color: #000;
    color: #fff;
    cursor: pointer;
  }

   footer{
  width: 100%;
  height: 500px;
  background-color: #14100f;
  margin-top: 60px;
  display: flex;
  flex-direction: column;
}

.ikony{
  width: 100%;
  height: 20%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  text-decoration: none !important;
}

.ikony a {
  color: #ffffff;
  text-decoration: none;
  font-size: 22px;
  outline: none;
  border: none;
  font-weight: 550;
   transition: transform 0.3s ease-in-out;  
  transform: translateY(0);
}

.ikony a:hover{
  transform: translateY(-5px);
}

.ikony.show  {
  opacity: 0;
  animation: slideFromLeft 0.5s ease-out 0.4s forwards;
}

.kopirajt{
  width: 100%;
  height: 20%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffffa8;
  font-size: 15px;
}

.kopirajt.show  {
  opacity: 0;
  animation: fadeIn 0.4s ease-out 0.4s forwards;
}

.linky{
  width: 100%;
  height: 35%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}

.linky h1{
  font-size: 16px;
  color: #fff;
}

.linky.show  {
  opacity: 0;
  animation: slideFromRight 0.5s ease-out 0.4s forwards;
}

.rychle-linky{
  display: flex;
  flex-direction: column;
  width: 28%;
  align-items: center;
}

.rychle-linky.show{
  opacity: 0;
  animation: slideFromLeft 0.5s ease-out 0.4s forwards;
}

.rychle-linky a{
  font-size: 14px;
  color: #e0e0e0d7;
  text-decoration: none;
  transition: all 0.3s ease;
}

.rychle-linky a:hover{
  color: #ffffff;
}

.info{
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
}

.cislo-info{
  display: flex;
  flex-direction: row;
  width: 100%;
  align-items: center;
  justify-content: center;
  gap: 5px;
  height: 30px;
}

.cislo-info.show{
   opacity: 0;
  animation: slideFromLeft 0.5s ease-out 0.4s forwards;
}

.cislo-ikona i{
  font-size: 22px;
  color: #fff;
}

.cislo-text{
  color: #fff;
}

.email-info{
  display: flex;
  flex-direction: row;
  width: 100%;
  align-items: center;
  justify-content: center;
  gap: 5px;
   height: 30px;
}

.email-info.show{
   opacity: 0;
  animation: slideFromRight 0.5s ease-out 0.4s forwards;
}

.email-ikona i{
  font-size: 22px;
  color: #fff;
}

.email-text{
  color: #fff;
}

.adresa-info{
  display: flex;
  flex-direction: row;
  width: 100%;
  align-items: center;
  justify-content: center;
  gap: 5px;
   height: 30px;
}

.adresa-info.show{
   opacity: 0;
  animation: slideFromLeft 0.5s ease-out 0.4s forwards;
}

.adresa-ikona i{
  font-size: 22px;
  color: #fff;
}

.adresa-text{
  color: #fff;
}

@keyframes slideFromLeft {
  from {
    opacity: 0;
    transform: translateX(-50px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slideFromRight {
  from {
    opacity: 0;
    transform: translateX(50px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slideFromUp {
  from {
    opacity: 0;
    transform: translateY(-50px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes slideFromDown {
  from {
    opacity: 0;
    transform: translateY(50px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: scale(0.95);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

@media (min-width: 1440px) {
   
     #nav-links {
      display: block;
      opacity: 1;
      background: none;
      border-radius: 20px;
      backdrop-filter: none;
      -webkit-backdrop-filter: none;
      border: none;
      box-shadow: none;
      top: 10%;
      text-align: right;
      pointer-events: auto;
      position: relative;
      width: 80%;
      height: 100%;
    }

    #nav-links a{
      margin-top: 2.5%;
      font-size: 18px;
    }

   .navbar{
    width: 75%;
   }

   .logo {
    margin-left: 20px;
   }
   
    .text a{
        margin-right: 20px;
        margin-top: 5%;
    }

    .text button{
        margin-right: 30px;
    }

    .burger{
        display: none;
    }

    .volaj{
        display: none;
    }

    .kontakt-nadpis h1{
      font-size: 60px;
    }

    footer{
    flex-direction: row;
    align-items: center;
    height: 200px;
   }

   .linky.show  {
  opacity: 0;
  animation: slideFromDown 0.5s ease-out 0.4s forwards;
}
.linky{
  margin-top: -60px;
  gap: 0;
}

  .servisy-kontajner{
    flex-direction: row;
  }

  .servisy2-kontajner{
    flex-direction: row;
  }

  .servisy3-kontajner{
    flex-direction: row;
  }

  .servisy-sekcia-nadpis{
    font-size: 60px;
  }

  #d.show {
  opacity: 0;
  animation: slideFromUp 0.7s ease-out 0.2s forwards;
}

  #t.show {
  opacity: 0;
  animation: slideFromRight 0.7s ease-out 0.2s forwards;
}

  #st.show {
  opacity: 0;
  animation: slideFromLeft 0.7s ease-out 0.2s forwards;
}

  #p.show {
  opacity: 0;
  animation: fadeIn 0.7s ease-out 0.2s forwards;
}
}

@media (min-width: 768px) and (max-width: 1024px){
  

  .burger{
    margin-bottom: 2%;
  }


}