/* Header Styles */
.site-header {
  color: #fff !important;
  padding: 1rem 1rem !important;
  z-index: 1000 !important;
  width: 100% !important;
  position: fixed !important;
  background: var(--main-dark-blue) !important;
}

.site-header .container {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  margin: 0 auto !important;
  padding: 0 45px !important;
}

.site-header .logo a {
  color: #fff !important;
  text-decoration: none !important;
  font-size: 1.5rem !important;
  font-weight: bold !important;
}

/* Main Navigation (Desktop) */
.main-nav {
  display: none !important;
}

.main-nav .menu {
  list-style: none !important;
}

.main-nav .menu {
  display: flex;
  list-style: none;
  gap: 3rem;
  margin: 0;
  background-color: rgba(255, 255, 255, 0.05) !important;
  border-radius: 200px;
  padding: 26px;
  align-items: center;
}

.main-nav .menu li a {
  color: #fff !important;
  text-decoration: none !important;
  font-size: 1rem !important;
}


/* Burger Button */
.burger-menu {
  display: flex !important;
  flex-direction: column !important;
  gap: 5px !important;
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  z-index: 1100 !important;
}

.burger-menu span {
  width: 25px !important;
  height: 3px !important;
  background: #fff !important;
  display: block !important;
}

/* Mobile Menu */

.mobile-header {
  display: flex !important;
  justify-content: space-between !important;
  padding: 2rem !important;
  align-items: center;
}

.mobile-menu {
  display: block !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background: var(--main-dark-blue) !important;
  transform: translateX(100%) !important;
  transition: transform 0.3s ease-in-out !important;
  z-index: 1000 !important;
}

.mobile-menu.open {
  transform: translateX(0) !important;
  display: flex !important;
  flex-direction: column !important;
}

.mobile-menu.open nav {
  overflow: scroll;
}

.mobile-menu nav {
  padding: 2rem 1rem !important;
}

.mobile-menu .mobile-menu-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: center !important;
}

.mobile-menu .mobile-menu-list li a {
  color: #fff !important;
  text-decoration: none !important;
  font-size: 1.5rem !important;
  display: block !important;
  margin: 1.5rem 0 !important;
}

.burger-menu-close {
  display: flex !important;
  flex-direction: column !important;
  gap: 5px !important;
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  z-index: 1100 !important;
}

.burger-menu-close span {
  width: 25px !important;
  height: 3px !important;
  background: #fff !important;
  display: block !important;
}

/* Media Query for Larger Screens */
@media (min-width: 1024px) {
  .site-header {
    position: absolute !important;
    background: transparent !important;
    padding-top: 40px !important;
  }

  .main-nav {
    display: flex !important;
    gap: 1rem !important;
  }

  .burger-menu {
    display: none !important;
  }

  .mobile-menu {
    display: none !important;
  }

  body .site-header {
    background-color: var(--main-dark-blue) !important;
    position: fixed !important;
    padding: 1rem !important;
    margin-top: 20px;
    border-radius: 38px;
    left: 15px;
    right: 15px;
    width: calc(100% - 30px) !important;
  }

  .menu-item-949 {
    text-decoration: underline !important;
    text-align: center;
    font-weight: 800;
  }

}

.site-header {
  transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out,
    background-color 0.3s ease;
}

.site-header.hidden {
  transform: translateY(-100%);
  opacity: 0;
}

.site-header.visible {
  transform: translateY(0);
  opacity: 1;
}

body:not(.home) .site-main {
  margin-top: 135px;
}

/* Background Trasparente all'inizio, solo per desktop */
body .site-header.transparent {
  background: transparent !important;
}

/* Background blu dopo i 600px di scroll */
body .site-header.scrolled {
  background-color: var(--main-dark-blue) !important;
  margin-top: 0px;
}

/* Versione Mobile - senza cambio di background */
@media (max-width: 767px) {
  body .site-header.transparent {
    background-color: var(--main-dark-blue) !important;
  }

  body .site-header {
    background-color: var(--main-dark-blue) !important;
  }

  body .site-header.scrolled {
    background-color: var(--main-dark-blue) !important;
  }

  .user-bg-img img {
    display: none;
  }

  .um-header {
    margin-top: 130px !important;
  }
}

/* QUI AGGIUNGERE CLASSI body .nome-classe per le pagine con header che rimane SEMPRE blu?*/

body.um-page-login .site-header.transparent,
body.single-news .site-header.transparent,
body.um-page-user .site-header.transparent,
body.um-page-register .site-header.transparent,
body.um-page-account .site-header.transparent,
body.page-template-registration .site-header.transparent,
body.page-template-visitor-registration .site-header.transparent,
body.page-id-399 .site-header.transparent,
body.page-id-461 .site-header.transparent,
body.page-id-484 .site-header.transparent,
/* privacy policy */
body.error404 .site-header.transparent,
body.page-template-registration-event .site-header.transparent,
body.page-template-x-pay-result .site-header.transparent,
body.page-id-1079 .site-header.transparent{
  background-color: var(--main-dark-blue) !important;
  margin-top: 16px;
}

.page-id-484 .entry-content p {
  /* privacy policy */
  margin-top: 30px;
}

.page-id-484 .entry-content {
  /* privacy policy */
  margin: 0 16px;
}

@media (min-width: 1024) {
  .page-id-484 .entry-content {
    /* privacy policy */
    margin: 0 150px;
  }
}