/* ===== PRUDY APPAREL — custom styles ===== */

/* Fonts: system serif + sans, no external CDN */
body {
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
}

/* ===== MARQUEE ===== */
.marquee-track {
  display: flex;
  width: max-content;
}

@media (prefers-reduced-motion: no-preference) {
  .marquee-track {
    animation: marquee-scroll 28s linear infinite;
  }
}

@keyframes marquee-scroll {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

/* ===== HERO SVG SPIN ===== */
@media (prefers-reduced-motion: no-preference) {
  .svg-spin-slow {
    transform-origin: 210px 250px;
    animation: slow-spin 32s linear infinite;
  }
}

@keyframes slow-spin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

/* Ensure SVG spin-slow origin works inline */
.hero-svg .svg-spin-slow {
  transform-box: fill-box;
  transform-origin: center;
}

/* ===== STICKY MOBILE CTA BAR ===== */
.sticky-cta {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  height: 56px;
  display: flex;
  z-index: 9000;
  padding-bottom: env(safe-area-inset-bottom, 0px);
  box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.18);
}

/* Offset accessibility FAB above sticky bar on mobile */
@media (max-width: 767px) {
  :root {
    --a11y-bottom: 72px;
  }
}

/* ===== HERO FADE-IN ===== */
@media (prefers-reduced-motion: no-preference) {
  #main-content {
    animation: hero-fade 0.7s ease-out both;
  }
}

@keyframes hero-fade {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ===== CARD HOVER LIFT (contact items) ===== */
@media (prefers-reduced-motion: no-preference) {
  .group:hover .group-hover\:bg-brand-500 {
    transition: background-color 0.2s ease;
  }
}

/* ===== SCROLLBAR (optional flair) ===== */
::-webkit-scrollbar {
  width: 6px;
}
::-webkit-scrollbar-track {
  background: #F5EFE0;
}
::-webkit-scrollbar-thumb {
  background: #C9A052;
  border-radius: 3px;
}
