body 
{ 
  font-family: 'Montserrat', sans-serif; 
  margin: 0; padding: 0; 
  background: #000000; 
}

img 
{ 
  display: block; 
  max-width: 100%; 
  height: auto; 
} 

header 
{ 
  display: flex; 
  justify-content: space-between; 
  align-items: flex-start; 
} 

.logo img 
{ 
  width: 100px; 
  height: auto; 
  margin-left: 40px; 
  margin-top: 40px; 
  flex: 0 0 auto; } 


.nav_bar a 
{ color: #ffffff; 
  font-size: 22px; 
  font-weight: normal; 
  position: relative; 
  text-align: center; 
  margin-left: 20px; 
  text-decoration: none; 
  white-space: nowrap;
} 

.nav_bar img 
{ background: #ffffff; width: 35px; vertical-align: -10px; 
}

.kontakt 
{ border: 2px solid white; 
border-radius: 50px; 
padding: 8px 20px; 
transition: 0.3s ease; 
} 

.kontakt:hover 
{ background-color: white; 
  color: black; 
} 

.nav_bar a::after 
{ content: ''; 
  position: absolute; 
  left: 0; bottom: -3px; 
  width: 0; height: 2px; 
  background-color: white; 
  transition: width 0.3s cubic-bezier(0.19, 1, 0.22, 1); 
} 

.nav_bar a:hover::after 
{ width: 100%; 
} 

.nav_bar a.kontakt::after 
{ content: none; 
} 

.trifecta img 
{ visibility: hidden; width: 20%; height: auto; 
} 

.intro 
{ text-align: center; color: white; margin-top: 200px; 
} 

.maya img 
{ width: 150px; height: auto; margin-top: 20px; 
} 

#nav_bar {
  display: flex; 
  justify-content: flex-end;
  align-items: center;
  gap: 25px;
  margin-top: 70px;
  margin-right: 45px;
}

.menu-toggle 
{ 
  display: none;  
  cursor: pointer; 
  margin-right: 10px;
  margin-top: 22px;
}

.menu-toggle img 
{ width: 35px; 
  height: auto; 
  filter: invert(1);
}

/*Iphone/small screens*/
@media (max-width: 869px) 
{ 

  .logo img 
  { width: 90px; 
    margin-left: 20px; 
    margin-top: 20px; 
  }
  .menu-toggle 
  { display: block; 
    position: absolute; 
    top: 15px;           
    right: 20px;        
    z-index: 1001;       
    cursor: pointer;
    transition: all 0.2s ease;
  } 

  .menu-toggle.hide {
    opacity: 0;
    transform: scale(0.8);
    pointer-events: none;
  }

  #nav_bar {
    flex-direction: column;
    align-items: flex-end;
    position: absolute;
    top: 30px;
    right: 20px;
    background-color: black;
    padding: 10px 5px 10px 0px;
    border-radius: 10px;
    gap: 15px;
    z-index: 1000;
    margin: 0;
    width: fit-content;
    transition: all 0.2s ease;
    opacity: 0;
    transform: translateY(-10px);
    pointer-events: none;
    display: flex;
  }

  #nav_bar a 
  { font-size: 15px; 
    font-weight: bold;
  }

  #nav_bar img 
  { 
    width: 25px; 
  }

  #nav_bar.show {
    display: flex;
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
  }

  .kontakt 
  { 
    border: 2px solid white;  
    border-radius: 30px; 
    padding: 4px 8px 4px 10px; 
  } 
  

}

.hide {
  display: none;
}
