/*
 =========================================================
 * Filo's dark theme - Navbar
 =========================================================
 * Page: https://filo.gg
 * Copyright 2023 iLxlo_ (https://github.com/ilxlodev)
 * Designed by CSDIT Coded by iLxlo_
 =========================================================
 * Not allowed to copy substantial portions of the software without prior authorization.
 */

nav {
  display: flex;
  padding: 20px 40px;
  align-items: center;
  justify-content: space-between;
  z-index: var(--filogg-navbar-zindex);
  transition: var(--filogg-navbar-transition);
}

nav.sticky {
  top: 0;
  position: fixed;
  width: calc(100% - 40px * 2);
  background: var(--filogg-color-secondary);
}

.empty-space {
  display: none;
  height: 100px;
}

nav.desktop.sticky + .empty-space {
  display: block;
}

nav .logo {
  width: 175px;
  height: auto;
}

nav .links {
  width: 100%;
  display: flex;
  max-width: 850px;
  align-items: center;
  justify-content: space-between;
}

nav .links a {
  font-size: 16px;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--filogg-color-text);
  transition: var(--filogg-hover-text-transition);
}

nav .links a:hover, nav .links a:focus {
  color: var(--filogg-color-primary);
}

nav.responsive {
  display: none;
}

nav.responsive .menu > i {
  font-size: 25px;
  color: var(--filogg-color-text);
  transition: var(--filogg-icon-transition);
}

nav.responsive .menu > i:hover {
  color: var(--filogg-color-primary);
}

nav.responsive .overlay {
  top: -100%;
  left: 0;
  opacity: 0;
  width: 100%;
  height: 100%;
  position: fixed;
  overflow: hidden;
  pointer-events: none;
  background: var(--filogg-color-secondary);
  transition: var(--filogg-navbar-transition);
  z-index: var(--filogg-navbar-overlay-zindex);
}

nav.responsive .overlay.opening, nav.responsive .overlay.open {
  top: 0;
  opacity: 1;
  display: block;
  pointer-events: auto;
}

nav.responsive .overlay:not(.open) .content a:hover {
  background: unset;
}

nav.responsive .overlay .content {
  top: 15%;
  width: 100%;
  display: flex;
  margin-top: 30px;
  position: relative;
  text-align: center;
  align-content: center;
  flex-direction: column;
  justify-content: flex-end;
  height: calc(100% - 15% - 90px);
}

nav.responsive .overlay .content a + div {
  width: 100%;
  background: var(--filogg-color-primary);
}

nav.responsive .overlay .logo {
  position: relative;
  top: 50px;
  left: 50px;
}

nav.responsive .overlay .content a {
  display: block;
  font-size: 20px;
  font-weight: 700;
  padding: 40px 25px;
  text-decoration: none;
  text-transform: uppercase;
  color: var(--filogg-color-text);
  transition: var(--filogg-hover-text-transition);
}

nav.responsive .overlay .content a:hover, nav.responsive .overlay .content a:focus {
  background: var(--filogg-color-primary);
}

nav.responsive .overlay .close {
  top: 50px;
  padding: 0;
  right: 50px;
  font-size: 60px;
  position: absolute;
  color: var(--filogg-color-text);
}

nav.responsive .overlay .close:hover, nav.responsive .overlay .close:focus {
  background: unset;
  color: var(--filogg-color-primary);
}

/*
 =========================================================
 * Media queries
 =========================================================
 * Responsive is the future \ ✪ ω ✪ /
 */

@media (max-width: 1366px) { /* Laptop resolution */

  nav.desktop {
    display: none;
  }

  nav.responsive {
    display: flex;
  }

  nav.responsive .overlay .content {
    top: 10% !important;
    height: calc(100% - 10% - 90px) !important;
    justify-content: space-between;
  }

  nav.desktop.sticky + .empty-space {
    display: none !important;
  }

  nav.responsive.sticky + .empty-space {
    display: block;
  }

}

@media (max-width: 1024px) { /* Tablet resolution */

  nav.responsive .overlay .content {
    top: 5% !important;
    height: calc(100% - 5% - 90px) !important;
  }

}

@media (max-width: 881px) { /* Mobile horizontal resolution */

  nav.responsive .overlay .content a {
    font-size: 25px;
    padding: 30px 25px;
  }

  nav.responsive .logo {
    width: 150px;
  }

  nav.responsive .overlay .logo {
    top: 40px;
    left: 25px;
  }

  nav.responsive .overlay .close{
    top: 25px;
    right: 25px;
  }

  nav.responsive .overlay .content {
    top: 5%;
    height: calc(100% - 5% - 90px);
  }

}

@media (max-width: 768px) { /* Mobile vertical resolution */

  nav.responsive .overlay .content a {
    font-size: 20px;
    padding: 35px 20px;
  }

  nav.responsive .overlay .content {
    height: calc(100% - 5% - 80px);
  }

}