/* Progressive motion: content stays visible without JavaScript. */
.reading-progress{position:fixed;inset:0 auto auto 0;height:3px;width:100%;transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#2455d6,#32b5b0);z-index:1000;pointer-events:none}
.premium-hero:before{content:'';position:absolute;width:600px;height:600px;right:-140px;top:-180px;background:radial-gradient(ellipse,#2455d61c,transparent 65%);pointer-events:none;animation:ambient-drift 16s ease-in-out infinite alternate}
.premium-hero h1 em{background:linear-gradient(110deg,var(--ink),var(--blue),#10706c,var(--ink));background-size:250% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:ink-flow 12s ease-in-out infinite}
.showcase-shell{perspective:1200px}.showcase-workbench{transform:rotateX(var(--tilt-y,0deg)) rotateY(var(--tilt-x,0deg));transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s;will-change:auto}.showcase-workbench:hover{box-shadow:0 28px 80px #14263022}
.bench-route svg path{stroke-dasharray:7 9;animation:signal-flow 9s linear infinite}.bench-route svg circle{animation:node-breathe 4s ease-in-out infinite;transform-origin:center}.status-ring,.showcase-dot{animation:status-pulse 3s ease-in-out infinite}
.collection-card{position:relative;isolation:isolate;overflow:hidden;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s,border-color .4s}.collection-card:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(360px circle at var(--pointer-x,50%) var(--pointer-y,50%),#2455d618,transparent 70%);opacity:0;transition:opacity .4s}.collection-card:hover:before{opacity:1}.collection-card:hover{transform:translateY(-7px);box-shadow:0 24px 45px #14263012;border-color:var(--blue)}.round-arrow{transition:transform .35s,background .35s,color .35s}.collection-card:hover .round-arrow{transform:rotate(45deg);background:var(--blue);color:var(--paper)}.workflow-icon{transition:transform .4s}.collection-card:hover .workflow-icon{transform:translateY(-4px)}
.btn{position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s,background .25s}.btn:after{content:'';position:absolute;inset:-100% auto -100% -80%;width:35%;transform:rotate(25deg);background:linear-gradient(90deg,transparent,#ffffff38,transparent);transition:left .65s;pointer-events:none}.btn:hover:after{left:150%}.btn:active{transform:translateY(1px) scale(.98)}.desktop-nav a{position:relative}.desktop-nav a:after{content:'';position:absolute;left:0;right:0;bottom:-7px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s}.desktop-nav a:hover:after{transform:scaleX(1)}
.motion-ready .reveal-pending{opacity:0;transform:translateY(24px)}.motion-ready .reveal-item{transition:opacity .75s ease var(--reveal-delay,0ms),transform .75s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0ms)}
.mobile-menu[open]{animation:menu-arrive .4s cubic-bezier(.2,.8,.2,1)}.mobile-menu[open]::backdrop{animation:backdrop-arrive .4s}.mobile-menu[open] nav a{animation:link-arrive .5s both}.mobile-menu nav a:nth-child(2){animation-delay:60ms}.mobile-menu nav a:nth-child(3){animation-delay:120ms}.mobile-menu nav a:nth-child(4){animation-delay:180ms}.mobile-menu{max-height:100dvh;overflow-y:auto}
[data-demo]{transition:background .25s,color .25s,box-shadow .25s}.bench-finding.demo-changing{animation:finding-arrive .45s ease both}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
@keyframes ambient-drift{to{transform:translate(-90px,90px) scale(1.2)}}@keyframes ink-flow{50%{background-position:100% 50%}}@keyframes signal-flow{to{stroke-dashoffset:-160}}@keyframes node-breathe{50%{opacity:.45}}@keyframes status-pulse{50%{box-shadow:0 0 0 7px #2455d60b}}@keyframes menu-arrive{from{opacity:0;transform:translateY(-18px) scale(.98)}to{opacity:1;transform:none}}@keyframes backdrop-arrive{from{opacity:0}to{opacity:1}}@keyframes link-arrive{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes finding-arrive{from{opacity:.3;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-ready .reveal-pending{opacity:1;transform:none}.showcase-workbench,.collection-card:hover{transform:none}.reading-progress{display:none}}
@media(hover:none){.collection-card:hover{transform:none}.showcase-workbench{transform:none}}
