:root{
  --text: #b8b8b8;
  --textHeader: #0B90CE;
  --link: #C2C8CC;
  --linkHover: #a9adb0;
  --linkAccent: #e2e9ed;
  --bg: #1B1D21;
  --mainBox: #212229;
  --gridItem: rgba(50, 53, 62, 0.5);
  --headerFooter: #22252c;
}

body {
  margin: 0;
  padding: 0;
  background-color: var(--bg);
  color: var(--text);
}

#navbar {
  background-color: var(--headerFooter);
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  display: flex;
  align-items: center;
}

.navbar-title {
  margin-left: 20px;
  flex-grow: 1;
  text-align: left;
}

.navbar-title h1 {
  margin-left: 0px;
}

h1 {
  margin: 0;
  color: var(--textHeader);
}

nav {
  flex-grow: 1;
  text-align: right;
  margin-right: 20px;
}

#nav-menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  justify-content: flex-end;
}

#nav-menu li{
  margin-right: 10px;
}

#nav-menu li:not(:last-child)::after {
  content: "|"; /* Der Trennstrich (|) als Inhalt des Pseudo-Elements */
  margin-left: 10px; /* Abstand zwischen dem Trennstrich und dem nächsten Listenelement */
  color: var(--textHeader); /* Farbe des Trennstrichs */
}

li {
  margin-bottom: 5px;
}

a {
  text-decoration: none;
  color: var(--link);
}

a:hover {
  color: var(--linkHover);
}

a#back-to-top{
  color: var(--textHeader);
}

.profilePicture {
  border-radius: 10%; 
  border: 2px solid #000000;
}

#content {
  margin-top: 60px;
}

/* Überschriften für Kategorien wie Professional */
.full-width-background {
  color: var(--textHeader);
  background-color: var(--gridItem);
  width: calc(80% + 40px);
  height: 50px;
  /* padding: 20px 0; */ 
  display: flex;
  justify-content: center; /* Horizontally center content */
  align-items: center; /* Vertically center content */
  margin: 0 auto; /* Center the container horizontally on the page */
  margin-bottom: -20px;
}
.full-width-background.down{
  margin-top: -20px;
}

/* Media query for small screens */
@media (max-width: 851px) {
  /* .navbar-title {
    margin-left: 0;
    flex-grow: 1;
    text-align: left;
  } */

  h1 {
    text-align: center;
  }

  .navbar-title h1 {
    margin-left: 20px;
    text-align: left;
  }

  nav {
    display: none; /* Hide the navigation links */
  }

  ul {
    margin-top: 20px; /* Add some spacing between the title and links */
  }

  .navbar-icon {
    display: block; /* Show the burger menu icon */
    cursor: pointer;
    padding: 10px;
    text-align: center;
    border: none;
    background: transparent;
  }

  .navbar-icon .bar {
    display: block;
    width: 25px;
    height: 3px;
    background-color: var(--textHeader);
    margin: 5px auto;
    transition: background-color 0.3s ease;
  }

  /* Styles for the burger menu icon when clicked */
  #navbar-toggle.navbar-open .bar:nth-child(1) {
    transform: rotate(45deg) translate(-2px, 4px);
  }

  #navbar-toggle.navbar-open .bar:nth-child(2) {
    opacity: 0;
  }

  #navbar-toggle.navbar-open .bar:nth-child(3) {
    transform: rotate(-45deg) translate(-2px, -4px);
  }

  /* Additional styles for the menu */
  #nav-menu {
    display: none;
    background-color: var(--headerFooter);
    padding: 10px;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    box-sizing: border-box;
  }

  #nav-menu li:not(:last-child)::after {
    content: ""; /* Der Trennstrich (|) als Inhalt des Pseudo-Elements */
    margin-left: 0px; /* Abstand zwischen dem Trennstrich und dem nächsten Listenelement */
    color: #333; /* Farbe des Trennstrichs */
  }

  #nav-menu.show {
    display: block;
  }

  #nav-menu ul {
    display: block;
    padding: 0;
  }

  #nav-menu li {
    margin-right: 0;
    text-align: center;
    padding: 10px 0;
    border-bottom: 1px solid #ccc;
  }
}

/* Media query for wide screens */
@media (min-width: 850px) {
  nav {
    display: flex; /* Show the navigation links */
  }

  .navbar-icon {
    display: none; /* Hide the burger menu icon on wide screens */
  }

  #nav-menu {
    display: block; /* Show the navigation links on wide screens */
    position: static;
    background-color: transparent;
    padding: 0;
    width: auto;
  }

  #nav-menu ul {
    display: flex;
  }

  #nav-menu li {
    margin-right: 10px;
    border-bottom: none;
  }
}


/* Content block styles */
.content-block {
  margin: 20px auto;
  width: 80%;
  min-height: 80vh;
  background-color: var(--mainBox);
  border: 1px solid #000000;
  padding: 20px;
  display: grid;
  grid-template-columns: repeat(2, 1fr); /* Two columns with equal width */
  grid-gap: 10px; /* Gap between grid items */
}

