/* Base styles for the navbar */
.navbar {
  background-color: #1C3284;
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
  position: fixed;
  align-items: center;
  text-align: center;
  justify-content: center;
  font-size: large;
  margin-bottom: 20px;
  z-index: 10;
  padding: 10px 0;
}

/* Navbar links */
.navbar a {
  color: #f4f4f4;
  padding: 15px 0;
  margin: 5px 0;
  display: inline-block;
  position: relative;
  text-decoration: none;
  text-align: center;
}

/* Navbar link hover effect */
.navbar a:hover {
  font-weight: bold;
}

.navbar a:not(:has(>img))::before {
  transition: 300ms;
  height: 3px;
  content: "";
  position: absolute;
  background-color: #f4f4f4;
  width: 0%;
  bottom: 10px;
}

.navbar a:hover:not(:has(>img))::before {
  width: 100%;
}

/* Styles for the switch */
.switch {
  position: relative;
  display: inline-block;
  margin: 5px 5px;
}

/* Navbar for larger screens */
@media (min-width: 768px) {
  .navbar {
      flex-direction: row;
      height: 67px;
      justify-content: space-evenly;
      padding: 0;
  }

  .navbar a {
      width: auto;
      margin: 0 10px;
      padding: 0px 0;
  }

  .navbar a:not(:has(>img))::before {
      bottom: -10px;
  }

  .switch{
    display: inline-block;
  }
}

/* Mobile styles */
@media (max-width: 767px) {
  .navbar a {
      display: none;
  }

  .navbar #nav-logo {
      display: inline-block;
  }

  .navbar.expanded a {
      display: inline-block;
  }

  .switch {
      display: none;
  }
}

/* Show the switch on mobile in expanded state */
@media (max-width: 767px) {
  .navbar.expanded .switch {
      display: block;
  }
}



.switch > span {
  position: absolute;
  top: 14px;
  pointer-events: none;
  font-family: 'Helvetica', Arial, sans-serif;
  font-weight: bold;
  font-size: 12px;
  text-transform: uppercase;
  text-shadow: 0 1px 0 rgba(0, 0, 0, .06);
  width: 50%;
  text-align: center;
}

input.check-toggle-round-flat:checked ~ .off {
  color: #1C3284;
}

input.check-toggle-round-flat:checked ~ .on {
  color: #f4f4f4;
}

.switch > span.on {
  left: 0;
  padding-left: 2px;
  color: #1C3284;
}

.switch > span.off {
  right: 0;
  padding-right: 4px;
  color: #f4f4f4;
}

.check-toggle {
  position: absolute;
  margin-left: -9999px;
  visibility: hidden;
}

.check-toggle + label {
  display: block;
  position: relative;
  cursor: pointer;
  outline: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

input.check-toggle-round-flat + label {
  padding: 2px;
  width: 97px;
  height: 35px;
  background-color: #f4f4f4;
  -webkit-border-radius: 60px;
  -moz-border-radius: 60px;
  -ms-border-radius: 60px;
  -o-border-radius: 60px;
  border-radius: 60px;
}

input.check-toggle-round-flat + label:before, input.check-toggle-round-flat + label:after {
  display: block;
  position: absolute;
  content: "";
}

input.check-toggle-round-flat + label:before {
  top: 2px;
  left: 2px;
  bottom: 2px;
  right: 2px;
  background-color: #1C3284;
  -webkit-border-radius: 60px;
  -moz-border-radius: 60px;
  -ms-border-radius: 60px;
  -o-border-radius: 60px;
  border-radius: 60px;
}

input.check-toggle-round-flat + label:after {
  top: 4px;
  left: 4px;
  bottom: 4px;
  width: 48px;
  background-color: #f4f4f4;
  -webkit-border-radius: 52px;
  -moz-border-radius: 52px;
  -ms-border-radius: 52px;
  -o-border-radius: 52px;
  border-radius: 52px;
  -webkit-transition: margin 0.2s;
  -moz-transition: margin 0.2s;
  -o-transition: margin 0.2s;
  transition: margin 0.2s;
}

input.check-toggle-round-flat:checked + label:after {
  margin-left: 44px;
}
