/* Short entrance sequences; motion ends after entry, leaving a calm page. */
@keyframes enter-up{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
@keyframes scene-settle{from{transform:scale(1.045)}to{transform:scale(1)}}
@keyframes emblem-enter{from{opacity:0;transform:translateY(14px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}
.hero-scene{animation:scene-settle 2.6s cubic-bezier(.2,.7,.25,1) both}
.eyebrow{animation:enter-up .65s .05s both}.hero h1{animation:emblem-enter .9s .12s both}.hero-subtitle{animation:enter-up .65s .25s both}.hero-meta{animation:enter-up .65s .32s both}.server-status{animation:enter-up .65s .4s both}.hero-actions{animation:enter-up .65s .48s both}.join-hint{animation:enter-up .65s .55s both}
.team-marker{animation:enter-up .8s .45s both}.team-marker:nth-child(2){animation-delay:.55s}.team-marker:nth-child(3){animation-delay:.65s}.team-marker:nth-child(4){animation-delay:.75s}
.button{position:relative;overflow:hidden;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s,background .22s}.button:before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,#ffffff30 50%,transparent 70%);transform:translateX(-110%);transition:transform .65s;pointer-events:none}.button:hover:before,.button:focus-visible:before{transform:translateX(110%)}.button:hover{transform:translateY(-4px)}.button:active{transform:translateY(1px) scale(.98)}
.server-status{display:table;margin:0 auto 20px;padding:9px 14px;border:1px solid #ffffff30;border-radius:30px;background:#111b15e8;color:#f4f3e9;font-size:12px;font-weight:700;line-height:1.4}.status-dot{display:inline-block;width:8px;height:8px;margin-right:9px;border-radius:50%;background:#a7ada5}.server-status[data-state="online"] .status-dot{background:#80e4a6;box-shadow:0 0 12px #80e4a650}.server-status[data-state="offline"] .status-dot{background:#edb86d}.server-status[data-state="unavailable"]{color:#d0d2c9}
.hero-logo{max-height:32svh;width:auto;max-width:min(390px,35vw)}
@media(max-width:760px){.hero-logo{max-height:none;width:min(270px,65vw);max-width:270px}.server-status{font-size:11px;margin-bottom:16px}.hero{gap:20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.hero-scene,.hero h1{transform:none}}
