@font-face{font-family:'Linkera Syne';font-style:normal;font-weight:700;font-display:swap;src:url('./syne-latin-700.woff2') format('woff2')}
.linkera-brand{display:inline-flex;align-items:center;gap:8px;min-height:58px;color:var(--ak-accent,#c4b0ff)}
.linkera-wordmark{font-family:'Linkera Syne',sans-serif;font-weight:700;font-size:30px;line-height:1;letter-spacing:-.9px;font-synthesis:none}
.linkera-brand .linkera-wordmark{background:linear-gradient(105deg,#dccfff 6%,#c4b0ff 57%,#a88bdf 100%);background-clip:text;-webkit-background-clip:text;color:transparent;animation:linkera-wordmark-in .75s cubic-bezier(.25,.46,.32,1) both}
@keyframes linkera-wordmark-in{from{opacity:.3}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.linkera-brand .linkera-wordmark{animation:none}}
.linkera-cube-view{--cube-size:32px;--cube-pitch:calc(var(--cube-size)/3);--cubie-size:calc(var(--cube-pitch)*.94);--cubie-half:calc(var(--cubie-size)/2);--cube-ease:cubic-bezier(.45,0,.2,1);display:grid;place-items:center;width:58px;height:58px;perspective:250px;perspective-origin:50% 46%;flex:none}
.linkera-cube-hover,.linkera-cube-3d,.linkera-cube-layer,.linkera-cubie{display:block;position:relative;transform-style:preserve-3d}
.linkera-cube-hover,.linkera-cube-3d{width:var(--cube-size);height:var(--cube-size)}
.linkera-cube-hover{transition:transform .8s cubic-bezier(.22,.61,.36,1)}
.linkera-cube-3d{transform:rotateX(-23deg) rotateY(-32deg);animation:linkera-cube-orbit 32s linear infinite}
.linkera-cube-layer{position:absolute;left:50%;top:50%;width:0;height:0;transform:translate3d(0,var(--layer-y),0)}
.linkera-cubie{position:absolute;left:calc(var(--cubie-size)/-2);top:calc(var(--cubie-size)/-2);width:var(--cubie-size);height:var(--cubie-size);transform:translate3d(var(--cubie-x),0,var(--cubie-z))}
.linkera-cubie-face{position:absolute;inset:0;display:block;background:#19161e;border:.35px solid #302a36;border-radius:calc(var(--cubie-size)*.09);backface-visibility:hidden;-webkit-backface-visibility:hidden}
.linkera-cubie-metal{background:linear-gradient(145deg,#68616f 0%,#39333f 46%,#4d4358 100%);border-color:#84758f;box-shadow:inset .35px .45px .2px #c8b4e23b,inset -.4px -.4px .3px #08060b80}
.linkera-cubie-satin{background:linear-gradient(145deg,#554e60,#28232f 48%,#393040)}
.linkera-cubie-top.linkera-cubie-metal{background:linear-gradient(145deg,#77707f,#443c4e 58%,#5d5069)}
.linkera-cubie-violet,.linkera-cubie-top.linkera-cubie-violet{background:linear-gradient(145deg,#e3d4ff,#b298df 45%,#8166aa);border-color:#ddc8ff;box-shadow:inset .4px .5px .3px #fff7,inset -.4px -.5px .3px #4a315c90}
.linkera-cubie-front{transform:translateZ(var(--cubie-half))}.linkera-cubie-back{transform:rotateY(180deg) translateZ(var(--cubie-half))}.linkera-cubie-right{transform:rotateY(90deg) translateZ(var(--cubie-half))}.linkera-cubie-left{transform:rotateY(-90deg) translateZ(var(--cubie-half))}.linkera-cubie-top{transform:rotateX(90deg) translateZ(var(--cubie-half))}.linkera-cubie-bottom{transform:rotateX(-90deg) translateZ(var(--cubie-half))}
/* A complete linear orbit has identical pose and velocity at the loop boundary. */
@keyframes linkera-cube-orbit{from{transform:rotateX(-23deg) rotateY(-32deg)}to{transform:rotateX(-23deg) rotateY(-392deg)}}
/* Layer motion starts and ends at rest. Nine physical cubies rotate as one row. */
[data-variant='layers'] .linkera-cube-layer[data-layer='-1']{animation:linkera-cube-upper 18s var(--cube-ease) infinite}
[data-variant='layers'] .linkera-cube-layer[data-layer='0']{animation:linkera-cube-middle 18s var(--cube-ease) infinite}
[data-variant='layers'] .linkera-cube-layer[data-layer='1']{animation:linkera-cube-lower 18s var(--cube-ease) infinite}
@keyframes linkera-cube-upper{0%,8%{transform:translate3d(0,var(--layer-y),0) rotateY(0deg)}22%,35%{transform:translate3d(0,var(--layer-y),0) rotateY(90deg)}49%,100%{transform:translate3d(0,var(--layer-y),0) rotateY(0deg)}}
@keyframes linkera-cube-middle{0%,31%{transform:translate3d(0,var(--layer-y),0) rotateY(0deg)}45%,56%{transform:translate3d(0,var(--layer-y),0) rotateY(-90deg)}70%,100%{transform:translate3d(0,var(--layer-y),0) rotateY(0deg)}}
@keyframes linkera-cube-lower{0%,55%{transform:translate3d(0,var(--layer-y),0) rotateY(0deg)}69%,80%{transform:translate3d(0,var(--layer-y),0) rotateY(90deg)}94%,100%{transform:translate3d(0,var(--layer-y),0) rotateY(0deg)}}
/* The second motion opens the real 3×3×3 lattice, then closes every seam. */
[data-variant='rebuild'] .linkera-cubie{animation:linkera-cube-rebuild 12s var(--cube-ease) infinite}
@keyframes linkera-cube-rebuild{0%,12%,88%,100%{transform:translate3d(var(--cubie-x),0,var(--cubie-z))}38%,54%{transform:translate3d(calc(var(--cubie-x)*1.8),calc(var(--layer-y)*.8),calc(var(--cubie-z)*1.8))}}
.linkera-cube-view[data-variant] .linkera-cube-3d,.linkera-cube-view[data-variant] .linkera-cube-layer,.linkera-cube-view[data-variant] .linkera-cubie{animation-play-state:paused}
.linkera-cube-view[data-variant][data-animated='true'] .linkera-cube-3d,.linkera-cube-view[data-variant][data-animated='true'] .linkera-cube-layer,.linkera-cube-view[data-variant][data-animated='true'] .linkera-cubie{animation-play-state:running}
.linkera-cube-view[data-animated='true'] .linkera-cube-3d{will-change:transform}
@media(hover:hover) and (pointer:fine){.linkera-brand:hover .linkera-cube-hover{transform:translateY(-2px) scale3d(1.06,1.06,1.06) rotateZ(-3deg)}}
@media(prefers-reduced-motion:reduce){.linkera-cube-view .linkera-cube-3d,.linkera-cube-view .linkera-cube-layer,.linkera-cube-view .linkera-cubie{animation:none!important;will-change:auto!important}.linkera-cube-hover{transition:none;transform:none!important}}

/* Canvas keeps the same reserved logo space while its renderer loads. */
.linkera-cube-film{perspective:none;overflow:visible}
.linkera-cube-film>canvas,.linkera-cube-film>img,.linkera-cube-film>video{grid-area:1/1;display:block;width:100%;height:100%;object-fit:contain}
.linkera-cube-film>canvas{transition:opacity .18s linear}
.linkera-cube-film[data-canvas-ready="false"]>canvas{opacity:0}
.linkera-cube-film[data-canvas-ready="true"]>canvas{opacity:1}
@media(prefers-reduced-motion:reduce){.linkera-cube-film>canvas{transition:none}}
.linkera-cube-film>video{mix-blend-mode:screen;filter:brightness(1.7)}
