/* Small, once-only title entrances; layout and type sizes stay unchanged. */
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important}
.tool-title-line{display:block}
.tool-heading.title-reveal-ready .tool-title-line{opacity:0;transform:translateY(11px);transition:opacity .624s cubic-bezier(.22,.05,.2,1),transform .754s cubic-bezier(.22,.05,.2,1)}
.tool-heading.title-reveal-ready .tool-title-line:nth-child(2){transition-delay:117ms}
.tool-heading.is-revealed .tool-title-line{opacity:1;transform:none}

/* The markers are projected from the rotating model in story-features.js. */
.brain-leaders{z-index:2}.brain-leaders g{transition:opacity .25s}
.brain-callout{z-index:3;text-shadow:0 1px 8px #0d1828}.brain-stamp{z-index:3}
.brain-leaders path{stroke:#b0d7f37a;stroke-width:.85}
.feature-footnote strong{color:#bdd3ef;font-weight:650}

/* Analyze, then reveal the story: two distinct, centered stages. */
.analysis-stage{height:300px;padding:0;overflow:hidden;background:radial-gradient(ellipse at 50% 45%,#28486755,transparent 73%)}
.analysis-input{position:absolute;inset:66px 26px auto;height:154px;gap:15px;transition:opacity .36s ease,transform .5s var(--demo-ease),filter .36s ease}
.analysis-frame,.analysis-transcript{box-shadow:0 12px 28px #07101e33;border-color:#aacbf33c}
.analysis-frame{background:radial-gradient(ellipse at 55% 55%,#5a91af55,transparent 70%),#17283e}
.frame-grid{animation:visual-drift 7s ease-in-out infinite alternate}
.frame-target{border-radius:4px;left:34%;top:28%;width:37%;height:48%;animation:visual-track 4.8s ease-in-out infinite alternate}
.frame-target:before{border-radius:50%;top:10%;width:19px;height:19px}
.frame-target:after{content:'';position:absolute;left:23%;right:23%;top:48%;bottom:8%;border:1px solid #bbdcff44;border-radius:20px 20px 4px 4px}
.frame-scan{position:absolute;left:0;right:0;height:28px;top:24%;background:linear-gradient(transparent,#acd9ff15);border-bottom:1px solid #b5dcff65;animation:visual-scan 4s ease-in-out infinite;opacity:.6}
.analysis-transcript{padding:37px 15px 40px}
.analysis-transcript p{font-size:calc(14px * var(--ark-type-scale,1));line-height:1.6}
.speech-wave{display:flex;align-items:center;justify-content:space-between;gap:3px;height:29px;bottom:15px;background:none;mask-image:linear-gradient(90deg,transparent,#000 8% 92%,transparent)}
.speech-wave i{display:block;flex:1;height:100%;background:#a8cefa;border-radius:3px;transform:scaleY(var(--level));animation:voice-wave 1.1s ease-in-out infinite alternate;animation-delay:calc(var(--bar) * -73ms);opacity:.75}
.analysis-progress{position:absolute;bottom:28px;left:50%;width:155px;transform:translate(-50%,8px);opacity:0;transition:opacity .2s,transform .35s;text-align:center}
.analysis-progress span{font-size:10px;letter-spacing:.08em;color:#b7d5f5}
.analysis-progress i{display:block;width:100%;height:2px;margin-top:9px;background:#a9c9ff18;overflow:hidden}
.analysis-progress i:after{content:'';display:block;width:100%;height:100%;background:#b5dbff;transform:scaleX(0);transform-origin:left;box-shadow:0 0 9px #99ceff}
.analysis-stage[data-state=analyzing] .analysis-progress{opacity:1;transform:translate(-50%,0)}
.analysis-stage[data-state=analyzing] .analysis-progress i:after{animation:analyze-progress 1.6s cubic-bezier(.18,.55,.35,1) forwards}
.analysis-stage[data-state=analyzing] .analysis-frame,.analysis-stage[data-state=analyzing] .analysis-transcript{border-color:#b0d8ff90;box-shadow:0 0 26px #85bfff1a}
.analysis-stage[data-state=analyzing] .frame-scan{animation-duration:.65s;opacity:1}
.analysis-stage[data-state=analyzing] .analysis-transcript p span{animation:word-analyze .6s ease-in-out 2 alternate;animation-delay:calc(var(--word)*70ms)}
.analysis-result{position:absolute;inset:65px 23px auto;text-align:center;visibility:hidden;pointer-events:none}
.your-story{display:block;color:#d5e8ff;letter-spacing:.12em;text-transform:uppercase;font-size:12px;margin-bottom:24px;opacity:0;transform:translateY(10px);transition:opacity .5s .18s,transform .6s var(--demo-ease) .18s}
.story-beats{display:flex;gap:12px;perspective:600px}
.story-beats>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:96px;padding:10px 5px;font-size:14px;font-weight:500;color:#d7e9ff;border-color:#a9c9ff55;background:linear-gradient(145deg,#2b4764,#192d46);box-shadow:0 12px 26px #07101d55;opacity:0;transform:translateY(23px) rotateX(-12deg) scale(.96);transition:opacity .45s,transform .65s cubic-bezier(.16,1,.3,1)}
.story-beats>span:nth-child(2){transition-delay:.09s;background:linear-gradient(145deg,#4a425d,#292941)}
.story-beats>span:nth-child(3){transition-delay:.18s;background:linear-gradient(145deg,#365852,#203e3d)}
.story-beats small{font-size:10px;letter-spacing:.12em;margin:0;color:#a9c9ff}
.analysis-stage[data-state=complete] .analysis-input{opacity:0;transform:translateY(-12px) scale(.94);filter:blur(3px);pointer-events:none}
.analysis-stage[data-state=complete] .analysis-result{visibility:visible}
.analysis-stage[data-state=complete] .your-story,.analysis-stage[data-state=complete] .story-beats>span{opacity:1;transform:none}
.analysis-demo .story-demo-controls{justify-content:center}
.analysis-demo button:disabled{opacity:.65;cursor:progress}
.analysis-stage[data-state=complete] .analysis-input *{animation-play-state:paused}
.story-interactive:not(.demo-in-view) .analysis-stage *{animation-play-state:paused}
@keyframes voice-wave{0%{transform:scaleY(calc(var(--level)*.3))}55%{transform:scaleY(var(--level))}100%{transform:scaleY(calc((1 - var(--level))*.7 + .15))}}
@keyframes visual-track{from{transform:translate(-7px,2px) scale(.96)}to{transform:translate(9px,-3px) scale(1.05)}}
@keyframes visual-drift{from{transform:perspective(150px) rotateX(15deg) translate(-3px,0) scale(1.2)}to{transform:perspective(150px) rotateX(10deg) translate(5px,5px) scale(1.25)}}
@keyframes visual-scan{0%,100%{transform:translateY(0);opacity:.15}50%{transform:translateY(66px);opacity:.75}}
@keyframes word-analyze{to{color:#fff;background:#a9c9ff2b}}
@keyframes analyze-progress{to{transform:scaleX(1)}}

/* A larger, uncropped portrait, aligned with the founder note. */
.founder-note{align-items:center;gap:30px;padding:26px 30px}
.founder-avatar{width:100px;height:100px;align-self:center}
.founder-note .founder-avatar img{transform:none;object-fit:cover;object-position:50% 50%}
@media(max-width:1000px){.founder-avatar{width:100px;height:100px}.founder-note{gap:24px}}
@media(max-width:760px){.analysis-input{left:16px;right:16px;gap:10px}.analysis-transcript{padding:36px 10px 42px}.analysis-transcript p{font-size:calc(12px * var(--ark-type-scale,1))}.analysis-result{left:16px;right:16px}.story-beats{gap:8px}.story-beats>span{font-size:12px}.founder-note{flex-direction:row;gap:clamp(12px,3vw,20px);padding:20px 16px;align-items:center}.founder-avatar{width:clamp(60px,17vw,94px);height:auto;aspect-ratio:1;flex-shrink:0}.founder-note>div{min-width:0;flex:1}}
@media(prefers-reduced-motion:reduce){.tool-heading.title-reveal-ready .tool-title-line{opacity:1;transform:none;transition:none}.analysis-stage *{animation:none!important;transition:none!important}}
.motion-paused .tool-heading.title-reveal-ready .tool-title-line{opacity:1;transform:none;transition:none}

/* Keep Drew's quote with creative control: beside the demo, or immediately below it. */
.feature-copy .creative-control-quote{margin:25px 0 0;padding-top:22px;border-top:1px solid #9bc7ff2a;color:#adc3df}
.creative-control-quote em{color:#d6e8ff}
@media(max-width:760px){
 #creative-control{grid-template-areas:"intro" "demo" "quote"}
 #creative-control>.feature-copy{display:contents}
 #creative-control .feature-intro{grid-area:intro}
 #creative-control>.feature-visual-column{grid-area:demo}
 #creative-control .creative-control-quote{grid-area:quote;margin:0;padding:5px 0 5px 18px;border-top:0;border-left:2px solid #9bc7ff60}
}
