.reveal{animation:rise-in .8s both}
@keyframes rise-in{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
.brand-mark{animation:mark-glow 1.6s ease-in-out infinite}
@keyframes mark-glow{0%,100%{box-shadow:0 0 0 #4dff1600;transform:rotate(-8deg) scale(1)}50%{box-shadow:0 0 22px #4dff16,0 0 40px #14ff6388;transform:rotate(10deg) scale(1.18)}}
.navigation{position:relative;animation:rise-in .7s both}
.navigation:after{content:"";position:absolute;left:6%;right:6%;bottom:0;height:2px;background:linear-gradient(90deg,transparent,#4dff16,#eaffc2,transparent);background-size:200% 100%;animation:nav-shine 2.2s linear infinite;pointer-events:none}
@keyframes nav-shine{to{background-position:-200% 0}}
.section-kicker{animation:kicker-pulse 1.8s ease-in-out infinite}
@keyframes kicker-pulse{50%{text-shadow:0 0 18px #4dff16;letter-spacing:3px;color:#d8ff9a}}
h1>span{filter:drop-shadow(0 0 16px #39ff1466)}
.card.reveal{animation:rise-in .75s both,card-float 2.8s ease-in-out .8s infinite}
.card.reveal:nth-child(2){animation-delay:.08s,.2s}
.card.reveal:nth-child(3){animation-delay:.16s,.5s}
.card.reveal:nth-child(4){animation-delay:.24s,.1s}
.card.reveal:nth-child(5){animation-delay:.32s,.7s}
@keyframes card-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-18px)}}
.card,.pay-panel{position:relative;overflow:hidden}
.card:after,.pay-panel:after{content:"";position:absolute;top:-30%;bottom:-30%;width:46%;left:0;background:linear-gradient(90deg,transparent,#ffffffcc,transparent);transform:translateX(-180%) skewX(-16deg);animation:shine-pass 2.8s ease-in-out infinite;pointer-events:none;z-index:2}
.card:nth-child(2):after{animation-delay:.45s}
.card:nth-child(3):after{animation-delay:.9s}
.card:nth-child(4):after{animation-delay:1.35s}
.card:nth-child(5):after{animation-delay:1.8s}
.pay-panel:after{animation-duration:3.4s}
@keyframes shine-pass{0%,46%{transform:translateX(-180%) skewX(-16deg)}78%,100%{transform:translateX(340%) skewX(-16deg)}}
.primary-button{animation:button-glow 3.6s ease-in-out infinite}
@keyframes button-glow{0%,100%{box-shadow:0 0 10px #4dff1628}50%{box-shadow:0 0 18px #4dff1640}}
@keyframes button-bob{50%{transform:translateY(-1px)}}
a.primary-button.hire{animation:hire-pulse 3.2s ease-in-out infinite;transform-origin:center}
@keyframes hire-pulse{0%,100%{transform:scale(1);box-shadow:0 0 8px #4dff1628}50%{transform:scale(1.018);box-shadow:0 0 16px #4dff1644}}
.pay-panel{animation:panel-breathe 2.6s ease-in-out infinite,rise-in .8s both}
@keyframes panel-breathe{50%{box-shadow:0 0 36px #4dff1688;border-color:#b6ff6e}}
.pulse-line{animation:text-pulse 1.15s ease-in-out infinite}
@keyframes text-pulse{0%,100%{opacity:1;transform:scale(1);text-shadow:0 0 12px #4dff1666}50%{opacity:.45;transform:scale(1.06);text-shadow:0 0 28px #b6ff6e}}
.pay-panel input:focus,.pay-panel textarea:focus{outline:none;border-color:#4dff16;box-shadow:0 0 18px #4dff1666}
.card:active,.primary-button:active,.nav-link:active,.brand:active{filter:brightness(1.2)}
body:after{content:"";position:fixed;z-index:-1;width:42vw;max-width:280px;height:42vw;max-height:280px;border-radius:50%;left:-8vw;top:18vh;pointer-events:none;background:radial-gradient(circle,#4dff1644,transparent 68%);animation:orb-drift 7s ease-in-out infinite alternate}
@keyframes orb-drift{to{transform:translate(58vw,24vh) scale(1.2)}}
.ambient{animation:aurora-drift 9s ease-in-out infinite alternate}
@keyframes aurora-drift{from{transform:translate(-40px,-16px) scale(.9)}to{transform:translate(50px,40px) scale(1.15)}}
.status-dot{animation:dot-pop 1s ease-in-out infinite}
@keyframes dot-pop{50%{transform:scale(1.8);box-shadow:0 0 16px #4dff16}}
.portrait{animation:portrait-bob 3.2s ease-in-out infinite}
@keyframes portrait-bob{50%{transform:translateY(-10px)}}
.orbit-one{animation:spin 16s linear infinite}
.orbit-two{animation:spin 28s linear infinite reverse}
@keyframes spin{to{transform:rotate(360deg)}}
.floating-tag{animation:card-float 3s ease-in-out infinite}
@media(max-width:750px){
  .card.reveal{animation:rise-in .7s both,card-float 2.4s ease-in-out .4s infinite}
  .card:active,.primary-button:active{filter:brightness(1.25)}
  body:after{width:70vw;height:70vw;max-width:240px;max-height:240px}
  a.primary-button.hire{animation:hire-pulse 3.2s ease-in-out infinite}
  .pulse-line{animation:text-pulse 1.15s ease-in-out infinite}
}
@media(hover:hover){
  .card:hover{border-color:#9bfa63;box-shadow:0 16px 36px #0007}
}
