body {
    margin: 0;
    font-family: sans-serif;
    min-height: 100vh;
    position: relative;
  }
  
  body::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: url('/en/media/homebackground.png') no-repeat center center fixed;
    background-size: cover;
    opacity: 0.5; /* 50% transparency */
    z-index: -1;
  }
  
  
  .main-nav {
    position: relative;
    display: flex;
    align-items: center;
    background: #7A4FA0;
    font-size: 1rem;
    gap: 0;
    height: 48px;
  }

  .main-nav svg {
    height: 32px;
    width: auto;
    color: white; 
  }
  
  /* Keep links to the left */
  .nav-links {
    display: flex;
    gap: 0;
  }
  
  .main-nav a {
    text-decoration: none;
    font-weight: bold;
    color: white;
    display: flex;
    align-items: center;
    height: 48px;
    padding: 0 0.75rem; /* match nav-primary */
  }
  
  .main-nav .nav-primary {
    color: white !important;
  }
  
  .main-nav a:hover {
    color: #007acc;
  }
  
  /* Highlighted primary link */
  .nav-primary {
    background-color: #007acc;
    color: white !important;
    font-weight: bold;
    text-decoration: none;
    height: 48px;
    line-height: 48px;
    display: inline-block;
    border-radius: 0;
    vertical-align: middle;
    transition: background-color 0.3s ease;
  }
  
  .nav-primary:hover {
    background-color: #005fa3;
  }

  .nav-primary .home-icon {
    color: white;
  }

  .nav-links img {
    vertical-align: middle;
  }

  .nav-primary:hover .home-icon {
    color: #f0f0f0;
  }

  .home-icon {
    width: 24px;
    height: 24px;
    color: #333; /* match other nav links */
    cursor: pointer;
    vertical-align: middle;
  }

.nav-logo {
  color: white; 
  padding: 0 0.75rem;
  height: 48px;
  display: flex;
  align-items: center;
  background-color: #7A4FA0;
  color: white !important;
  font-weight: bold;
  text-decoration: none;
  line-height: 48px;
  border-radius: 0;
  vertical-align: middle;
  transition: background-color 0.3s ease;
}

.nav-logo svg {
  height: 24px;
  width: auto;
  fill: currentColor;
  display: block;
}

/* === Section Sub-Navigation === */
  .sub-nav {
    background: #007acc;
    display: flex;
    align-items: center;
    height: 30px;
    padding: 0 1.5rem;
    font-size: 0.95rem;
  }

  .sub-nav-links {
    display: flex;
    gap: 0;
  }

  .sub-nav a {
    color: white;
    text-decoration: none;
    font-weight: bold;
    display: flex;
    align-items: center;
    padding: 0 0.75rem;
  }

  .sub-nav a.sub-nav-primary {
    background-color: #7AC9A0;
    color: white;
    font-weight: bold;
    text-decoration: none;
    height: 30px;
    line-height: 1;
    display: flex;
    align-items: center;
    padding: 0 0.75rem;
    border-radius: 0;
    transition: background-color 0.3s ease;
  }
  
  /* --- MOBILE STYLES --- */
  @media (max-width: 768px) {
    .main-nav {
        flex-direction: column;
        align-items: center;
        height: auto;
        padding: 0 1rem;
        gap: 0;
      }

    .nav-links {
      display: flex;
      flex-wrap: wrap;
      justify-content: center;
      gap: 0;
    }
  
    .nav-links a {
      display: flex;
      align-items: center;
      height: 40px;
      padding: 0 0.5rem;
      line-height: 40px;
    }
  
    .nav-logo {
      order: -1;
      max-height: 40px;
      width: auto;
      position: static;
      transform: none;
      display: block;
      align-self: center;
      margin-right: 0;
      padding-top: 0.4rem;
    }
  
    .nav-primary {
      height: 40px;
      line-height: 40px;
    }
  }