/* Hallmark · genre: modern-minimal · macrostructure: Feature Stack · theme: existing Coral brand · nav: N9 · footer: Ft2
   Audience: technology investors. Purpose: a scroll-led research journey. Tone: direct, precise, imaginative.
   User explicitly requests parallax and scroll-scrubbed storytelling; motion is functional and has a static fallback. */
:root{--space-lg:1.5rem;--space-xl:2.5rem;--space-2xl:4rem;--space-3xl:6rem;--space-4xl:9rem;--section-space:clamp(5rem,10vw,10rem);--header-height:4.5rem;--type-display:clamp(2.6rem,5.5vw,5.2rem);--type-heading:clamp(2.2rem,4.4vw,4.4rem);--type-body:clamp(1rem,1.5vw,1.2rem);--z-stage:1;--z-content:10;--z-header:100;--ease-out:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}html,body{margin:0;overflow-x:clip}html{scroll-padding-top:calc(var(--header-height) + 1rem)}body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.6}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}a:focus-visible{outline:3px solid var(--accent-ink);outline-offset:5px}button,a{touch-action:manipulation}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:var(--display);font-weight:500;line-height:1.08;letter-spacing:-.035em;min-width:0;overflow-wrap:anywhere;text-wrap:balance;font-style:normal}h1{font-size:var(--type-display)}h2{font-size:var(--type-heading)}h3{font-size:1.1rem;font-weight:500}p{max-width:65ch}sup{font-size:.7em;margin-inline-start:3px;color:var(--muted)}img{max-width:100%}.skip{position:fixed;top:-5rem;left:1rem;background:var(--white);padding:12px;z-index:var(--z-header)}.skip:focus{top:.5rem}
.masthead{height:var(--header-height);padding-inline:var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:1rem;position:relative;z-index:var(--z-header);background:var(--paper)}.brand{display:inline-flex;gap:10px;align-items:center;white-space:nowrap;text-decoration:none;font-family:var(--display);font-size:.95rem}.edition{display:none;color:var(--muted);font-size:.875rem}.notes-link{font-size:.875rem;white-space:nowrap;min-height:44px;display:flex;align-items:center;gap:8px;text-decoration:none}.notes-link:hover,.action-link:hover{color:var(--accent-ink)}.read-progress{height:2px;position:fixed;inset:0 0 auto;z-index:var(--z-header);pointer-events:none}.read-progress span{display:block;height:100%;background:var(--accent);transform:scaleX(0);transform-origin:left}
.film{position:relative}.film-stage{height:350px;position:relative;pointer-events:none}.film-stage canvas{display:block;width:100%;height:100%}#canvas-host{position:absolute;inset:0}.scene-fallback{height:100%;display:flex;align-items:center;justify-content:center;gap:1rem;flex-direction:column}.scene-fallback>img{height:90px;width:auto}.scene-fallback>span{font-size:.875rem;color:var(--muted)}.fallback-team{display:flex;gap:20px}.fallback-team img{width:42px;height:48px}.webgl-ready .scene-fallback{display:none}.scene-labels{position:absolute;inset:0;opacity:0}.scene-labels span{position:absolute;left:0;top:0;padding:4px 10px;background:var(--paper);font-size:.875rem;white-space:nowrap;line-height:1.2;opacity:0}.scene-caption{position:absolute;bottom:1rem;left:var(--gutter);right:var(--gutter);display:none;flex-direction:column;font-size:.875rem;color:var(--muted);gap:4px}.scene-caption span:first-child{color:var(--ink)}.beat{padding:3rem var(--gutter);min-height:520px;display:flex;align-items:center;position:relative;z-index:var(--z-content)}.beat-copy{display:flex;flex-direction:column;gap:var(--space-lg);max-width:35rem}.opening{min-height:590px;padding-top:var(--space-2xl)}.intro-label{font-size:.875rem;color:var(--accent-ink);font-weight:500}.opening h1 span{color:var(--muted)}.beat-copy>p:not(.small-note,.intro-label,.scroll-cue,.beat-stat){font-size:var(--type-body);color:var(--muted);max-width:30ch}.scroll-cue{font-size:.875rem;display:flex;gap:var(--space-lg);align-items:center;margin-top:var(--space-lg);color:var(--muted)}.scroll-cue span{font-size:1.35rem;color:var(--accent-ink)}.beat-stat{display:flex;gap:var(--space-lg);align-items:center}.beat-stat strong{font:500 clamp(3rem,6vw,5rem)/1 var(--display);color:var(--accent-ink);font-variant-numeric:tabular-nums}.beat-stat>span{font-size:1rem;line-height:1.5}.small-note{font-size:.8125rem;color:var(--muted);max-width:38ch}.before-after{display:flex;gap:var(--space-lg);align-items:center}.before-after>div{display:flex;flex-direction:column}.before-after strong{font:500 clamp(3rem,6vw,5rem)/1.1 var(--display);font-variant-numeric:tabular-nums}.before-after>div:last-child strong{color:var(--accent-ink)}.before-after span{font-size:.875rem;color:var(--muted)}.before-after>span{font-size:2rem}
.section{padding:var(--section-space) var(--gutter);position:relative}.section-heading{display:flex;flex-direction:column;gap:var(--space-lg);max-width:64rem}.section-heading>p{color:var(--muted);font-size:var(--type-body);max-width:40ch}.section-heading h2 span{color:var(--accent-ink)}.comparison{margin-top:var(--space-2xl);display:flex;flex-direction:column;gap:var(--space-xl)}.comparison figcaption{font-size:.875rem;color:var(--muted)}.comparison-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem;align-items:center}.comparison-label{font-size:1.1rem;font-weight:500;grid-column:1/-1}.comparison-label span,.cost span{display:block;font-size:.875rem;color:var(--muted);font-weight:400}.bar-track{height:3rem;position:relative;display:flex;align-items:center}.data-bar{position:absolute;inset:0;background:var(--line);transform:scaleX(var(--value));transform-origin:left}.bar-track strong{position:relative;margin-left:calc(var(--value)*100% + 12px);font-family:var(--display);font-size:1.15rem;font-weight:500}.coordinated .data-bar{background:var(--accent)}.coordinated .bar-track strong{color:var(--accent-ink)}.cost{font-family:var(--display);font-size:1.4rem;font-variant-numeric:tabular-nums}.cost span{font-family:var(--body)}.chart-note{font-size:.8125rem;color:var(--muted)}
.infrastructure{background:var(--white)}.system-diagram{max-width:68rem;margin:var(--space-2xl) auto}.providers,.applications{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;text-align:center;align-items:center;font-family:var(--display);font-size:.9rem}.applications{font-family:var(--body);color:var(--muted)}.system-lines{width:100%;height:55px;display:block;fill:none;stroke:var(--line);stroke-width:1.5}.flow-line{stroke:var(--accent);stroke-width:2;stroke-dasharray:600;stroke-dashoffset:var(--line-offset,0)}.coralos-layer{padding:var(--space-lg);background:var(--paper);display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px}.coralos-layer strong{font:500 2rem/1 var(--display)}.coralos-layer>span{flex-basis:100%;font-size:.875rem;color:var(--muted);text-align:center}.infrastructure-note{font-size:var(--type-body);color:var(--muted);margin-top:var(--space-xl);max-width:50ch}
.research-loop{background:var(--subtle)}.loop-track{display:flex;gap:12px;justify-content:space-between;align-items:center;max-width:48rem;padding-block:var(--space-2xl);font-family:var(--display);font-size:clamp(1rem,2.5vw,2rem)}.loop-track b{font-weight:400;color:var(--accent-ink)}.kernel-result{display:grid;gap:var(--space-xl)}.kernel-result strong{font:500 clamp(1.8rem,4vw,3.2rem)/1.2 var(--display);font-variant-numeric:tabular-nums;white-space:nowrap}.kernel-result strong span{color:var(--accent-ink)}.kernel-result p{font-size:1rem;margin-top:1rem}.kernel-result>p{max-width:36ch}.kernel-result>p>span{display:block;color:var(--muted);margin-top:.75rem}
.product{background:var(--white)}.product-title{display:flex;flex-direction:column;gap:var(--space-lg)}.product-title h2{font-size:var(--type-display)}.product-title>p:last-child{font-size:var(--type-body);color:var(--muted);max-width:32ch}.product-flow{margin-block:var(--space-2xl);display:grid;gap:var(--space-lg);align-items:center;max-width:65rem}.developer-node{font:500 2rem/1.2 var(--display)}.developer-node>span,.coding-node>span{display:block;font:400 1rem/1.5 var(--body);color:var(--muted);margin-top:.75rem}.product-connector{width:2px;height:2rem;background:var(--accent)}.coding-node{font:500 clamp(1.4rem,3vw,2rem)/1.2 var(--display)}.context-layer{margin-top:var(--space-lg);padding:var(--space-lg);display:flex;gap:1rem;align-items:center;background:var(--paper)}.context-layer strong{font:500 1.25rem/1.4 var(--display)}.context-layer span{display:block;font:400 .9rem/1.5 var(--body);color:var(--muted);margin-top:4px}.product-bottom{display:flex;justify-content:space-between;gap:var(--space-xl);flex-wrap:wrap;align-items:center}.product-bottom p{font-size:1rem;color:var(--muted);max-width:38ch}.action-link{display:inline-flex;align-items:center;gap:1rem;white-space:nowrap;min-height:48px;font-size:1rem;text-decoration:none;border-bottom:1px solid var(--accent-ink)}
.commercial-path{display:grid;gap:var(--space-xl);margin-block:var(--space-2xl)}.commercial-path h3{font-family:var(--display);font-size:1.6rem;margin-bottom:.75rem}.commercial-path p{font-size:1.1rem;color:var(--muted)}.next-step{font-size:var(--type-body);max-width:44ch}.opportunity #frontier{margin-top:var(--space-2xl);max-width:40rem;color:var(--muted)}#frontier h3{margin-bottom:.5rem;color:var(--ink)}.evidence{background:var(--white);padding-block:var(--space-3xl)}.evidence-heading{margin-bottom:var(--space-2xl)}.evidence-heading h2{font-size:clamp(2rem,4vw,3.4rem)}.evidence-heading p{color:var(--muted);margin-top:1rem}.evidence-entry{max-width:58rem;margin-bottom:var(--space-xl);display:flex;flex-direction:column;gap:1rem}.evidence-entry p{font-size:1rem;color:var(--muted);max-width:none}.evidence-entry>a{font-size:.875rem;width:fit-content;white-space:nowrap;min-height:44px;display:flex;align-items:center}.evidence-table{font-size:.875rem;font-variant-numeric:tabular-nums;display:flex;flex-direction:column;gap:10px;padding-block:1rem}.evidence-table>[role=row]{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,.7fr) minmax(0,1fr);gap:12px}.table-head{color:var(--muted);font-size:.8125rem;padding-bottom:.5rem}.evidence-credit{font-size:.8125rem;color:var(--muted)}.footer{padding:var(--space-xl) var(--gutter);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.5rem;font-size:.875rem}.footer>a:last-child{white-space:nowrap;min-height:44px;display:flex;align-items:center}.footer>span{color:var(--muted)}
@media(min-width:40rem){.edition{display:block}.comparison-row{grid-template-columns:minmax(12rem,1fr) minmax(0,2fr) 6rem;gap:2rem}.comparison-label{grid-column:auto}.commercial-path{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3xl);max-width:54rem}.providers,.applications{font-size:1.1rem}.coralos-layer{padding:var(--space-xl)}.coralos-layer>span{flex-basis:auto;margin-left:1rem}.product-flow{grid-template-columns:minmax(0,.65fr) minmax(3rem,.35fr) minmax(0,1.6fr)}.product-connector{width:100%;height:2px}.kernel-result{grid-template-columns:1.2fr 1fr;align-items:center;gap:var(--space-2xl)}}
@media(min-width:60rem){.masthead{position:absolute;inset:0 0 auto;background:transparent}.film{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.25fr)}.film-stage{grid-column:2;grid-row:1;position:sticky;top:0;height:100svh;min-height:600px;align-self:start}.story-track{grid-column:1;grid-row:1}.scene-caption{display:flex;bottom:var(--space-xl);left:2rem;right:var(--gutter)}.beat{min-height:100svh;padding-block:var(--space-3xl);padding-right:0}.beat-copy{max-width:32rem}.opening{min-height:100svh}.opening h1{font-size:clamp(3.2rem,4.9vw,5.2rem)}.opening .beat-copy{padding-top:2rem}.beat h2{font-size:clamp(2.8rem,4.1vw,4.4rem)}.section-heading{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:end;gap:var(--space-2xl);max-width:none}.section-heading p{max-width:36ch}.infrastructure-note{margin-left:auto}.scene-labels{opacity:1}.economics{padding-top:var(--space-3xl)}.product-title{max-width:50rem}.opportunity #frontier{margin-left:auto}.comparison{max-width:80rem}}
@media(min-width:90rem){.beat-copy{max-width:36rem}.film-stage{padding-right:3vw}.section{padding-inline:clamp(5rem,9vw,12rem)}.beat{padding-left:clamp(5rem,7vw,10rem)}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.film-stage{position:relative;top:auto;min-height:350px;height:350px}.film{display:block}.story-track{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,28rem),1fr))}.beat{min-height:0;padding:var(--space-2xl) var(--gutter)}.opening{grid-column:1/-1}.scene-caption,.scene-labels{display:none}.flow-line{stroke-dashoffset:0!important}}
@media print{.masthead,.film-stage,.read-progress,.scroll-cue,.footer{display:none}.film,.story-track{display:block}.beat{min-height:0;padding:2rem 0;break-inside:avoid}.section{padding:2rem 0}.section-heading{display:block}.section-heading p{margin-top:1rem}body{background:var(--white);color:var(--ink)}.evidence-entry{break-inside:avoid}}
/* A compact pinned diagram keeps the same scroll story usable in a narrow app pane. */
html{scroll-padding-top:1rem}
#motion-control{background:none;border:0;padding:0;color:var(--muted);font:inherit;cursor:pointer;min-height:44px;white-space:nowrap}#motion-control:hover{color:var(--accent-ink)}#motion-control:focus-visible{outline:3px solid var(--accent-ink);outline-offset:4px}#motion-control:active{transform:translateY(1px)}#motion-control:disabled{cursor:default;color:var(--muted)}a:active{color:var(--accent-ink)}
.single-score strong,.before-after>div:first-child strong{color:var(--task-baseline)}
.journey-nav{display:flex;align-items:center;gap:clamp(12px,2.5vw,36px);font-size:.875rem}.journey-nav a{display:flex;align-items:center;min-height:44px;text-decoration:none;white-space:nowrap}.journey-nav a[aria-current=page]{color:var(--accent-ink)}.journey-nav a:hover{color:var(--accent-ink)}.gain-heading{display:flex;flex-direction:column;gap:.5rem}.gain-heading>strong{font:500 clamp(5rem,9vw,9rem)/1 var(--display);color:var(--accent-ink);letter-spacing:-.065em;white-space:nowrap}.gain-heading>strong>span{font-size:.55em;letter-spacing:-.03em}.gain-heading>span{font-size:clamp(1.6rem,3.2vw,3.2rem)}.result-beat .before-after strong{font-size:clamp(2.5rem,4vw,4rem)}.journey-doors{padding-block:var(--space-3xl)}.journey-doors h2{font-size:clamp(2rem,4vw,3.4rem)}.journey-links{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-2xl);margin-top:var(--space-xl)}.journey-links>a{text-decoration:none;position:relative;padding-right:3rem;display:block}.journey-links>a>span{font:500 1.5rem/1.3 var(--display)}.journey-links p{color:var(--muted);margin-top:.5rem}.journey-links b{position:absolute;right:0;top:0;font-size:2rem;font-weight:400;color:var(--accent-ink)}.journey-links>a:hover>span{color:var(--accent-ink)}
@media(max-width:39.999rem){.masthead{height:auto;min-height:88px;align-items:flex-start;flex-direction:column;justify-content:center;gap:2px;padding-block:10px}.masthead .brand img{height:25px;width:22px}.journey-nav{width:100%;justify-content:space-between;font-size:.8125rem}.journey-nav a{min-height:34px}.journey-links{grid-template-columns:1fr;gap:2rem}.gain-heading>strong{font-size:clamp(5rem,20vw,7rem)}}
.task-legend{position:absolute;inset:auto 0 1.5rem;padding-inline:2rem;display:flex;flex-direction:column;gap:.75rem;color:var(--ink)}.task-legend[hidden]{display:none}.task-score{display:flex;align-items:baseline;flex-wrap:wrap;gap:.5rem;font-size:1rem}.task-score strong{font:500 1.75rem/1.2 var(--display);color:var(--task-baseline)}.task-legend[data-phase=team] .task-score strong{color:var(--accent-ink)}.task-key{display:flex;flex-wrap:wrap;gap:.5rem 1.25rem;font-size:.875rem}.task-key>span{display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap}.task-key i{width:12px;height:12px;display:inline-block;flex-shrink:0}.task-key-baseline i{background:var(--task-baseline)}.task-key-gain i{background:var(--task-gain)}.task-key-unsolved i{background:var(--task-unsolved);border:1px solid var(--task-outline)}.task-legend[data-phase=single] .task-key-gain{display:none}.task-key-note{font-size:.8125rem;color:var(--muted)}
@media(max-width:59.999rem){.task-legend{bottom:.5rem;padding-inline:var(--gutter);gap:.35rem}.task-score{gap:.5rem;font-size:.875rem}.task-score strong{font-size:1.35rem}.task-score>span:last-child{display:none}.task-key{gap:.25rem .75rem;font-size:.875rem}.task-key-note{font-size:.75rem}}
@media(max-width:26rem){.journey-nav{gap:12px;font-size:.75rem}}
html[data-motion=reduce] *{animation:none!important;transition:none!important;scroll-behavior:auto!important}html[data-motion=reduce] .film-stage{position:relative;min-height:350px;height:350px}html[data-motion=reduce] .film{display:block}html[data-motion=reduce] .story-track{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,28rem),1fr))}html[data-motion=reduce] .beat{min-height:0;padding:var(--space-2xl) var(--gutter)}html[data-motion=reduce] .opening{grid-column:1/-1}html[data-motion=reduce] .scene-caption,html[data-motion=reduce] .scene-labels{display:none}html[data-motion=reduce] .flow-line{stroke-dashoffset:0!important}
@media(max-width:59.999rem) and (prefers-reduced-motion:no-preference){
 .film{display:grid}.film-stage{grid-area:1/1;position:sticky;top:0;height:40svh;min-height:210px;background:var(--paper);z-index:var(--z-content)}.story-track{grid-area:1/1}.beat{z-index:var(--z-stage);min-height:100svh;align-items:flex-end;padding-top:calc(40svh + 2rem);padding-bottom:3rem}.opening{min-height:calc(100svh - var(--header-height))}.beat-copy{gap:1rem;max-width:40rem}.beat h2{font-size:clamp(2rem,5vw,3.2rem)}.opening h1{font-size:clamp(2.2rem,5.3vw,3.6rem)}.beat-stat strong{font-size:3rem}.scroll-cue{margin-top:.5rem}.scene-caption{display:flex;font-size:.75rem;bottom:.5rem;left:var(--gutter)}.scene-caption span:last-child{display:none}.scene-labels{opacity:1}.scene-labels span{font-size:.75rem}
}
