:root{--paper:#fbfbfb;--ink:#000;--text:#4d4d4d;--violet:#503e8d;--lavender:#c5baff;--mist:#efecff;--line:#0000001f;--error:#b3261e;--emotion:#fde4ec;--emotion-line:#b0325f;--gap:#fcefd0;--gap-line:#8a5a00;--difficulty:#dfeefc;--difficulty-line:#1a5ea8;--generator:#dff3e3;--generator-line:#1d7436;--analytics:#e2dbff;--shared-line:#6b6b6b;--gutter:clamp(16px,2vw,32px)}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:88px}body{-webkit-font-smoothing:antialiased;background:#fbfbfb;background:var(--paper);color:#4d4d4d;color:var(--text);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:1.0625rem;line-height:1.65;margin:0}h1,h2,h3,h4{text-wrap:balance;color:#000;color:var(--ink);font-weight:300;margin:0}h1{font-size:clamp(2.3rem,5.4vw,4.6rem);letter-spacing:-.04em;line-height:.98}h2{font-size:clamp(2rem,3.6vw,3.25rem);letter-spacing:-.035em;line-height:1}h3{font-size:1.5rem;letter-spacing:-.02em;line-height:1.2}h4{font-size:1.125rem;font-weight:500;letter-spacing:-.01em;line-height:1.3}p{margin:0;max-width:68ch}strong{color:#000;color:var(--ink);font-weight:600}a{color:#503e8d;color:var(--violet);text-underline-offset:3px}a:focus-visible{border-radius:4px;outline:2px solid #503e8d;outline:2px solid var(--violet);outline-offset:3px}dd,dl,ol,ul{margin:0;padding:0}ol,ul{list-style:none}img{display:block;height:auto;max-width:100%}.wrap{padding-inline:clamp(16px,2vw,32px);padding-inline:var(--gutter)}.skip{left:-999px;position:absolute}.skip:focus{background:#fbfbfb;background:var(--paper);left:12px;padding:8px 12px;top:12px;z-index:10}.top{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fbfbfbe6;border-bottom:1px solid #0000001f;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.top-inner{gap:12px 28px;min-height:68px}.brand,.top-inner{align-items:center;display:flex}.brand{color:#000;color:var(--ink);font-size:1.375rem;gap:10px;letter-spacing:-.02em;margin-right:auto;text-decoration:none}.logo{background:#8052ff;border-radius:11px;color:#fff;display:grid;height:36px;place-items:center;width:36px}.logo svg{height:22px;width:22px}.top nav{display:flex;font-size:.9375rem;gap:24px;margin-left:auto}.method-nav a,.top nav a{color:#4d4d4d;color:var(--text);padding-block:8px;text-decoration:none;white-space:nowrap}.method-nav a:hover,.pill,.top nav a:hover{color:#503e8d;color:var(--violet)}.pill{align-items:center;background:#c5baff;background:var(--lavender);border:1px solid #c5baff;border:1px solid var(--lavender);border-radius:999px;display:inline-flex;font-size:.9375rem;font-weight:600;min-height:46px;padding:0 22px;text-decoration:none;white-space:nowrap}.pill:hover{background:#b6a8ff;border-color:#b6a8ff}.pill-quiet,.pill-quiet:hover{background:#0000;border-color:#00000038}.pill-quiet:hover{border-color:#503e8d;border-color:var(--violet)}.hero{grid-gap:48px;align-items:center;display:grid;gap:48px;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);padding-block:clamp(48px,9vh,104px) clamp(40px,6vh,72px)}.hero-kicker{color:#503e8d;color:var(--violet);font-weight:500;margin-bottom:20px}.lead{font-size:clamp(1.125rem,1.5vw,1.3125rem);line-height:1.5;margin-top:28px;max-width:52ch}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:36px}.loop{justify-self:end;max-width:480px;overflow:visible;width:100%}.loop-ring{fill:none;stroke:#c5baff;stroke:var(--lavender);stroke-width:1.5}.loop-arrow{fill:none;stroke:#503e8d;stroke:var(--violet);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.loop-orbit{animation:orbit 18s linear infinite;transform-origin:240px 240px}.loop-orbit circle{fill:#503e8d;fill:var(--violet)}.loop text{text-anchor:middle;dominant-baseline:central;font-family:inherit}.loop-centre{fill:#000;fill:var(--ink);font-size:44px;font-weight:300;letter-spacing:-.04em}.loop-sub{fill:#4d4d4d;fill:var(--text);font-size:15px}.loop-node circle{fill:#efecff;fill:var(--mist);stroke:#c5baff;stroke:var(--lavender);stroke-width:1.5;transition:fill .15s}.loop-node text{fill:#503e8d;fill:var(--violet);font-size:16px;font-weight:500}.loop-node:focus-visible circle,.loop-node:hover circle{fill:#c5baff;fill:var(--lavender)}.loop-node:focus-visible{outline:none}.loop-node:focus-visible circle{stroke:#503e8d;stroke:var(--violet);stroke-width:2.5}@keyframes orbit{to{transform:rotate(1turn)}}.facts{grid-gap:20px 32px;border-top:1px solid #0000001f;border-top:1px solid var(--line);display:grid;gap:20px 32px;grid-template-columns:repeat(5,minmax(0,1fr));padding-block:28px}.facts dt{font-size:.875rem}.facts dd{color:#000;color:var(--ink);font-size:1rem;line-height:1.4;margin-top:4px}.section{border-top:1px solid #0000001f;border-top:1px solid var(--line);padding-block:clamp(56px,9vh,112px)}.section-grid{grid-gap:32px 48px;align-items:start;display:grid;gap:32px 48px;grid-template-columns:minmax(0,4fr) minmax(0,8fr)}.section-grid>h2{position:sticky;top:100px}.section-body>*+*{margin-top:20px}.section-body>h3{margin-top:64px}.section-body>h3:first-child{margin-top:0}.gap-list li{border-left:2px solid #c5baff;border-left:2px solid var(--lavender);max-width:68ch;padding:14px 0 14px 20px}.gap-list li+li{margin-top:10px}.objective{color:#000;color:var(--ink);font-size:clamp(1.25rem,1.9vw,1.625rem);font-weight:300;letter-spacing:-.015em;line-height:1.35;max-width:44ch}.component{border-top:1px solid #0000001f;border-top:1px solid var(--line);padding-block:32px;scroll-margin-top:88px}.component:target h4{color:#503e8d;color:var(--violet)}.component header h4{font-size:1.375rem;font-weight:400}.component header p{color:#503e8d;color:var(--violet);font-size:.9375rem;margin-top:2px}.component dl{grid-gap:14px 24px;display:grid;gap:14px 24px;grid-template-columns:8.5rem minmax(0,1fr);margin-top:20px}.component dt{color:#000;color:var(--ink);font-size:.9375rem;font-weight:600;padding-top:2px}.component dd{max-width:62ch}.method-nav{background:#fbfbfb;background:var(--paper);border-bottom:1px solid #0000001f;border-bottom:1px solid var(--line);display:flex;font-size:.9375rem;gap:24px;overflow-x:auto;padding-block:4px;position:sticky;scrollbar-width:none;top:69px;z-index:4}.method-group{margin-top:48px;scroll-margin-top:56px}.method-group>p{margin-top:12px}.method-group>h3+.when{margin-top:2px}.method-group>.formulas{margin-top:24px}.flow{grid-column-gap:24px;column-gap:24px;counter-reset:step;display:grid;grid-template-columns:repeat(auto-fit,minmax(max(220px,30%),1fr))}.flow li{align-content:start;border-top:1px solid #0000001f;border-top:1px solid var(--line);counter-increment:step;display:grid;grid-template-columns:2.5rem minmax(0,1fr);padding-block:16px}.flow li:before{color:#503e8d;color:var(--violet);content:counter(step);font-size:1.5rem;font-weight:300;grid-row:span 2;line-height:1.2}.flow li span{max-width:62ch}.formulas{grid-gap:12px;display:grid;gap:12px}.contact,.formulas>div{background:#efecff;background:var(--mist);border-radius:16px;min-width:0;padding:22px 24px}.expr{color:#503e8d;color:var(--violet);font-size:clamp(1.0625rem,1.6vw,1.3125rem);font-weight:500;letter-spacing:-.01em;overflow-wrap:anywhere}.method{font-size:.9375rem}.method>*+*{margin-top:12px}.method>.expr+.expr{margin-top:4px}.points li+li,.steps li+li,.terms li+li{margin-top:6px}.points li,.steps li,.terms li{max-width:68ch}.points{list-style:disc;padding-left:1.2em}.steps{list-style:decimal;padding-left:1.4em}.example{border-left:2px solid #c5baff;border-left:2px solid var(--lavender);padding-left:14px}.mtable{font-size:.875rem;min-width:0}.mtable td,.mtable th{overflow-wrap:break-word;padding:8px 16px 8px 0}.table-scroll{overflow-x:auto}table{border-collapse:collapse;font-size:.9375rem;line-height:1.5;min-width:560px;text-align:left;width:100%}td,th{border-top:1px solid #0000001f;border-top:1px solid var(--line);font-weight:400;padding:12px 20px 12px 0;vertical-align:top}thead th{border-top:0;color:#4d4d4d;color:var(--text);font-size:.875rem}tbody th{color:#000;color:var(--ink);font-weight:500}.caveat{border-left:2px solid #503e8d;border-left:2px solid var(--violet);padding-left:20px}.timeline li{border-left:1px solid #c5baff;border-left:1px solid var(--lavender);padding:0 0 36px 32px;position:relative}.timeline li:last-child{border-left-color:#0000;padding-bottom:0}.timeline li:before{background:#503e8d;background:var(--violet);border-radius:50%;content:"";height:11px;left:-6px;position:absolute;top:8px;width:11px}.timeline h3{font-size:1.375rem}.when{color:#503e8d;color:var(--violet);font-weight:500;margin-top:2px}.timeline p:last-child{margin-top:6px}.team{grid-gap:36px 32px;display:grid;gap:36px 32px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:36px}.team li{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:116px minmax(0,1fr)}.team img{aspect-ratio:1;background:#efecff;background:var(--mist);border-radius:16px;object-fit:cover;width:100%}.team h3{font-size:1.125rem;font-weight:500;letter-spacing:-.01em}.team .role{color:#000;color:var(--ink);margin-block:6px 2px}.supervisors a,.supervisors p,.team a,.team p{font-size:.9375rem;line-height:1.45}.supervisors a,.team a{display:inline-block;margin-top:6px;overflow-wrap:anywhere}.supervisors{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(2,minmax(0,1fr))}.supervisors li{border-top:1px solid #0000001f;border-top:1px solid var(--line);padding-top:18px}.figure-art{min-width:0}.figure-split{grid-gap:20px 28px;align-items:start;display:grid;gap:20px 28px;grid-template-columns:minmax(0,5fr) minmax(0,6fr)}.art{display:block;font-family:inherit;height:auto;margin-inline:auto;max-width:100%}.art .lbl{fill:#000;fill:var(--ink);font-size:13px;font-weight:500}.art .sub{fill:#4d4d4d;fill:var(--text);font-size:12px}.art .frame-label{font-weight:600}.art .edge-label{stroke:#efecff;stroke:var(--mist);stroke-width:4px;stroke-linejoin:round;paint-order:stroke}.n-emotion{--tint:var(--emotion);--edge:var(--emotion-line)}.n-gap{--tint:var(--gap);--edge:var(--gap-line)}.n-difficulty{--tint:var(--difficulty);--edge:var(--difficulty-line)}.n-generator{--tint:var(--generator);--edge:var(--generator-line)}.n-analytics{--tint:var(--analytics);--edge:var(--violet)}.n-shared{--tint:var(--paper);--edge:var(--shared-line)}.node{fill:var(--tint);stroke:var(--edge);stroke-width:1.5}.node.end{stroke-width:2.5}.node .rim{fill:none}.frame{fill:#fbfbfb8c;stroke:#6b6b6b;stroke:var(--shared-line);stroke-width:1}.edge{fill:none;stroke:#503e8d;stroke:var(--violet);stroke-width:1.5;stroke-linejoin:round}.edge.dashed{stroke-dasharray:5 4}.arrowhead{fill:#503e8d;fill:var(--violet)}.seg{stroke:#503e8d;stroke:var(--violet);stroke-width:1.5}.seg-0{fill:#c5baff;fill:var(--lavender)}.seg-1{fill:#ddd5ff}.seg-2{fill:#fbfbfb;fill:var(--paper)}.legend{display:flex;flex-wrap:wrap;font-size:.8125rem;gap:6px 18px}.legend li{align-items:center;display:flex;gap:7px}.swatch{background:var(--tint);border:1.5px solid var(--edge);border-radius:3px;flex:none;height:14px;width:14px}.k-decision{border-radius:1px;transform:rotate(45deg) scale(.8)}.k-db{border-radius:50%/30%}.k-end{border-radius:999px;border-width:2.5px;width:22px}.k-dashed{background:none;border:0;border-radius:0;border-top:2px dashed #503e8d;border-top:2px dashed var(--violet);height:0;width:22px}.figure summary{color:#503e8d;color:var(--violet);cursor:pointer;font-weight:500;width:fit-content}.figure summary:focus-visible{border-radius:4px;outline:2px solid #503e8d;outline:2px solid var(--violet);outline-offset:3px}.figure details>*+*{margin-top:8px}@keyframes rise{0%{opacity:0;transform:translateY(10px)}}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.art{animation-timeline:view();animation-range:entry 0 entry 140px;animation:rise linear both}}}.contact-page{padding-block:clamp(48px,9vh,104px)}.contact{grid-gap:18px;display:grid;gap:18px;max-width:640px}.field{grid-gap:6px;display:grid;gap:6px}.field label{color:#000;color:var(--ink);font-size:.9375rem;font-weight:600}.field input,.field textarea{background:#fbfbfb;background:var(--paper);border:1px solid #00000038;border-radius:10px;color:#000;color:var(--ink);display:block;font:inherit;padding:10px 12px;width:100%}.field textarea{min-height:160px;resize:vertical}.field [aria-invalid=true]{border-color:#b3261e;border-color:var(--error)}.contact button:focus-visible,.field input:focus-visible,.field textarea:focus-visible{outline:2px solid #503e8d;outline:2px solid var(--violet);outline-offset:2px}.error,.hint{font-size:.875rem}.error{color:#b3261e;color:var(--error)}.hint{justify-self:end}.hp{left:-9999px;position:absolute}.contact .pill{cursor:pointer;font-family:inherit;justify-self:start}.contact .pill:disabled{cursor:default;opacity:.6}.notice{border-radius:10px;font-size:.9375rem;padding:12px 14px}.notice.ok{background:#e2f3e5;color:#1a5928}.notice.bad{background:#fdeceb;color:#b3261e;color:var(--error)}.foot{border-top:1px solid #0000001f;border-top:1px solid var(--line);font-size:.9375rem;padding-block:36px 48px}.foot-inner{grid-gap:8px 32px;display:grid;gap:8px 32px;grid-template-columns:minmax(0,1fr) minmax(0,2fr) minmax(0,1fr)}.foot-inner>p+p{text-align:center}.foot-links{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:flex-end;margin:8px 0 0;max-width:none;padding-inline:clamp(16px,2vw,32px);padding-inline:var(--gutter)}@media (max-width:1000px){.top-inner{flex-wrap:wrap;padding-block:10px}.top nav{margin-left:0;order:3;overflow-x:auto;scrollbar-width:none;width:100%}.top .pill{margin-left:auto;min-height:40px;padding-inline:16px}html{scroll-padding-top:124px}.component{scroll-margin-top:124px}.method-nav{top:114px}.hero{grid-template-columns:minmax(0,1fr)}.loop{justify-self:center;max-width:420px}.facts{grid-template-columns:repeat(2,minmax(0,1fr))}.figure-split,.foot-inner,.section-grid{grid-template-columns:minmax(0,1fr)}.foot-inner>p+p{text-align:left}.section-grid>h2{position:static}}@media (max-width:560px){.component dl{gap:4px;grid-template-columns:minmax(0,1fr)}.component dd+dt{margin-top:12px}.supervisors,.team{grid-template-columns:minmax(0,1fr)}.mtable thead{display:none}.mtable,.mtable tbody,.mtable td,.mtable th,.mtable tr{display:block}.mtable tr{border-top:1px solid #0000001f;border-top:1px solid var(--line);padding-block:8px}.mtable td,.mtable th{border:0;padding:0}.mtable td:before{color:#000;color:var(--ink);content:attr(data-label) ": "}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.loop-orbit{animation:none}}
/*# sourceMappingURL=main.f887bf11.css.map*/