/* Empêche toute barre de défilement horizontale */
body {
  overflow-x: hidden;
}

:root {
  --page-padding: 1rem;
}

/* HEADER */
header.header {
  width: 100%;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.5rem 0;
  text-align: center;
}

.header-inner {
  max-width: none !important;
  width: 100vw !important;
  overflow-x: visible !important;
}


/* NAVIGATION */
header.header .nav {
  width: 100%;
  padding: 0.5rem 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  gap: 16px;
  box-sizing: border-box;
  overflow-x: auto;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}

header.header .nav::-webkit-scrollbar {
  display: none; /* Chrome, Safari */
}

header.header .nav-item {
  flex: 0 0 auto;
  font-size: 1rem;
  padding: 0.3rem 0.7rem;
  white-space: nowrap;
  word-break: break-word;
  box-sizing: border-box;
}

/* Classe utilitaire pour forcer scroll horizontal */
header.header .nav.scroll-nav-horizontal {
  flex-wrap: nowrap !important;
  overflow-x: auto !important;
  white-space: nowrap !important;
  gap: 1rem !important;
  justify-content: flex-start !important;
  padding: 0.5rem 1rem !important;
  -webkit-overflow-scrolling: touch !important;
  scrollbar-width: none;
}

header.header .nav.scroll-nav-horizontal::-webkit-scrollbar {
  display: none;
}
/* LOGO */
    .logo-container {
      position: relative;
      margin: 2rem 0;
    }

    .logo {
      font-family: 'VT323', monospace;
      font-size: 3.5rem;
      font-weight: bold;
      text-align: center;
      color: var(--accent);
      text-transform: uppercase;
      letter-spacing: -1px;
      position: relative;
      margin: 0;
      padding: 0;
      animation: flicker 4s infinite;
    }

    .logo::before,
    .logo::after {
      content: "Social Art AI";
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      opacity: 0.8;
    }

    .logo::before {
      color: var(--accent2);
      z-index: -1;
      animation: glitch-1 2.5s infinite;
    }

    .logo::after {
      color: var(--accent3);
      z-index: -2;
      animation: glitch-2 3.5s infinite;
    }




/* TICKER */
.ticker-container {
  display: block;
  width: 100vw;
  margin-left: calc(-1 * var(--page-padding));
  margin-right: calc(-1 * var(--page-padding));
  padding: 0.5rem var(--page-padding);
  overflow: hidden;
  white-space: nowrap;
  background-color: #000;
}

.ticker {
  display: inline-flex;
  animation: scrollTicker 25s linear infinite;
}

.ticker-text {
  display: inline-block;
  padding: 0.5rem 2rem;
}

@keyframes scrollTicker {
  0% { transform: translateX(100%); }
  100% { transform: translateX(-100%); }
}

/* RESPONSIVE */
@media screen and (max-width: 768px) {
  header.header .logo {
    font-size: 1.8rem;
  }
  header.header .manifesto {
    font-size: 0.9rem;
  }
  header.header .nav {
    flex-wrap: nowrap;
    overflow-x: auto;
    white-space: nowrap;
    padding: 0.5rem var(--page-padding);
    gap: 12px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  header.header .nav-item {
    flex: 0 0 auto;
    font-size: 1rem;
    padding: 0.4rem 0.8rem;
    white-space: nowrap;
  }
}

@media screen and (max-width: 480px) {
  header.header .logo {
    font-size: 1.5rem;
  }
  header.header .manifesto {
    font-size: 0.8rem;
  }
  header.header .nav-item {
    font-size: 0.9rem;
    padding: 0.3rem 0.6rem;
  }
}

@media (min-width: 768px) {
  header.header .nav {
    flex-wrap: wrap;
    gap: 40px;
    overflow-x: visible;
    width: 100%;
    padding-left: var(--page-padding);
    padding-right: var(--page-padding);
  }
F
  header.header .nav.scroll-nav-horizontal {
    flex-wrap: nowrap !important;
    overflow-x: auto !important;
    white-space: nowrap !important;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }
}
header.header .nav.scroll-nav-horizontal {
  width: 100vw !important;
  max-width: 100vw !important;
}
@media (min-width: 768px) {
  header.header .nav.scroll-nav-horizontal {
    flex-wrap: wrap !important;
    overflow-x: visible !important;
    white-space: normal !important;
  }
}