/* Site-specific visual effects layered over Tailwind utilities. */
/* Custom scrollbar & aesthetic resets */
  ::-webkit-scrollbar { width: 8px; }
  ::-webkit-scrollbar-track { background: #08090C; }
  ::-webkit-scrollbar-thumb { background: #222632; border-radius: 4px; }
  ::-webkit-scrollbar-thumb:hover { background: #FF5500; }
  
  ::selection { background: #FF5500; color: #08090C; }

  /* Glow mouse effect */
  .cursor-glow {
    position: fixed;
    width: 450px;
    height: 450px;
    border-radius: 50%;
    pointer-events: none;
    background: radial-gradient(circle, rgba(255, 85, 0, 0.12), transparent 70%);
    transform: translate(-50%, -50%);
    z-index: 9999;
    transition: width 0.3s ease, height 0.3s ease, opacity 0.3s ease;
  }

  /* Noise texture */
  .bg-noise {
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.03'/%3E%3C/svg%3E");
  }

  /* Glassmorphism */
  .glass {
    background: rgba(18, 20, 26, 0.75);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.1);
  }
  
  .glass-light {
    background: rgba(255, 255, 255, 0.85);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    border: 1px solid rgba(0, 0, 0, 0.08);
  }

  /* Text stroke for bold assertions */
  .text-stroke {
    -webkit-text-stroke: 1.5px rgba(255, 255, 255, 0.25);
    color: transparent;
  }
  .text-stroke:hover {
    -webkit-text-stroke: 1.5px #FF5500;
    color: transparent;
  }

  /* Smooth reveal animation CSS */
  .reveal-on-scroll {
    opacity: 0;
    transform: translateY(30px);
    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.is-visible {
    opacity: 1;
    transform: translateY(0);
  }

  /* Custom range sliders */
  input[type=range] {
    -webkit-appearance: none;
    background: #1A1D26;
    height: 8px;
    border-radius: 4px;
  }
  input[type=range]::-webkit-slider-thumb {
    -webkit-appearance: none;
    height: 22px;
    width: 22px;
    border-radius: 50%;
    background: #FF5500;
    cursor: pointer;
    box-shadow: 0 0 15px rgba(255, 85, 0, 0.6);
    transition: transform 0.15s ease;
  }
  input[type=range]::-webkit-slider-thumb:hover {
    transform: scale(1.2);
  }
