:root{--lux-gold:#e4b84f;--lux-soft:#fff0af}
body{overflow-x:hidden}
.hero{isolation:isolate;overflow:hidden}
.hero::before{content:"";position:absolute;z-index:-2;left:50%;top:44%;width:min(78vw,860px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(224,174,55,.17),rgba(224,174,55,.035) 42%,transparent 68%);animation:luxBreath 7s ease-in-out infinite}
.hero::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(115deg,transparent 25%,rgba(255,226,137,.035) 49%,transparent 73%);transform:translateX(-100%);animation:luxSweep 9s ease-in-out infinite}
.halo{will-change:transform;animation:luxFloat 6s ease-in-out infinite;transition:transform .3s ease}
.halo img{filter:drop-shadow(0 20px 50px rgba(224,174,55,.18));animation:luxGlow 5s ease-in-out infinite}
.gold-particles{position:absolute;z-index:-1;inset:10% 4% 4%;pointer-events:none}
.gold-particles i{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--lux-soft);box-shadow:0 0 12px 3px rgba(228,184,79,.42);opacity:0;animation:luxParticle 8s ease-in-out infinite}
.gold-particles i:nth-child(1){left:8%;top:34%;animation-delay:.3s}.gold-particles i:nth-child(2){left:19%;top:66%;animation-delay:2.2s}.gold-particles i:nth-child(3){left:33%;top:20%;animation-delay:4.4s}.gold-particles i:nth-child(4){left:47%;top:77%;animation-delay:1.2s}.gold-particles i:nth-child(5){left:64%;top:24%;animation-delay:5.5s}.gold-particles i:nth-child(6){left:77%;top:62%;animation-delay:3.4s}.gold-particles i:nth-child(7){left:89%;top:38%;animation-delay:6.5s}.gold-particles i:nth-child(8){left:58%;top:55%;animation-delay:7.2s}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .85s cubic-bezier(.2,.8,.2,1),transform .85s cubic-bezier(.2,.8,.2,1)}
.reveal.is-visible{opacity:1;transform:none}
.grid article,.stats article{transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}
.grid article:hover,.stats article:hover{transform:translateY(-5px);border-color:rgba(228,184,79,.42);box-shadow:0 18px 50px rgba(0,0,0,.28)}
.split{position:relative;overflow:hidden;transform:scaleX(.92);opacity:.35;transition:transform 1.1s cubic-bezier(.2,.8,.2,1),opacity .8s ease}
.split.is-visible{transform:scaleX(1);opacity:1}
.split::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.2) 48%,transparent 61%);transform:translateX(-130%)}
.split.is-visible::after{animation:luxChartSweep 1.4s .4s ease-out forwards}
.primary{position:relative;overflow:hidden}
.primary::after{content:"";position:absolute;inset:-50%;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.28) 50%,transparent 65%);transform:translateX(-90%);transition:transform .7s ease}
.primary:hover::after{transform:translateX(90%)}
@keyframes luxFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes luxBreath{0%,100%{opacity:.7;transform:translate(-50%,-50%) scale(.94)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.06)}}
@keyframes luxGlow{0%,100%{filter:drop-shadow(0 20px 45px rgba(224,174,55,.14)) brightness(.98)}50%{filter:drop-shadow(0 22px 60px rgba(224,174,55,.28)) brightness(1.06)}}
@keyframes luxSweep{0%,58%{transform:translateX(-100%)}78%,100%{transform:translateX(100%)}}
@keyframes luxParticle{0%,100%{opacity:0;transform:translateY(14px) scale(.6)}35%,65%{opacity:.7;transform:translateY(-8px) scale(1)}}
@keyframes luxChartSweep{to{transform:translateX(130%)}}
@media(max-width:720px){.gold-particles i:nth-child(n+6){display:none}.grid article:hover,.stats article:hover{transform:none}.hero::before{width:115vw}}
@media(prefers-reduced-motion:reduce){.hero::before,.hero::after,.halo,.halo img,.gold-particles i,.split.is-visible::after{animation:none!important}.reveal,.split{opacity:1;transform:none;transition:none}.primary::after{display:none}}
