/* Cursor-driven depth: fixed layout, moving surfaces. */
.hero-mascot{position:relative;display:block;transform-style:preserve-3d;overflow:visible}
.hero-mascot img,.hero-mascot canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block}
#living-mascot{opacity:0}.hero-mascot.is-live #living-mascot{opacity:1}.hero-mascot.is-live .mascot-fallback{opacity:0}
.mascot-job{position:absolute;z-index:4;left:calc(50% + 75px);top:-1px;color:#8966af;pointer-events:none;font:italic 19px Georgia,serif;rotate:6deg;display:flex;align-items:flex-start;gap:2px}
.mascot-job svg{width:66px;height:64px;margin:10px 0 0 -10px;overflow:visible;transform:scaleX(-1)}.mascot-job path{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.reactive-word{display:inline-block;position:relative;transform:perspective(500px) translate3d(var(--word-x,0px),var(--word-y,0px),0) rotate(var(--word-r,0deg));transition:transform .3s cubic-bezier(.2,.8,.2,1),color .25s,text-shadow .25s;transform-origin:50% 80%;will-change:auto}
@media(hover:hover) and (pointer:fine){.reactive-word:hover{color:#8c62bd;text-shadow:0 3px 0 #dfccef,0 7px 14px #7250af1a}.hero h1 .reactive-word:hover{color:#8b5cb9;text-shadow:0 5px 0 #d6bce9,0 13px 18px #7250af26}}
.vision-demo,.signup-card{isolation:isolate;transform-style:preserve-3d}.vision-demo:before,.signup-card:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(230px circle at var(--light-x,50%) var(--light-y,0%),#e5d2fa5e,transparent 75%);opacity:var(--light-on,0);transition:opacity .35s;z-index:-1}
.vision-demo .vision-heading,.vision-demo .brief-bottom{transform:translateZ(8px)}.vision-demo .brief-copy{transform:translateZ(22px)}
.brief-copy{border-radius:13px;margin:10px -12px;padding:14px 12px 12px;transition:background .25s,box-shadow .25s}
.brief-copy:hover{background:#f4edfba8;box-shadow:inset 0 1px 0 #fff,0 3px 0 #e6d9f099}
.signup-card{transform:perspective(1100px) rotateX(var(--field-rx,0deg)) rotateY(var(--field-ry,0deg));transition:transform .35s ease-out}
.signup-card:focus-within{transform:none}.signup-card h3{transform:translateZ(12px)}
.form-row input:hover{border-color:#a685c4;background:#fdfbff;box-shadow:0 4px 0 #eadff3}
.form-row input:focus{background:white;box-shadow:0 0 0 4px #eadff6,0 5px 0 #dcc8ed}
.orbit-label{cursor:default;transition:box-shadow .25s,filter .25s}.orbit-label:hover{filter:brightness(1.04);box-shadow:0 7px 0 #d6c2e6,0 18px 28px #5f368524}
.brief-examples button{box-shadow:0 0 0 transparent;transition:background .2s,transform .25s,box-shadow .25s}.brief-examples button:hover{transform:translateY(-4px) rotate(-2deg);box-shadow:0 4px 0 #dac6ea}
.editor-logos>div{perspective:500px}.editor-logos>div:hover img{transform:translateY(-9px) rotateY(-15deg) rotateZ(-6deg) scale(1.1)}
@media(max-width:760px){.mascot-job{top:0;left:calc(50% + 60px);font-size:16px}.mascot-job svg{width:51px;height:52px}}
@media(max-width:380px){.mascot-job{left:calc(50% + 35px);font-size:15px;top:5px}.mascot-job svg{width:45px}}
@media(prefers-reduced-motion:reduce){.reactive-word,.signup-card,.vision-demo .brief-copy{transform:none!important}.mascot-job{rotate:0deg}}
@media(max-width:380px){.mascot-orbit .label-right{top:215px;right:0}}

/* An arrow starting beneath the lettering and ending on the brain. */
.mascot-job{display:block;rotate:0deg;text-align:center;width:80px}
.mascot-job svg{display:block;width:80px;height:88px;margin:0;transform:none}
@media(max-width:760px){.mascot-job{left:calc(50% + 50px)}.mascot-job svg{width:70px;height:78px}}
@media(hover:hover) and (pointer:fine){html,body,body *{cursor:url('/join/assets/glass-cursor.svg') 4 3,auto!important}input[type=email],textarea{cursor:text!important}}
.workflow-scrubber{display:flex;align-items:center;gap:18px;flex:1;min-width:0;margin:0}
.workflow-scrubber output{font:500 11px tabular-nums,sans-serif;color:#8966af;min-width:30px}
#overview-scrub{appearance:none;-webkit-appearance:none;min-width:50px;width:100%;height:8px;border:1px solid #d8c5e9;border-radius:20px;background:linear-gradient(to right,#a586ca 0%,#a586ca var(--progress,0%),#eee5f5 var(--progress,0%),#eee5f5 100%);box-shadow:inset 0 2px 3px #76529b12;outline-offset:8px}
#overview-scrub::-webkit-slider-thumb{appearance:none;width:22px;height:22px;border:2px solid #fff;border-radius:50%;background:linear-gradient(140deg,#dac2f4,#9b70c7);box-shadow:0 3px 0 #79549f,0 4px 10px #79549f33}
#overview-scrub::-moz-range-thumb{width:18px;height:18px;border:2px solid #fff;border-radius:50%;background:linear-gradient(140deg,#dac2f4,#9b70c7);box-shadow:0 3px 0 #79549f}
.overview-toolbar{gap:24px}.workflow-scrubber{padding:8px 0}

#overview-scrub:focus:not(:focus-visible){outline:none}

.mascot-orbit>.job-arrow{position:absolute;inset:0;width:100%;height:100%;overflow:visible;z-index:4;pointer-events:none;color:#8966af}.job-arrow path{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

.workflow-scrubber{max-width:560px;gap:12px;padding:4px 0}.overview-toolbar{padding-block:12px;justify-content:flex-end}.workflow-scrubber{margin-right:auto}#overview-scrub{height:5px}#overview-scrub::-webkit-slider-thumb{width:16px;height:16px;box-shadow:0 2px 0 #79549f,0 3px 7px #79549f26}#overview-scrub::-moz-range-thumb{width:12px;height:12px;box-shadow:0 2px 0 #79549f}.workflow-scrubber output{font-size:10px}

/* Public launch: an easy-to-find seek control above the animation. */
.overview-toolbar{border-top:0;border-bottom:1px solid #d9c9e8;background:#f0e6fa;padding:18px 24px;gap:20px}
.workflow-scrubber{max-width:none;gap:16px;padding:8px 0;min-height:44px}
.scrub-caption{font-size:13px;font-weight:650;color:#563077;white-space:nowrap}
#overview-scrub{height:10px;cursor:pointer;background:linear-gradient(to right,#8050b2 0%,#8050b2 var(--progress,0%),#dfcbed var(--progress,0%),#dfcbed 100%)}
#overview-scrub::-webkit-slider-thumb{width:24px;height:24px;background:#8050b2;border:3px solid #fff;box-shadow:0 2px 5px #56307755}
#overview-scrub::-moz-range-thumb{width:20px;height:20px;background:#8050b2;border:3px solid #fff;box-shadow:0 2px 5px #56307755}
.workflow-scrubber output{font-size:13px;color:#563077;font-variant-numeric:tabular-nums}
.purchase-price{font-size:38px;font-weight:700;margin:16px 0}.purchase-price span{display:block;font-size:14px;font-weight:400}.signup-card>.button{margin:12px 0}
@media(max-width:600px){.overview-toolbar{padding:12px 14px;gap:12px}.workflow-scrubber{display:grid;grid-template-columns:minmax(60px,1fr) 34px;gap:12px}.scrub-caption{grid-column:1 / -1;font-size:12px}.overview-toolbar>div{align-self:center}.signup-card .platform-note{line-height:1.65}}
