/* Identity 01/02 are authoritative. Motion extends behavior, not visual styling. */
:root{--ink:#101010;--ink-soft:#454545;--ink-faint:#777777;--paper:#f7f7f5;--paper-deep:#ededeb;--line:#c9c9c5;--cyan:#00AEEF;--cyan-dark:#006f9b;--magenta:#ED008C;--magenta-dark:#920050;--yellow:#FFF000;--yellow-dark:#8a8100;--white:#ffffff;--key:#101010;--muted:var(--ink-soft);--accent:var(--cyan);--stage:var(--paper-deep)}
.dark{--paper:#101010;--paper-deep:#454545;--ink:#f7f7f5;--ink-soft:#c9c9c5;--ink-faint:#777777;--line:#454545;--muted:var(--ink-soft);--stage:var(--paper-deep)}
::selection{background:var(--magenta);color:var(--white)}
body{background:var(--paper)}h1 em,h2 em,.dark h1 em,.dark h2 em{color:var(--cyan);font-style:normal}
.hero{padding-top:40px}.hero-copy{padding-bottom:56px}.hero-copy h1{font-size:clamp(64px,7.65vw,124px);font-weight:600;letter-spacing:-.07em;line-height:.98}.type-line{display:block;overflow:hidden}.type-line>span{display:block;width:max-content;max-width:100%}.type-line:last-child{color:var(--cyan)}
.hero-art{inset:30px 3.5% 78px 47%;border-radius:2px;border:1px solid var(--ink)}.hero-number{left:51%;top:10%;background:var(--paper);padding:9px 12px;z-index:4;color:var(--ink)}.hero .floating-note{top:35%;right:1.8%;border:1px solid var(--line);border-left:2px solid var(--magenta);background:var(--paper);padding:19px 22px;color:var(--ink)}.hero-copy p,.dark .hero-copy p{color:var(--ink-soft);max-width:380px;font-size:16px}
.btn.primary{background:var(--cyan);color:var(--key);border-color:var(--cyan)}.btn.primary:hover{background:var(--cyan-dark);color:var(--white);border-color:var(--cyan-dark)}.btn:hover,.pill:hover{background:var(--paper-deep);color:var(--ink)}.nav-links a:after{background:var(--cyan)}.eyebrow:before{background:currentColor}.hero-copy .eyebrow{color:var(--cyan-dark)}.dark .hero-copy .eyebrow{color:var(--cyan)}
.scene{touch-action:none;background:var(--paper-deep)}.scene-label{background:var(--paper);padding:8px 10px;font-size:10px;color:var(--ink)!important;left:18px;bottom:18px;max-width:68%;border:1px solid var(--line)}.scene[data-gesture-part]:not([data-gesture-part=none]) .scene-label{border-left:2px solid var(--magenta)}.scene-button{border:1px solid var(--ink);background:var(--paper);color:var(--ink);bottom:18px;font-size:11px}.dark .scene-button{color:var(--ink)}
.hero-caption{bottom:22px}.hero-sequence{position:absolute;z-index:4;left:51%;bottom:145px;display:flex;gap:4px}.hero-sequence button{font:10px Mono;background:var(--paper);color:var(--ink);padding:9px 12px;border:1px solid var(--line);border-radius:2px;transition:background .18s,color .18s}.hero-sequence button:hover,.hero-sequence button[aria-pressed=true]{background:var(--ink);color:var(--paper)}
.intro{background:var(--key);color:#f7f7f5}.intro h2 em{color:var(--cyan)}.intro .large-copy span{color:#f7f7f5}.intro .signal-score i,.motion-score i{background:var(--magenta)}
.story-panel,.dark .story-panel{background:var(--paper);border-top:1px solid var(--line)}.story-panel h2 em,.dark .story-panel h2 em{color:var(--cyan)}.story-panel p,.dark .story-panel p{color:var(--ink-soft)}.story-panel:last-child h2 em{color:var(--magenta)}.product-window,.dark .story-panel .product-window{border:1px solid var(--ink);border-radius:2px;background:var(--paper-deep)}.chat-slip{border-left:2px solid var(--magenta);background:var(--paper);color:var(--ink)}.message-strip,.dark .message-strip{background:var(--paper);border:1px solid var(--line);color:var(--ink)}.message-strip:nth-child(even),.dark .message-strip:nth-child(even){background:var(--ink);color:var(--paper)}
.demo-teaser,.dark .demo-teaser,.creator,.dark .creator{background:var(--paper);border-top:1px solid var(--line)}.demo-portrait{background:var(--paper-deep)}.demo-portrait img{mix-blend-mode:normal}.creator h2 em,.dark .creator h2 em{color:var(--magenta)}.steps li{border-color:var(--line)}.steps span{color:var(--ink-faint)}
.final-cta,.dark .final-cta{background:var(--paper);color:var(--ink);border-top:1px solid var(--ink)}.final-cta h2 em{color:var(--cyan)}.progress{background:var(--cyan);height:2px}
.chat-panel,.dark .chat-panel,.download-panel,.dark .download-panel{background:var(--paper-deep)}.bubble.user,.dark .bubble.user{background:var(--ink);color:var(--paper)}.bubble.user small{color:var(--paper)}.bubble small{color:var(--ink-faint)}.mode-tag,.dark .mode-tag{background:var(--yellow);color:var(--key)}.status,.dark .status,.chat-note,.dark .chat-note,.control-label,.dark .control-label{color:var(--ink-soft)}.composer{border-color:var(--line)}.composer:focus-within{border-color:var(--cyan)}.composer button{background:var(--cyan);color:var(--key)}.composer button:hover{background:var(--cyan-dark);color:var(--white)}.mood-controls button[aria-pressed=true],.mood-controls button:hover,.dark .mood-controls button[aria-pressed=true]{background:var(--magenta);color:var(--white);border-color:var(--magenta)}.stage-controls button{background:var(--paper);border-color:var(--line);color:var(--ink)}.stage-controls button:hover{background:var(--ink);color:var(--paper)}.resource-row:hover,.dark .resource-row:hover{background:var(--paper-deep)}.resource-row,.editorial .resource-row{border-color:var(--line)}.release-note,.dark .release-note{border-color:var(--yellow)}.os-buttons button{border-color:var(--line)}.os-buttons [aria-selected=true]{background:var(--ink);color:var(--paper)}
.editorial .hero-copy h1 .type-line{display:inline-block;overflow:visible}.editorial .hero-copy h1 .type-line:not(:last-child){margin-right:.15em}.editorial .hero-art{inset:440px 4% 75px;border-radius:2px}.editorial .hero-sequence{left:7%;bottom:110px}.editorial .hero-copy h1{font-size:clamp(58px,8.2vw,135px)}
@media(max-width:760px){.hero{min-height:1110px}.hero-copy{padding:0}.hero-copy h1{font-size:64px;letter-spacing:-.065em}.hero-copy p{font-size:14px}.hero-art{inset:465px 6% 80px;border-radius:2px}.hero .floating-note{top:auto;bottom:215px;right:4%;font-size:11px;padding:12px;max-width:160px}.hero .hero-sequence{left:10%;bottom:145px}.hero-sequence button{font-size:9px;padding:8px 10px}.hero-art .scene-label{top:18px;bottom:auto;left:12px;max-width:85%;font-size:8px}.editorial .hero{min-height:1170px}.editorial .hero-copy h1{font-size:63px}.editorial .hero-art{top:535px}.editorial .hero-sequence{left:10%;bottom:145px}.lab-stage .scene-label{bottom:74px;top:auto}.stage-controls{bottom:22px}.caption-row{font-size:9px}}