/* Custom CSS base & animations for Light Luxury Apparel Theme */

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400&family=Inter:wght@200;300;400;500;600;700&display=swap');

*, ::before, ::after {
  box-sizing: border-box;
  border-width: 0;
  border-style: solid;
  border-color: #EAEAEA; /* Default clean light border */
}

html, body {
  margin: 0;
  padding: 0;
  background-color: #FAF9F6; /* Alabaster base background */
  color: #1A1A1A; /* Obsidian charcoal primary text */
  scroll-behavior: smooth;
  font-family: 'Inter', sans-serif;
}

/* Custom scrollbar matching clean aesthetics */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}
::-webkit-scrollbar-track {
  background: #FAF9F6;
}
::-webkit-scrollbar-thumb {
  background: #EAEAEA;
  border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
  background: #BD745C;
}

/* Glassmorphism Blur header */
.gradient-blur {
  position: fixed;
  z-index: 40;
  inset: 0 0 auto 0;
  height: 90px;
  pointer-events: none;
}

.gradient-blur > div,
.gradient-blur::before,
.gradient-blur::after {
  position: absolute;
  inset: 0;
}

.gradient-blur::before {
  content: "";
  z-index: 1;
  backdrop-filter: blur(1.5px);
  mask: linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 25%, rgba(0, 0, 0, 0) 50%);
  -webkit-mask: linear-gradient(to top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 1) 25%, rgba(0, 0, 0, 0) 50%);
}

.gradient-blur::after {
  content: "";
  z-index: 2;
  backdrop-filter: blur(10px);
  mask: linear-gradient(to top, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 1) 100%);
  -webkit-mask: linear-gradient(to top, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 1) 100%);
}

/* Keyframe animations */
@keyframes float {
  0%, 100% { transform: translateY(0px) rotate(0deg); }
  50% { transform: translateY(-8px) rotate(0.5deg); }
}

.animate-float {
  animation: float 8s ease-in-out infinite;
}

@keyframes slideUp {
  from { transform: translateY(30px); opacity: 0; }
  to { transform: translateY(0); opacity: 1; }
}

.animate-slide-up {
  animation: slideUp 0.8s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes fadeIn {
  from { opacity: 0; transform: scale(0.98); }
  to { opacity: 1; transform: scale(1); }
}

.animate-fade-in {
  animation: fadeIn 1s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

/* Reveal on scroll */
.reveal-on-scroll {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.reveal-on-scroll.active {
  opacity: 1;
  transform: translateY(0);
}

/* Highly visible luxury editorial text colors to resolve browser visibility issues */
.text-editorial-muted {
  color: #7A7A85 !important;
  transition: color 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.text-editorial-muted:hover {
  color: #1A1A1A !important;
}

.text-editorial-light {
  color: #9D9DA8 !important;
  transition: color 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.text-editorial-light:hover {
  color: #1A1A1A !important;
}

/* Smooth continuous marquee animation */
@keyframes marquee {
  0% { transform: translateX(0%); }
  100% { transform: translateX(-50%); }
}

.animate-marquee {
  animation: marquee 30s linear infinite;
  display: flex;
  width: max-content;
}
