/* RUBIN V13: visible living backdrop without a heavy canvas or a full-screen video.
 * Three GPU-composited radial gradients; transforms only, no animated filters. */
:root{color-scheme:dark}
html{scroll-behavior:smooth}
body{background:#090910!important}
/* Fixed lighting is deliberately layered ABOVE solid section backgrounds;
   the old layer at z-index:0 was hidden by opaque sections. */
.ambient-background{
 position:fixed!important;inset:0!important;z-index:5!important;
 overflow:hidden!important;pointer-events:none!important;
 isolation:isolate!important;contain:strict!important;
 opacity:1!important;mix-blend-mode:screen;
}
.ambient-background::before{
 content:"";position:absolute;inset:-22%;
 background:radial-gradient(ellipse 40% 39% at 30% 48%,rgba(145,22,70,.18) 0%,rgba(109,23,61,.07) 48%,transparent 75%),
 radial-gradient(ellipse 36% 45% at 72% 45%,rgba(118,34,109,.13),transparent 77%);
 opacity:.8!important;animation:rubin13Curtain 30s ease-in-out infinite alternate!important;
 will-change:transform;
}
.ambient-orb{
 position:absolute!important;display:block!important;border-radius:50%!important;
 filter:none!important;mix-blend-mode:normal!important;
 animation:rubin13Drift 26s ease-in-out infinite alternate!important;
 will-change:transform;opacity:1!important;
}
.ambient-orb--one{
 top:4%!important;left:-24%!important;width:75vw!important;min-width:620px!important;height:72vh!important;min-height:500px!important;
 background:radial-gradient(ellipse at center,rgba(216,30,86,.31) 0%,rgba(129,24,91,.18) 29%,rgba(93,11,49,.07) 55%,transparent 73%)!important;
 animation-duration:24s!important;
}
.ambient-orb--two{
 top:20%!important;right:-33%!important;width:84vw!important;min-width:600px!important;height:80vh!important;min-height:570px!important;
 background:radial-gradient(ellipse at center,rgba(125,57,189,.25) 0%,rgba(129,25,77,.16) 37%,transparent 72%)!important;
 animation-duration:33s!important;animation-delay:-13s!important;
}
.ambient-orb--three{
 top:48%!important;left:10%!important;width:77vw!important;min-width:550px!important;height:77vh!important;min-height:490px!important;
 background:radial-gradient(ellipse at center,rgba(226,46,84,.22),rgba(93,29,142,.13) 40%,transparent 74%)!important;
 animation-duration:38s!important;animation-delay:-21s!important;
}
.ambient-mesh{opacity:0!important;display:none!important}
@keyframes rubin13Drift{
 0%{transform:translate3d(-8%,-8%,0) scale(.92)}
 50%{transform:translate3d(14%,8%,0) scale(1.14)}
 100%{transform:translate3d(-5%,16%,0) scale(1.02)}
}
@keyframes rubin13Curtain{
 0%{transform:translate3d(-8%,-4%,0) scale(1)}
 100%{transform:translate3d(10%,8%,0) scale(1.08)}
}
/* Hero has a secondary halo below its content for depth, with no text overlay. */
.hero{background:linear-gradient(125deg,#09090e,#100d17 55%,#130913)!important;isolation:isolate}
.hero::before{background:linear-gradient(90deg,rgba(7,8,13,.62),rgba(8,8,14,.09) 65%),linear-gradient(0deg,#0b0b11,transparent 27%)!important}
.hero .hero-copy-block,.hero .hero-video-art{position:relative;z-index:6}
.spotlight-section,.catalog-section,.interface-section{background-color:#0d0c13!important}
/* Focus when navigating by keyboard and clear UI contrast over ambient light */
:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid #ff799c;outline-offset:3px}
/* Smooth manual orbit: no accidental hover auto flip. */
.rubin-orbit-card .rubin-flip-inner{transition:none!important;backface-visibility:visible;transform-style:preserve-3d}
.rubin-orbit-card{cursor:grab;touch-action:none}
.rubin-orbit-card.is-dragging{cursor:grabbing}
.rubin-orbit-card img{pointer-events:none;-webkit-user-drag:none}
/* Lift main surfaces gently on hover instead of scaling entire layouts */
@media(hover:hover) and (pointer:fine){
 .product-card{transition:transform .65s cubic-bezier(.2,.8,.2,1),border-color .4s ease,box-shadow .45s ease!important}
 .product-card:hover{transform:translateY(-3px)!important}
 .nav-links a{transition:color .32s ease!important}
}
@media(max-width:720px){
 .ambient-orb--one{left:-99%!important;top:3%!important;min-width:520px!important;min-height:520px!important}
 .ambient-orb--two{right:-115%!important;top:15%!important;min-width:530px!important;min-height:530px!important}
 .ambient-orb--three{left:-48%!important;top:55%!important;min-width:460px!important;min-height:480px!important}
 .ambient-background::before{opacity:.55!important}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 .ambient-background::before,.ambient-orb,.spotlight-section::before,.spotlight-display::before,.interface-ambient{animation:none!important;will-change:auto!important}
 .product-card,.rubin-orbit-card .rubin-flip-inner{transition:none!important}
}
@media(prefers-reduced-data:reduce){.ambient-background::before,.ambient-orb{animation:none!important}}
