@import url('https://fonts.googleapis.com/css2?family=Syncopate:wght@400;700&family=Space+Grotesk:wght@300;400;500;700&display=swap');

@tailwind base;
@tailwind components;
@tailwind utilities;

@layer base {
  body {
    @apply font-['Space_Grotesk'] text-gray-400 bg-[#050505] antialiased selection:bg-white selection:text-black;
  }
  
  h1, h2, h3, h4, h5, h6 {
    @apply font-['Syncopate'] text-white uppercase;
  }
}

@layer components {
  .btn-outline {
    @apply inline-flex items-center justify-center px-10 py-4 border border-white/20 text-white text-[10px] tracking-[0.3em] uppercase hover:bg-white hover:text-black transition-all duration-700;
  }
  
  .btn-solid {
    @apply inline-flex items-center justify-center px-10 py-4 bg-white text-black text-[10px] tracking-[0.3em] uppercase hover:bg-gray-200 transition-all duration-700;
  }
}

.nav-scrolled {
  @apply bg-[#050505]/80 backdrop-blur-md border-b border-white/5;
}

.text-stroke {
  -webkit-text-stroke: 1px rgba(255, 255, 255, 0.2);
  color: transparent;
  transition: all 0.5s ease;
}

.text-stroke:hover {
  -webkit-text-stroke: 1px rgba(255, 255, 255, 0.8);
  color: white;
}

.hover-img-reveal {
  position: relative;
  overflow: hidden;
}

.hover-img-reveal img {
  transition: transform 1.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.hover-img-reveal:hover img {
  transform: scale(1.05);
}

.magnetic-btn {
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.marquee {
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
}

.marquee span {
  display: inline-block;
  animation: marquee 20s linear infinite;
}

@keyframes marquee {
  0% { transform: translateX(0); }
  100% { transform: translateX(-50%); }
}
