html{scroll-behavior:smooth}@keyframes float{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-20px) rotate(1deg)}50%{transform:translateY(-10px) rotate(-1deg)}75%{transform:translateY(-25px) rotate(.5deg)}}@keyframes shimmer{0%{background-position:-200% center}to{background-position:200% center}}@keyframes pulse-glow{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes particle-drift{0%{transform:translateY(0) translate(0) scale(1);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(-100vh) translate(50px) scale(.3);opacity:0}}@keyframes scroll-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}@keyframes spotlight-pulse{0%,to{opacity:.15}50%{opacity:.3}}@keyframes text-reveal{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0% 0 0)}}@keyframes border-draw{0%{stroke-dashoffset:1000}to{stroke-dashoffset:0}}@keyframes ripple{0%{transform:scale(0);opacity:.5}to{transform:scale(4);opacity:0}}.animate-float{animation:float 6s ease-in-out infinite}.animate-float-slow{animation:float 10s ease-in-out infinite}.animate-float-fast{animation:float 4s ease-in-out infinite}.animate-shimmer{background:linear-gradient(90deg,transparent 0%,rgba(255,191,36,.08) 25%,rgba(255,191,36,.15) 50%,rgba(255,191,36,.08) 75%,transparent 100%);background-size:200% 100%;animation:shimmer 3s ease-in-out infinite}.animate-pulse-glow{animation:pulse-glow 4s ease-in-out infinite}.animate-gradient-shift{background-size:200% 200%;animation:gradient-shift 8s ease infinite}.animate-scroll-bounce{animation:scroll-bounce 2s ease-in-out infinite}.particle{position:absolute;width:2px;height:2px;background:#d99c3799;border-radius:50%;animation:particle-drift linear infinite;pointer-events:none}.glass{background:#ffffff08;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.06)}.glass-hover:hover{background:#ffffff0f;border-color:#d99c3726;box-shadow:0 8px 32px #0000004d,inset 0 0 0 1px #d99c370d}.perspective-container{perspective:1000px}.tilt-card{transition:transform .4s cubic-bezier(.23,1,.32,1),box-shadow .4s ease;transform-style:preserve-3d}.tilt-card:hover{transform:rotateX(2deg) rotateY(-3deg) translateY(-4px);box-shadow:0 20px 60px -15px #00000080,0 0 40px -10px #d99c371a}.animated-underline{position:relative}.animated-underline:after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:1px;background:linear-gradient(90deg,#d4a853,#8b6914);transition:width .4s cubic-bezier(.23,1,.32,1)}.animated-underline:hover:after{width:100%}.cursor-spotlight{--mouse-x: 50%;--mouse-y: 50%}.cursor-spotlight:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(600px circle at var(--mouse-x) var(--mouse-y),rgba(217,156,55,.04),transparent 70%);pointer-events:none;z-index:1;transition:opacity .3s ease}.navbar-scrolled{background:#0a0a0ad9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.05)}.bento-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-auto-rows:200px;gap:1rem}.bento-grid .span-2{grid-row:span 2}.bento-grid .span-col-2{grid-column:span 2}.img-zoom{overflow:hidden}.img-zoom img{transition:transform .6s cubic-bezier(.23,1,.32,1),filter .6s ease}.img-zoom:hover img{transform:scale(1.08)}.product-card{transition:transform .4s cubic-bezier(.23,1,.32,1),box-shadow .4s ease}.product-card:hover{transform:translateY(-8px);box-shadow:0 25px 50px -12px #00000080}.ripple-effect{position:relative;overflow:hidden}.ripple-effect .ripple{position:absolute;border-radius:50%;background:#ffffff26;animation:ripple .6s linear;pointer-events:none}::selection{background-color:#8b691480;color:#fff}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#0a0a0a}::-webkit-scrollbar-thumb{background:#333;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#555}*:focus-visible{outline:2px solid rgba(217,156,55,.5);outline-offset:2px}