.content-block.smaller-height{
  min-height: 30vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.content-block.smaller-height h1 {
  margin-bottom: 20px;
}

.content-block.smaller-height .image-and-text {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.content-block.smaller-height .picture {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin-bottom: 10px;
}

.content-block.smaller-height .picture img {
  max-height: 200px; 
  max-width: 100%;
  width: auto; 
}

.smaller-images-container {
  display: flex; /* Display the images in a row */
  justify-content: center; /* Center the images horizontally */
  align-items: center; /* Center the images vertically */
  margin-top: 4px; /* Adjust the margin as needed */
}

.smallerImage {
  width: 30px;
  height: 30px;
  margin: 0 2px; /* Adjust the margin between small images as needed */
}

.content-block.smaller-height .description {
  /* flex: 0 0 auto;
  margin-top: 10px; */
  font-size: larger;
}

@media (max-width: 851px) {
  .content-block {
    grid-template-columns: 1fr; /* Single column for small screens */
  }

  .content-block {
    width: 90%;
  }

  .full-width-background{
    width: calc(90% + 40px);
  }

  /* .smallerImage {
    width: 20px;
    height: 20px;
  } */
}

@media (min-width: 850px) {
  .content-block.smaller-height {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
  }

  .content-block.smaller-height .image-and-text {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    width: 100%;
  }

  .content-block.smaller-height .picture {
    margin-right: 20px;
    flex-shrink: 0;
  }
}



.grid-item {
  border: 1px solid #000000; /* Border styles */
  background-color: var(--gridItem); /* Background color */
  padding: 10px; /* Padding within grid items */
}

.grid-item h2 {
  font-size: 24px;
  color: var(--textHeader);  
}

.grid-item img {
  max-width: 100%;
  height: auto;
  /* margin-bottom: -10px; */
}

.grid-item video {
  max-width: 100%;
  height: auto;
  margin-bottom: -10px;
}

.grid-item a {
  color: var(--linkAccent);
  text-decoration: none;
  display: block;
  /* margin-bottom: 20px; */
}

.grid-item a:hover{
  color: var(--linkHover);
}

.grid-item .text-box {
  background-color: rgba(215, 215, 215, 0.5);
  padding: 10px 10px 1px 10px !important;
  /* margin-bottom: 10px; */
}

.grid-item .separate-lines p {
  margin: 5px 0;
  margin-bottom: 10px;
}


/* Stil für den Bildcontainer */
.image-container {
  /* display: flex;
  flex-direction: column;
  min-height: 0; */

  position: relative;
  overflow: hidden;
  margin-bottom: 10px;
  width: 100%; /* Anpassung an die Container-Breite */
}

.image-wrapper {
  width: 100%;
  padding-bottom: 56.25%; /* 16:9 Verhältnis (9 / 16 * 100) */
  position: relative;
}

.image-wrapper iframe{
  padding-bottom: 0px;
}


.image-wrapper img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; /* Bild beibehalten, das 16:9-Verhältnis beibehalten */
}

.image-wrapper video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; /* Bild beibehalten, das 16:9-Verhältnis beibehalten */
}


.image-container video{
  width: 100%;
  height: 100%;
  z-index: 1;
}

/* Stil für das Bild im normalen Zustand */
.zoom-image {
  width: 100%;
  height: 100%;
  object-fit: cover; /* Bild wird im Container skaliert, um die Abmessungen beizubehalten */
  transition: transform 0.3s; /* Fügt eine reibungslose Übergangswirkung hinzu */
}

/* Stil für das Bild beim Hover */
.zoom-image:hover {
  transform: scale(1.1); /* Zoom-Effekt, ändern Sie den Wert, um den gewünschten Zoom-Level anzupassen */
}

.overlay {
  position: absolute;
  top: 50%; /* Move the top edge to the vertical center */
  left: 50%; /* Move the left edge to the horizontal center */
  transform: translate(-50%, -50%); /* Translate the element to center it */
  width: 90%;
  height: 90%;
  background-color: rgba(255, 0, 0, 0.7);
  display: none;
  z-index: 2;
}



.box {
  background-color: #3498db;
  color: #fff;
  text-align: center; /* Text horizontal zentrieren */
  line-height: 20px; /* Text in der vertikalen Mitte zentrieren */
  border-radius: 5px;
  margin: 0px 2px 10px 0px;
  display: inline-block; /* Box passt sich der Breite des Texts an */
  font-size: 14px;
  padding: 0 10px; /* Fügen Sie horizontalen Abstand hinzu, um den Text lesbarer zu machen */
}

.box.unity {
  background-color: #3498db; 
}

.box.xr {
  background-color: #27ae60; 
}

.box.vr {
  background-color: #27ae60; 
}

.box.ar {
  background-color: #27ae60; 
}

.box.cSharp {
  background-color: #e67e22;
}

.box.multiplayer {
  background-color: #9f20b3;
}

.box.threeJS {
  background-color: #e67e22;
}

.box.typeScript {
  background-color: #ec2d37;
}


/* Footer */
#footer {
  background-color: var(--headerFooter); /* Set your desired background color */
  color: var(--text); /* Set text color */
  height: 40px; /* Define the height of the footer */
  display: flex;
  align-items: center;
}

.footer-content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 0px 20px;
}

.footer-content a {
  color: #fff;
  text-decoration: none;
  transition: color 0.3s;
}

.footer-content a:hover {
  color: #ffcc00; /* Change the color on hover */
}

iframe{
  position:relative;
  top:0;
  left:0;
  width:100%;
  height:100%;
}

.locationIcon{
  width: 140px;
}

.legal-link {
    color: inherit;       
    text-decoration: none;
    opacity: 0.8;         
    transition: opacity 0.2s;
}

.legal-link:hover {
    text-decoration: underline;
    opacity: 1;         
    cursor: pointer;
}

html {
    scroll-behavior: smooth;
    /* Dieser Wert muss so hoch sein wie deine Navigation + ca. 20px Luft */
    scroll-padding-top: 100px; 
}