/* Shared entrance: only composited opacity / transform animations. */
.page-loader{display:none}
.entry-pending .page-loader,.page-loader.loader-leaving{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;background:#07131e;color:#fff;animation:loader-safety 0s 2.4s forwards}
.page-loader[hidden]{display:none!important}
.loader-identity{display:flex;align-items:center;flex-direction:column;gap:30px;animation:loader-identity-in .36s cubic-bezier(.16,1,.3,1) both}
.loader-logo{width:clamp(190px,21vw,280px);height:auto;display:block}
.loader-track{width:120px;height:1px;background:#ffffff20;overflow:hidden}
.loader-track:after{content:'';display:block;width:50%;height:100%;background:#edc867;transform:translateX(-110%);animation:loader-sweep 1.05s cubic-bezier(.65,0,.35,1) infinite}
.loader-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.entry-pending [data-entry]{opacity:0;animation:entry-safety 0s 2.4s forwards}
.hero h1>.entry-line{display:block}
.hero h1>.entry-line:first-child{color:inherit}
.entry-pending:focus-within .page-loader{display:none}
@keyframes loader-identity-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes loader-sweep{to{transform:translateX(310%)}}
@keyframes loader-safety{to{visibility:hidden;pointer-events:none}}
@keyframes entry-safety{to{opacity:1}}
@media(prefers-reduced-motion:reduce){.entry-pending .page-loader,.page-loader.loader-leaving{display:none}.entry-pending [data-entry]{opacity:1;animation:none}.loader-identity,.loader-track:after{animation:none}}
