:root{
  color-scheme:dark;
  --ink:#090f1c;
  --panel:#101c2e;
  --panel2:#17263b;
  --line:#2d4058;
  --muted:#9bb0cc;
  --white:#f4f7ff;
  --blue:#b8d7ff;
  --mint:#b8e5cd;
  --shadow:0 25px 60px #0006;
  font:16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at top,#11203a 0%,#0a1322 42%,#090f1c 100%);color:var(--white);overflow-x:hidden}
a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}
button{font:inherit}
button,a{touch-action:manipulation}
button:focus-visible,a:focus-visible{outline:3px solid #a8daff;outline-offset:4px}
.wrap{width:min(1200px,calc(100% - 56px));margin-inline:auto}
.skip-link{position:absolute;left:16px;top:-52px;padding:10px 14px;background:#fff;color:#000;z-index:100}.skip-link:focus{top:10px}
.stars{position:fixed;inset:0;pointer-events:none;background-image:radial-gradient(circle at 15% 22%,#fff6 0 1px,transparent 1px),radial-gradient(circle at 82% 18%,#fff5 0 1px,transparent 1px),radial-gradient(circle at 33% 66%,#c8dbff50 0 1px,transparent 1px),radial-gradient(circle at 72% 74%,#eef5ff4b 0 1px,transparent 1px),radial-gradient(circle at 56% 37%,#a9c8f94f 0 1px,transparent 1px)}
.site-header{display:flex;align-items:center;gap:24px;min-height:78px;position:sticky;top:0;z-index:30;backdrop-filter:blur(18px);background:linear-gradient(to bottom,#09101ccc,#09101c88 75%,transparent);padding-block:12px}
.brand{font-size:31px;font-weight:800;letter-spacing:-.06em}.brand-mark{font-size:18px;margin-right:10px;color:#98bee8}.brand-dot{color:#8dc0ff}
.primary-nav{display:flex;gap:22px;margin-left:auto}.primary-nav a,.lang-switch{font-size:14px;color:#c1d3eb}
.lang-switch{display:inline-flex;align-items:center;justify-content:center;min-width:54px;height:38px;border:1px solid #38506d;border-radius:999px;background:#122139;padding-inline:14px}
.hero{position:relative;min-height:700px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);gap:20px;align-items:center;padding-block:110px 120px}
.overline{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.18em;color:#9fbbdd;text-transform:uppercase;margin:0 0 20px}.signal{width:9px;height:9px;border-radius:50%;background:#c2e8d1;box-shadow:0 0 0 6px #c2e8d11f}
.hero h1{font-size:clamp(4.2rem,7vw,6.6rem);line-height:.96;letter-spacing:-.08em;font-weight:800;margin:0 0 22px}.hero h1 em{font-style:normal;color:#dfeeff}.hero-lead{max-width:700px;font-size:1.18rem;color:#bdcce0;margin:0 0 30px}
.action-row{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:12px}.button{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 18px;border-radius:999px;border:1px solid #406084;font-weight:600}.button-primary{background:#d9ebff;color:#0a1422;border-color:#d9ebff}.button-primary:hover{text-decoration:none;background:#edf5ff}.button-quiet{background:#15253c;color:#deebff}.button-quiet:hover{text-decoration:none;background:#1a2c46}
.hero-note{color:#90a9c7;font-size:14px;margin:0}.hero-index{position:absolute;left:0;bottom:36px;color:#7f96b2;font-size:12px;letter-spacing:.16em}.hero-index span{padding-inline:6px}
.hero-orbit{position:relative;width:100%;max-width:560px;height:560px;justify-self:end}.orbit{position:absolute;border:1px solid #3d5577;border-radius:50%}.orbit-one{inset:65px}.orbit-two{inset:120px 20px;transform:rotate(20deg)}.orbit-three{inset:175px -15px;transform:rotate(-8deg)}.orbit-core{position:absolute;top:225px;left:241px;width:115px;height:115px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 40% 33%,#334e71,#0c1c31 76%);border:1px solid #7ea0ca;border-radius:50%;font-size:26px;font-weight:700;letter-spacing:-2px;box-shadow:0 0 110px #174c8055}.satellite{position:absolute;width:9px;height:9px;background:#b7d5f8;border-radius:50%;box-shadow:0 0 22px #9abdef}.satellite-one{left:121px;top:185px}.satellite-two{right:55px;top:340px}.satellite-three{right:192px;top:91px}
.section,.experience-section{padding-block:110px;scroll-margin-top:36px}.section-head{max-width:820px;margin-bottom:38px}.section-head h2,.community h2{font-size:clamp(2.4rem,5vw,4.5rem);line-height:1.08;letter-spacing:-.06em;font-weight:800;margin:0 0 18px}.section-head>p:last-child{max-width:760px;font-size:18px;color:#acbfd8;margin:0}
.experience-section{background:linear-gradient(165deg,#0e1a2b,#0a1322 78%);border-top:1px solid #273851;border-bottom:1px solid #273851}
.experience-layout{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,1.68fr);gap:22px;align-items:start}
.stage-controls{display:flex;flex-direction:column;gap:10px}
.tour-panel{padding:18px;border:1px solid #30445f;border-radius:12px;background:linear-gradient(180deg,#15243a,#0f1b2d)}
.tour-kicker{margin:0 0 10px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#91b3d9}.tour-panel h3{margin:0 0 8px;font-size:1.55rem;line-height:1.15;letter-spacing:-.04em}.tour-panel p{margin:0;color:#bccde3}.tour-controls{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.stage{width:100%;background:transparent;color:#b1c2d9;border:1px solid #334760;border-radius:10px;display:flex;gap:18px;align-items:center;text-align:left;padding:17px 18px;cursor:pointer;transition:border-color .25s,background .25s,transform .25s}.stage:hover{transform:translateY(-1px);text-decoration:none}.stage span:first-child{color:#6d8bab;font-size:12px}.stage strong{font-size:17px;font-weight:700}.stage-arrow{margin-left:auto;font-size:20px}.stage.is-current{border-color:#8bbbe9;background:#203855;color:#fff;box-shadow:0 10px 24px #00000029}
.stage-meta{padding-top:8px}.stage-description{margin:0 0 14px;color:#b9cbe1;line-height:1.7;min-height:98px}.autoplay-progress{height:4px;border-radius:999px;background:#1e2b3f;overflow:hidden}.autoplay-progress span{display:block;height:100%;width:0%;background:linear-gradient(90deg,#a8d4ff,#d9edff);transition:width .25s linear}
.diagram-shell{border:1px solid #3b516b;background:#101d2f;border-radius:18px;overflow:hidden;box-shadow:var(--shadow)}
.diagram-bar{height:49px;display:flex;align-items:center;gap:15px;padding-inline:18px;background:#1a2a40;color:#a7bfdc;font-size:11px;letter-spacing:.04em;border-bottom:1px solid #344862}.window-dots{letter-spacing:4px;font-size:9px;color:#778eaa}.preview-label{margin-left:auto;color:#a9c9f0;border:1px solid #4c6e92;padding:2px 7px;border-radius:3px}
.diagram-area{position:relative;min-height:560px;display:flex;align-items:stretch;justify-content:center;overflow:hidden;background:radial-gradient(circle at 50% 15%,#102a4d,#0c1b2f 45%,#091323 100%)}
.diagram-grid{position:absolute;inset:0;background-image:linear-gradient(#7196c40e 1px,transparent 1px),linear-gradient(90deg,#7196c40e 1px,transparent 1px);background-size:26px 26px}
.cinematic-copy{position:absolute;left:28px;top:22px;z-index:3;max-width:360px;padding:16px 18px;border:1px solid #2c4a6f;border-radius:12px;background:#0f1a2ccf;backdrop-filter:blur(14px)}
.cinematic-kicker{margin:0 0 8px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#95b8dd}.cinematic-copy h3{margin:0 0 8px;font-size:1.7rem;line-height:1.1;letter-spacing:-.04em}.cinematic-copy p{margin:0;color:#c1d0e5;font-size:14px}
.process-svg{width:min(96%,980px);height:auto;max-height:100%;position:relative;z-index:1;margin-top:84px}.flow,.node,.model-labels,.heat,.token,.stats-card{transition:opacity .4s ease,transform .4s ease,filter .4s ease}.structured .flow{stroke:#84a7d1}.structured .node{stroke:#9ec1e7;fill:rgba(17,35,58,.86)}.node-task{filter:drop-shadow(0 12px 22px #00000026)}.node-gateway{fill:rgba(20,39,61,.92)}
.sketch-labels{font-family:"Comic Sans MS","Segoe Print",cursive;opacity:.95}.model-labels{opacity:1}.model-labels .branch-label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;fill:#90b3d8}.scribble{display:none}.structured{display:block}.heat{opacity:0}.stats-card{position:absolute;right:24px;bottom:24px;z-index:4;width:min(260px,45%);padding:18px;border:1px solid #30516f;border-radius:14px;background:#0e1b2df0;backdrop-filter:blur(12px);box-shadow:0 20px 40px #0004}.stats-card h4{margin:0 0 12px;font-size:1.15rem}.stats-card dl{margin:0;display:grid;gap:10px}.stats-card div{display:flex;justify-content:space-between;gap:14px;padding-top:10px;border-top:1px solid #27425e}.stats-card dt{color:#8fb2d9;font-size:12px;letter-spacing:.1em;text-transform:uppercase}.stats-card dd{margin:0;font-weight:700}
.illustration-legend{position:absolute;bottom:14px;left:18px;z-index:4;font-size:12px;color:#9bb7d9;display:flex;align-items:center;gap:9px;padding:8px 12px;border-radius:999px;background:#0f1b2ab8;backdrop-filter:blur(12px)}.legend-dot{width:7px;height:7px;border-radius:50%;background:#bdd6f1}.legend-sep{opacity:.6}
.diagram-footer{padding:17px 18px;min-height:84px;background:#16253a;border-top:1px solid #304560;font-size:12px;color:#b1c5de}.disclaimer{margin:0}.decision-options{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:13px}.decision-options>div{display:flex;gap:8px}
.mini-button{border:1px solid #7899bf;background:#263b56;border-radius:999px;color:#fff;padding:6px 12px;cursor:pointer;transition:background .2s,border-color .2s}.mini-button:hover{background:#345a82}.mini-button-ghost{background:#132540;border-color:#385575;color:#dbe9ff}.mini-button-ghost[aria-pressed="false"]{background:#0f1a2e;color:#9db3cf}
[data-outcome-status]{color:#c6ebd1;margin:0 0 10px}.illustrative{color:#f3c797;margin:0 0 10px}[hidden]{display:none!important}
.diagram-shell[data-stage="sketch"] .diagram-grid{opacity:0}.diagram-shell[data-stage="sketch"] .structured,.diagram-shell[data-stage="sketch"] .model-labels,.diagram-shell[data-stage="sketch"] .heat{opacity:0}.diagram-shell[data-stage="sketch"] .scribble,.diagram-shell[data-stage="sketch"] .sketch-labels{display:block}.diagram-shell[data-stage="sketch"] .token{opacity:.0}
.diagram-shell[data-stage="model"] .scribble{opacity:.18;display:block}.diagram-shell[data-stage="model"] .heat{opacity:0}.diagram-shell[data-stage="model"] .token{opacity:0}.diagram-shell[data-stage="model"] .structured,.diagram-shell[data-stage="model"] .model-labels{opacity:1}
.diagram-shell[data-stage="run"] .scribble{opacity:0;display:none}.diagram-shell[data-stage="run"] .heat{opacity:0}.diagram-shell[data-stage="run"] .token{opacity:1}.diagram-shell[data-stage="run"] .flow-main,.diagram-shell[data-stage="run"] .flow-merge-a,.diagram-shell[data-stage="run"] .flow-merge-b,.diagram-shell[data-stage="run"] .flow-approve,.diagram-shell[data-stage="run"] .flow-reject{stroke:#b6dcff}
.diagram-shell[data-stage="analyze"] .token{opacity:0}.diagram-shell[data-stage="analyze"] .heat{opacity:1}.diagram-shell[data-stage="analyze"] .structured .node-review,.diagram-shell[data-stage="analyze"] .structured .node-gateway{filter:drop-shadow(0 0 16px #ffb35c55)}
.hub-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(0,.7fr);gap:16px}.feature-panel{display:grid;grid-template-columns:1fr 1.2fr;min-height:288px;border:1px solid #304863;border-radius:10px;background:#14253d;overflow:hidden}.feature-art{position:relative;background:radial-gradient(circle at 56% 42%,#344f70,#102036 73%);display:flex;align-items:center;justify-content:center;overflow:hidden}.app-glyph{font-size:92px;color:#c3daf6;font-weight:100;z-index:1;transform:rotate(-7deg)}.feature-orbit{position:absolute;width:290px;height:105px;border:1px solid #8daed37e;border-radius:50%;transform:rotate(-28deg)}.feature-content{padding:30px;display:flex;flex-direction:column;justify-content:center}.feature-content h3{font-size:27px;line-height:1.2;letter-spacing:-.03em;margin:0 0 14px}.feature-content p:last-child{font-size:14px;color:#b8cbe3}.side-apps{display:grid;gap:14px}.side-apps article{background:#17253a;border:1px solid #2a435e;border-radius:9px;padding:19px;display:flex;flex-direction:column;justify-content:space-between}.side-apps h3{margin:4px 0;font-size:18px}.app-icon{font-size:23px;color:#bdd8fa}.status{font-size:10px;letter-spacing:.14em;color:#849cba}.footnote{color:#819bb9;font-size:12px;margin-top:16px}
.audiences{background:#101b2c;border-block:1px solid #28384f}.audience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.audience-grid article{border:1px solid #344864;background:#15253c;padding:30px;border-radius:8px;min-height:195px}.audience-grid article span,.engineering-grid span{font-size:12px;color:#91b6e2}.audience-grid h3{font-size:24px;letter-spacing:-.03em;margin:18px 0 8px}.audience-grid p{color:#aabfd9;font-size:14px}
.engineering-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:45px 0 28px}.engineering-grid div{border-top:1px solid #4a6687;padding-top:19px;display:flex;flex-direction:column;gap:25px;font-size:17px}.text-link{font-size:14px;color:#a8cef7;text-decoration:underline;text-underline-offset:4px}.community{background:radial-gradient(ellipse at 85% 50%,#253b58 0%,#101c2e 45%,#0b1423 80%);border-block:1px solid #324862}.community-inner{max-width:1160px}.community h2{max-width:930px}.community-inner>p:not(.overline){color:#cad8ec;max-width:600px;font-size:18px;margin-bottom:28px}.trial{padding-block:65px}.trial h2{font-size:27px;margin:0 0 10px}.trial p{color:#a7bad2;margin:0}.footer{display:flex;gap:35px;align-items:center;justify-content:space-between;padding-block:35px;border-top:1px solid #2b4059;color:#879fbb;font-size:12px}.footer .brand{font-size:23px;color:#e8f3ff}.footer a{color:#aacbef}
@media(max-width:1100px){.hero{grid-template-columns:1fr}.hero-orbit{justify-self:center;opacity:.42;height:460px;max-width:460px}.experience-layout{grid-template-columns:1fr}.diagram-area{min-height:520px}}
@media(max-width:900px){.primary-nav{gap:14px}.stage-controls{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.tour-panel,.stage-meta{grid-column:1/-1}.stage{padding:12px;gap:8px;flex-direction:column;align-items:flex-start}.stage strong{font-size:13px}.stage-arrow{display:none}.hub-grid{grid-template-columns:1fr}.side-apps{grid-template-columns:1fr 1fr}.stats-card{position:static;width:auto;margin:0 16px 16px}.cinematic-copy{position:static;margin:20px 20px 0;max-width:none}.process-svg{margin-top:24px;width:100%}}
@media(max-width:650px){.wrap{width:min(100% - 34px,1200px)}.site-header{height:auto;min-height:76px;gap:15px;flex-wrap:wrap;padding-block:17px}.brand{font-size:25px}.primary-nav{order:3;width:100%;overflow-x:auto;padding-bottom:8px;gap:18px;margin:0}.primary-nav a{font-size:12px}.lang-switch{margin-left:auto}.hero{min-height:570px;padding-block:90px 90px}.hero h1{font-size:clamp(3.1rem,12vw,5rem)}.hero-orbit{width:450px;right:-350px;top:130px;height:450px}.hero-index{bottom:28px}.section,.experience-section{padding-block:80px}.section-head h2,.community h2{font-size:2.5rem}.section-head>p:last-child{font-size:16px}.diagram-bar{font-size:10px}.diagram-area{min-height:420px}.process-svg{overflow:visible}.stage-controls{grid-template-columns:repeat(2,1fr)}.feature-panel{grid-template-columns:1fr}.feature-art{min-height:140px}.feature-content{padding:23px}.side-apps{grid-template-columns:1fr 1fr}.audience-grid,.engineering-grid{grid-template-columns:1fr}.audience-grid article{min-height:auto}.engineering-grid{gap:30px}.footer{flex-wrap:wrap;gap:15px}.footer p{order:3;width:100%}.illustration-legend{max-width:calc(100% - 32px);flex-wrap:wrap;border-radius:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}

/* Evolution of Process — one illustration that progressively becomes a product.
   The heatmap palette and semantics follow atlas Operations ADR-0496; values are examples. */
.experience-intro{max-width:1000px}
.experience-intro h2{max-width:860px}
.evolution{display:grid;grid-template-columns:minmax(238px,.65fr) minmax(0,1.85fr);gap:24px;align-items:stretch}
.evolution-narrative{padding:28px;border:1px solid #2c415f;border-radius:18px;background:linear-gradient(155deg,#162a46 0%,#101e33 65%,#0c182c 100%);min-width:0;display:flex;flex-direction:column}
.evolution-edition{display:flex;justify-content:space-between;gap:14px;color:#9ebcdd;font-size:11px;letter-spacing:.13em;font-weight:700}
.evolution-counter{color:#ecf6ff;font-variant-numeric:tabular-nums}
.evolution-narrative h3{font-size:clamp(1.7rem,2vw,2.25rem);letter-spacing:-.05em;line-height:1.12;margin:24px 0 12px}
.evolution-lead{margin:0 0 24px;color:#aec6e2;font-size:14px;line-height:1.65}
.evolution-steps{display:grid;gap:5px}
.evolution-step{display:grid;grid-template-columns:27px 1fr 33px;align-items:center;gap:10px;position:relative;width:100%;min-height:57px;padding:10px 12px;text-align:left;border:1px solid transparent;background:transparent;border-radius:9px;color:#9fbbdb;cursor:pointer;transition:background-color .35s,border-color .35s,color .35s}
.evolution-step>span:nth-child(2){font-size:16px;font-weight:650}.step-number{font-size:10px;letter-spacing:.09em;color:#6f99c3}.step-line{height:3px;background:#3c5679;border-radius:10px;position:relative;overflow:hidden}.step-line::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#5da8fc,#e2f4ff);transform:scaleX(0);transform-origin:left;transition:transform .45s ease}
.evolution-step:hover{background:#203653}
.evolution-step.is-current{border-color:#6089b8;background:#233b5a;color:#fff}.evolution-step.is-current .step-line::before{transform:scaleX(1)}
.evolution-description{color:#bfd5ed;min-height:88px;margin:23px 0 17px;line-height:1.6;font-size:14px}
.evolution-player{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:auto}.player-control{background:#172c46;border:1px solid #385676;border-radius:100px;cursor:pointer;color:#e2f0ff;font-size:12px;font-weight:650;padding:8px 12px;min-height:38px;white-space:nowrap}.player-control:hover{background:#26476c}.player-control.icon-only{font-size:20px;line-height:1}.next-scene{margin-left:auto}
.evolution-progress{height:3px;background:#29425f;border-radius:4px;margin-top:21px;overflow:hidden}.evolution-progress>span{height:100%;width:0%;display:block;border-radius:4px;background:linear-gradient(90deg,#72b2ff,#eef9ff);transition:width .05s linear}
.evolution-screen{min-width:0;overflow:hidden;border:1px solid #365474;border-radius:18px;background:#0a172a;box-shadow:0 30px 100px #0007;display:flex;flex-direction:column}
.evolution-topbar,.evolution-statusbar{display:flex;align-items:center;gap:15px;background:#182a42;border-bottom:1px solid #36506c;padding:0 19px;height:48px;font-size:11px;color:#a6c2e1;letter-spacing:.03em}
.window-dots{letter-spacing:3px;color:#81a0c4;font-size:9px}.evolution-path{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-label{margin-left:auto;border:1px solid #4b6f96;border-radius:4px;color:#b5d4f7;padding:3px 8px;letter-spacing:.1em;font-size:9px;flex-shrink:0}
.evolution-canvas{position:relative;min-height:585px;overflow:hidden;background:radial-gradient(ellipse at 60% 38%,#172e51 0%,#0e1d34 56%,#091527 100%)}
.evolution-mesh{position:absolute;inset:0;background-image:linear-gradient(#a0c7fc0a 1px,transparent 1px),linear-gradient(90deg,#a0c7fc0a 1px,transparent 1px);background-size:26px 26px;transition:opacity 1s}
.evolution-beam{pointer-events:none;position:absolute;inset:-60% -40%;opacity:0;transform:translateX(-90%) rotate(20deg);background:linear-gradient(90deg,transparent 36%,#b5dcff16 50%,transparent 64%)}
.evolution-scene-title{position:absolute;top:24px;left:26px;right:26px;z-index:4;pointer-events:none}.evolution-scene-title p{font-size:10px;letter-spacing:.19em;color:#8fb7e4;font-weight:750;margin:0 0 7px}.evolution-scene-title h4{color:#f3f9ff;font-size:clamp(1.4rem,2.2vw,2rem);max-width:550px;line-height:1.1;letter-spacing:-.055em;margin:0;text-shadow:0 2px 15px #081222}
.evolution-diagram{position:absolute;left:1.5%;top:115px;width:97%;height:auto;max-height:430px;overflow:visible;z-index:2;filter:drop-shadow(0 18px 25px #050a1166)}
.rough-flow{stroke:#d6dfed;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1900;stroke-dashoffset:0;opacity:1;transform-origin:center;transition:opacity 1.1s ease,transform 1.4s cubic-bezier(.2,.8,.2,1)}
.bpmn-flow{stroke:#8fb3dd;opacity:0;stroke-dasharray:900;stroke-dashoffset:0;transition:opacity .9s ease,stroke 1s ease}
.bpmn-nodes{stroke:#a0c3e9;stroke-width:2.5;fill:#11233b;opacity:0;transform:translate(0,7px) scale(.992);transform-origin:center;transition:opacity .85s ease,transform 1.2s cubic-bezier(.2,.8,.2,1)}
.bpmn-labels{text-rendering:optimizeLegibility;fill:#f1f7ff;font-weight:600;opacity:0;transition:opacity .95s ease}.bpmn-labels .node-sub{fill:#8faeca;font-weight:400;font-size:12px}.branch-text{font-size:12px;font-weight:800;fill:#a9cce7;letter-spacing:.1em}
.flow-tokens{opacity:0;transition:opacity .6s}.token{fill:#cbfff2;filter:drop-shadow(0 0 12px #8affdc)}.token-halo{fill:#7cffe0;opacity:.68}
.heat-field{opacity:0;transition:opacity 1.3s ease;pointer-events:none}.heat-field path{fill:none;stroke-width:28;stroke-linecap:round;stroke-linejoin:round}.heat-field rect{stroke-width:18}.heat-badges{fill:#f7fbff;opacity:0;text-anchor:middle;font-size:15px;font-weight:750;transition:opacity 1s;paint-order:stroke fill;stroke:#081527;stroke-width:3}
.evolution[data-stage="sketch"] .rough-flow{animation:draw-rough 3.7s cubic-bezier(.35,0,.35,1) both}.evolution[data-stage="sketch"] .bpmn-nodes,.evolution[data-stage="sketch"] .bpmn-flow,.evolution[data-stage="sketch"] .bpmn-labels{opacity:0}.evolution[data-stage="sketch"] .evolution-mesh{opacity:.12}
.evolution:not([data-stage="sketch"]) .rough-flow{opacity:0;transform:translateY(-5px) scale(1.012)}.evolution:not([data-stage="sketch"]) .bpmn-flow,.evolution:not([data-stage="sketch"]) .bpmn-nodes,.evolution:not([data-stage="sketch"]) .bpmn-labels{opacity:1;transform:none}
.evolution[data-stage="model"] .evolution-beam{animation:scan-across 1.7s ease-out 1 both}
.evolution[data-stage="form"] .evolution-diagram{opacity:.3;filter:blur(2px);transform:scale(.97)}.evolution[data-stage="form"] .evolution-mesh{opacity:.25}
.evolution[data-stage="run"] .flow-tokens{opacity:1}.evolution[data-stage="run"] .bpmn-flow{stroke:#b9dcff}.evolution[data-stage="run"] .evolution-mesh{opacity:.7}
.evolution[data-stage="analyze"] .heat-field,.evolution[data-stage="analyze"] .heat-badges{opacity:1}.evolution[data-stage="analyze"] .evolution-mesh{opacity:.4}.evolution[data-stage="analyze"] .bpmn-nodes{fill:#122139a8;stroke:#b7cee7}.evolution[data-stage="analyze"] .bpmn-flow{stroke:#b9c7d8}
@keyframes draw-rough{from{stroke-dashoffset:1900;opacity:.45;transform:translateY(9px) scale(1.02)}to{stroke-dashoffset:0;opacity:1;transform:none}}
@keyframes scan-across{from{opacity:0;transform:translateX(-85%) rotate(20deg)}30%{opacity:1}to{opacity:0;transform:translateX(85%) rotate(20deg)}}
.credit-form-panel{position:absolute;z-index:7;top:105px;left:50%;transform:translate(-50%,20px) scale(.96);width:min(460px,calc(100% - 50px));opacity:0;visibility:hidden;pointer-events:none;transition:opacity .65s ease,transform .8s cubic-bezier(.15,.8,.15,1),visibility .65s;background:#f9fbff;color:#172c42;border-radius:15px;box-shadow:0 25px 95px #0009;overflow:hidden}
.evolution[data-stage="form"] .credit-form-panel{opacity:1;visibility:visible;transform:translate(-50%,0) scale(1);pointer-events:auto}
.credit-form-heading{display:flex;align-items:center;gap:12px;padding:18px 20px;border-bottom:1px solid #e0e9f1;background:#f2f7fc}.form-symbol{display:grid;place-items:center;width:42px;height:42px;background:#dbeaff;border-radius:12px;color:#2a5c94;font-size:27px}.credit-form-heading small{color:#6481a2;font-size:10px;letter-spacing:.11em;font-weight:750}.credit-form-heading h4{margin:2px 0 0;font-size:22px;letter-spacing:-.045em;line-height:1.1}.form-status{margin-left:auto;font-size:10px;font-weight:800;color:#376298;background:#dcecff;padding:4px 9px;border-radius:30px}.credit-form-panel form{padding:20px}.credit-form-panel label{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:750;color:#435a73}.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px}.credit-form-panel input,.credit-form-panel select{width:100%;min-width:0;border:1px solid #c9d7e6;border-radius:8px;font-size:15px;color:#172e47;background:white;padding:11px 12px;font:inherit}.credit-form-panel input:focus-visible,.credit-form-panel select:focus-visible{outline:3px solid #90c3f5;outline-offset:2px}.form-wide{margin-top:16px}.form-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px}.form-foot>span{font-size:11px;color:#657d98;max-width:145px}.form-foot button{background:#15355a;color:white;border:0;border-radius:8px;padding:11px 15px;font-size:13px;cursor:pointer;font-weight:750}.form-foot button:hover{background:#235686}.form-feedback{margin:12px 0 0;color:#2d765e;font-size:12px}
.runtime-panel{position:absolute;z-index:7;left:24px;right:24px;bottom:28px;background:#101f36e8;border:1px solid #355272;border-radius:12px;padding:13px 16px;display:flex;align-items:center;gap:12px;opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .55s,transform .55s;color:#c7dcef;font-size:12px;flex-wrap:wrap}
.evolution[data-stage="run"] .runtime-panel{opacity:1;transform:none;pointer-events:auto}.runtime-led{width:9px;height:9px;border-radius:50%;background:#78e5be;box-shadow:0 0 12px #78e5be99}.runtime-branch-buttons{margin-left:auto;display:flex;gap:7px;flex-wrap:wrap}.runtime-branch-buttons button,.heat-modes button{border:1px solid #436183;background:#172b45;color:#9dbbdb;border-radius:7px;padding:7px 10px;font-size:11px;cursor:pointer}.runtime-branch-buttons button[aria-pressed="true"],.heat-modes button[aria-pressed="true"]{background:#b8d9ff;color:#10233a;border-color:#b8d9ff;font-weight:750}
.heat-toolbar{position:absolute;z-index:8;top:89px;left:16px;right:16px;min-height:49px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:8px 12px;border:1px solid #345573;border-radius:10px;background:#0d1b30ef;color:#d9ebff;opacity:0;transform:translateY(-12px);pointer-events:none;transition:opacity .6s,transform .6s}.evolution[data-stage="analyze"] .heat-toolbar{opacity:1;transform:none;pointer-events:auto}.heat-toolbar-title{font-size:12px;font-weight:800}.heat-modes{display:flex;gap:5px;flex-wrap:wrap}.heat-toolbar small{font-size:10px;color:#92b2d2}
.heat-insight{position:absolute;z-index:6;right:21px;bottom:37px;width:min(310px,44%);padding:15px 18px;border:1px solid #416080;border-radius:13px;background:#0c1b2deb;backdrop-filter:blur(12px);box-shadow:0 22px 50px #0008;transform:translateY(15px);opacity:0;pointer-events:none;transition:transform .7s,opacity .7s}.evolution[data-stage="analyze"] .heat-insight{transform:none;opacity:1}.heat-insight-head{display:flex;align-items:center;gap:8px;font-size:10px;font-weight:800;color:#caa5a3;letter-spacing:.12em}.insight-spark{font-size:22px;color:#ff9778}.heat-insight strong{display:block;font-size:18px;letter-spacing:-.03em;color:#f5faff;margin:10px 0 7px}.heat-insight p{color:#b7c9df;font-size:12px;margin:0 0 12px}.heat-insight small{color:#7c96b6;font-size:10px}
.evolution-canvas-note{position:absolute;bottom:7px;left:18px;max-width:450px;font-size:10px;color:#91a6c1;opacity:.85;margin:0;z-index:8}.evolution-statusbar{height:42px;border-top:1px solid #36506c;border-bottom:0;background:#13263d}.evolution-status-dot{width:8px;height:8px;background:#93d8b9;border-radius:50%;box-shadow:0 0 10px #93d8b990}.status-separator{color:#517399}.status-right{margin-left:auto;color:#6f98c2;font-size:10px;font-weight:750;letter-spacing:.1em}
@media(max-width:1100px){.evolution{grid-template-columns:1fr}.evolution-narrative{padding:22px}.evolution-steps{grid-template-columns:repeat(5,minmax(0,1fr))}.evolution-step{display:flex;flex-direction:column;align-items:flex-start;min-height:80px;gap:5px}.evolution-step .step-line{width:100%;margin-top:auto}.evolution-description{min-height:0;margin-top:18px}.evolution-canvas{min-height:570px}}
@media(max-width:650px){.evolution-steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:3px}.evolution-step{padding:8px 4px;min-height:78px}.evolution-step>span:nth-child(2){font-size:10px;line-height:1.25}.evolution-step .step-number{font-size:9px}.evolution-narrative h3{font-size:1.7rem}.evolution-canvas{min-height:500px}.evolution-diagram{top:145px}.evolution-scene-title h4{font-size:1.32rem}.evolution-topbar{padding-inline:10px}.evolution-path{font-size:10px}.credit-form-panel{top:119px;width:calc(100% - 18px)}.credit-form-heading{padding:11px}.credit-form-heading h4{font-size:17px}.credit-form-panel form{padding:12px}.form-fields{gap:8px}.form-foot{margin-top:12px}.form-foot>span{font-size:10px}.runtime-panel{left:12px;right:12px;bottom:36px;padding:9px}.runtime-branch-buttons{margin-left:0}.heat-toolbar{top:85px;padding:9px}.heat-toolbar small{display:none}.heat-insight{width:calc(100% - 26px);right:13px;bottom:33px;padding:10px}.heat-insight strong{margin:5px 0}.evolution-canvas-note{left:12px;right:12px;font-size:9px}.evolution-statusbar{gap:7px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.evolution .rough-flow{animation:none!important}.evolution .evolution-beam{animation:none!important}.evolution *{transition-duration:.001ms!important}}

/* Readable handwritten labels make the initial drawing a real process sketch. */
.sketch-notes{font-family:"Segoe Print","Comic Sans MS",cursive;font-size:15px;fill:#e1e9f7;opacity:1;transition:opacity .9s ease;transform:rotate(-1deg);transform-origin:50% 50%}
.evolution:not([data-stage="sketch"]) .sketch-notes{opacity:0}
.evolution[data-stage="sketch"] .sketch-notes{transition-delay:.3s}
/* The final insight panel is placed below the complete diagram, not over a branch. */
.evolution-canvas{min-height:710px}
@media(max-width:1100px){.evolution-canvas{min-height:690px}}
@media(max-width:650px){.evolution-canvas{min-height:570px}.heat-insight{bottom:30px}.evolution-diagram{top:170px}}
/* Keep the decorative orbits inside the viewport on narrow screens. */
@media(max-width:650px){
  .hero{display:block;overflow:hidden;min-width:0}
  .hero-copy{max-width:100%;position:relative;z-index:2}
  .hero-orbit{position:absolute;top:110px;right:-340px;left:auto;width:450px;opacity:.25;pointer-events:none}
  .hero h1{font-size:clamp(2.95rem,11vw,4.2rem);overflow-wrap:normal}
}

/* During shape interpolation the pencil strokes remain visible while the model appears. */
.evolution.is-morphing[data-stage="model"] .rough-flow{opacity:.9;transform:none}
.evolution.is-morphing[data-stage="model"] .bpmn-nodes{opacity:.35}
