/* === BASE === */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; }

/* === HERO GRADIENT === */
.hero-gradient {
  background:
    radial-gradient(ellipse 80% 60% at 20% 80%, rgba(95,121,58,0.6) 0%, transparent 60%),
    radial-gradient(ellipse 60% 50% at 80% 20%, rgba(212,168,67,0.35) 0%, transparent 55%),
    radial-gradient(ellipse 70% 70% at 50% 50%, rgba(180,100,40,0.25) 0%, transparent 60%),
    radial-gradient(ellipse 50% 40% at 70% 70%, rgba(95,121,58,0.4) 0%, transparent 50%),
    linear-gradient(160deg, #1a2e10 0%, #2d1f0e 35%, #1a1a2e 65%, #0f1a0f 100%);
}

/* === NAV SCROLLED === */
#nav.scrolled {
  background: rgba(18,18,18,0.92);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 1px 0 rgba(212,168,67,0.1);
}

/* === SCROLL INDICATOR === */
.scroll-line {
  display: flex;
  justify-content: center;
  animation: scrollPulse 2s ease-in-out infinite;
}
@keyframes scrollPulse {
  0%, 100% { opacity: 0.4; transform: translateY(0); }
  50% { opacity: 1; transform: translateY(6px); }
}

/* === SCROLL REVEAL (progressive enhancement) === */
.scroll-reveal {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.7s ease, transform 0.7s ease;
}
@media (prefers-reduced-motion: no-preference) {
  .scroll-reveal {
    opacity: 0;
    transform: translateY(30px);
    transition: opacity 0.7s ease, transform 0.7s ease;
  }
  .scroll-reveal.revealed {
    opacity: 1;
    transform: translateY(0);
  }
}

/* === GOLD TEXT GRADIENT (used sparingly) === */
.text-gold-gradient {
  background: linear-gradient(135deg, #f5d98e 0%, #d4a843 50%, #b8892e 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* === CUSTOM SCROLLBAR === */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #1a1a1a; }
::-webkit-scrollbar-thumb { background: #3c4d26; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #5f793a; }

/* === SELECTION === */
::selection { background: rgba(212,168,67,0.3); color: #faf8f4; }
