/* Contenitore generale per logo, social, menu top e menu top2 */
.menu-wrapper-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;

  padding: 0.2rem;
  padding-top: 0.5rem;
}

/* Divisori sottili tra le sezioni interne */
.menu-wrapper-right > div {
  width: 100%;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  padding-bottom: 0.5rem;
  margin-bottom: 0.5rem;
}

.menu-wrapper-right > div:last-child {
  border-bottom: none; /* nessun divisore dopo l’ultimo blocco */
  margin-bottom: 0;
}

/* Menu TOP – maggiore importanza */
.menu-top-wrapper {
  width: 100%;
  padding: 0.75rem;
  background-color: rgba(245, 245, 245, 0.8);
}

.menu-top-wrapper .navbar-nav {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

.menu-top-wrapper .navbar-nav > li > a {
  font-weight: 600;
  font-size: 16px;
  color: var(--main-dark-color);
  transition: color 0.3s ease;
}

.menu-top-wrapper .navbar-nav > li > a:hover {
  color: var(--main-blue-color);
}

/* Menu TOP2 – importanza minore */
.menu-top2-wrapper {
  width: 100%;

  padding: 0.5rem;
  border-radius: 6px;
}

.menu-top2-wrapper .navbar-nav {
  display: flex;
  flex-direction: row;
  justify-content: center;
}

.menu-top2-wrapper .navbar-nav > li > a {
  position: relative;
  font-size: 1rem;
  padding: 0.3rem 0.8rem;
  color: var(--main-dark-color);
  transition: color 0.2s ease;
  overflow: hidden;
  text-decoration: none; /* Disabilita underline nativo */
}

/* Effetto border-bottom animato */

.menu-top2-wrapper .navbar-nav > li > a::after,
.menu-top2-wrapper .navbar-nav > li.current-menu-item > a:after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  bottom: 0;
  height: 2px;
  width: 0;
  background: var(--main-blue-color);
  border-radius: 2px;
  transition: width 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.menu-top2-wrapper .navbar-nav > li > a:hover::after {
  width: 100%;
}

.menu-top2-wrapper .navbar-nav > li > a:hover,
.menu-top2-wrapper .navbar-nav > li.current-menu-item > a {
  color: var(--main-blue-color);
}

@media (max-width: 1024px) {
  .menu-top-wrapper .navbar-nav,
  .menu-top2-wrapper .navbar-nav {
    flex-direction: column;
  }

  .navbar-expand-xxl .navbar-collapse {
    display: flex !important;
    flex-basis: auto;
  }

  .navbar-expand-xxl .navbar-toggler {
    display: none;
  }
}

@media (max-width: 1400px) {
  #menu-top a,
  .menu-top-wrapper .navbar-nav a {
    font-size: 15px;
  }
}

@media (min-width: 1700px) {
  .menu-wrapper-right > div {
    width: 80%;
  }
}
