/* Custom styles & overrides */

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

.animate-marquee {
  animation: marquee 25s linear infinite;
}

/* Mobile menu active state */
body.menu-open {
  overflow: hidden;
}

#mobile-menu.menu-active {
  opacity: 1;
  pointer-events: all;
}

/* Subtle scroll indicator */
.hero-img::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, transparent 60%, rgba(26,23,20,0.08));
  pointer-events: none;
}

/* Selection color */
::selection {
  background: rgba(181, 69, 112, 0.15);
  color: #1a1714;
}

/* Smooth focus outlines */
input:focus,
select:focus,
textarea:focus {
  outline: none;
}

/* Custom scrollbar */
::-webkit-scrollbar {
  width: 6px;
}
::-webkit-scrollbar-track {
  background: #faf8f5;
}
::-webkit-scrollbar-thumb {
  background: #c7638e30;
  border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
  background: #c7638e60;
}

/* Mobile menu line animation */
.menu-line {
  transition: all 0.4s cubic-bezier(0.65, 0, 0.35, 1);
}

body.menu-open .menu-line:nth-child(1) {
  transform: rotate(45deg) translate(4px, 4px);
}
body.menu-open .menu-line:nth-child(2) {
  opacity: 0;
  transform: scaleX(0);
}
body.menu-open .menu-line:nth-child(3) {
  width: 6px;
  transform: rotate(-45deg) translate(4px, -4px);
  margin-left: 0;
}

/* Print styles */
@media print {
  nav, #mobile-menu, .animate-marquee { display: none; }
  body { background: white; color: black; }
}
