@font-face{font-family:Geist;src:url('/assets/font.woff2') format('woff2');font-display:swap;font-weight:100 900}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;color:#171c29;background:#fff;font-family:Geist,Arial,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}::selection{background:#c7d5ff;color:#142c75}button,a,input,summary{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}a:hover{color:#3558c5}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #4167df;outline-offset:5px}button{font:inherit;cursor:pointer}button:disabled{cursor:default}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:450;letter-spacing:-.035em;line-height:1.12;text-wrap:balance}h1{font-size:clamp(42px,4.5vw,64px);max-width:850px}h2{font-size:clamp(32px,3.2vw,46px)}h3{font-size:25px}p{color:#606979}p+p{margin-top:20px}svg{display:block}button,summary{color:inherit}img{max-width:100%;height:auto}.frame{max-width:1240px;width:calc(100% - 96px);margin-inline:auto;border-inline:1px solid #e1e5ee}.section{padding:104px 32px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 24px;border-radius:28px;background:#192848;color:#fff;font-size:15px;line-height:1.35;transition:background .2s,transform .2s}.button:hover{background:#3459bc;color:#fff;transform:translateY(-2px)}.button.secondary{background:#fff;color:#24304b;border:1px solid #d9dfeb}.button.secondary:hover{background:#edf2ff;border-color:#afc0f5;color:#2141a0}.button.light{background:#fff;color:#183176}.skip{position:fixed;top:-100px;left:20px;z-index:100;background:#fff;padding:14px}.skip:focus{top:12px}.site-header{position:sticky;top:0;z-index:40;background:rgba(255,255,255,.96);border-bottom:1px solid #e1e5ee;padding:15px 0}.header-inner{width:calc(100% - 120px);max-width:1120px;margin:auto;display:flex;align-items:center;gap:30px}.brand{margin-right:auto;display:block}.brand img{display:block;width:200px}.wide-nav{display:flex;align-items:center;gap:30px;font-size:14px}.wide-nav>a{padding:10px 0}.header-contact{background:#192848;color:white;border-radius:25px;padding:10px 23px;font-size:14px}.header-contact:hover{background:#3459bc;color:#fff}.services-menu{position:relative}.services-menu summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:10px 0}.services-menu summary::-webkit-details-marker{display:none}.services-menu summary svg{width:12px}.service-menu-panel{position:absolute;top:calc(100% + 18px);left:-110px;width:400px;background:#fff;box-shadow:0 18px 45px #25325426;border-radius:14px;padding:12px}.service-menu-panel a{display:block;padding:16px;border-radius:8px}.service-menu-panel a:hover{background:#f0f4fe}.service-menu-panel strong{display:block;font-size:16px;font-weight:550}.service-menu-panel span{font-size:13px;color:#626f86;display:block;line-height:1.45;margin-top:5px}.mobile-menu{display:none}.hero{padding-top:70px;overflow:hidden}.hero-copy{text-align:center;max-width:900px;margin:auto;padding:0 24px}.hero h1{margin:auto;max-width:800px}.hero-copy>p{font-size:19px;line-height:1.65;max-width:680px;margin:25px auto 0}.actions{display:flex;gap:12px;align-items:center;justify-content:center;margin-top:30px}.hero-triptych{display:grid;grid-template-columns:1fr 1.12fr 1fr;align-items:end;gap:22px;margin-top:65px;padding:0 22px}.hero-piece{position:relative;min-width:0;overflow:hidden;background:#f3f5fa;border-radius:20px 20px 0 0}.piece-source,.piece-report{margin-top:64px}.hero-piece figcaption{padding:26px 22px 30px;background:#f7f8fb;min-height:125px}.hero-piece figcaption span{font-size:17px;font-weight:500;color:#1a2948}.hero-piece figcaption p{font-size:14px;margin-top:8px;line-height:1.5}.source-visual,.report-visual{height:310px;position:relative;overflow:hidden;background:#e8eefb}.source-visual{background:#dfe8fa}.pixel-flow{position:absolute;inset:-50px -60px;display:grid;grid-template-columns:repeat(10,1fr);transform:rotate(-28deg) skewY(9deg);gap:8px;opacity:.75}.pixel-flow i{background:#3e66c5;border-radius:2px;opacity:calc(.12 + var(--v)*.7);animation:pixel-fall 3s ease-in-out both;animation-delay:calc(var(--i)*.02s)}@keyframes pixel-fall{0%{transform:translateY(-60px);opacity:0}65%,100%{transform:translateY(0)}}.source-slip{position:absolute;background:#fff;border-radius:12px;padding:15px 18px;left:24px;right:24px;bottom:25px;box-shadow:0 15px 30px #203b7526;transform:rotate(-2deg)}.source-slip div{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:8px 0}.source-slip div+div{border-top:1px solid #e7ebf5}.source-slip span{font-size:11px;color:#60708a}.source-slip b{font-size:13px;font-weight:500;font-variant-numeric:tabular-nums}.model-visual{height:374px;position:relative;background:#edf0fb;overflow:hidden}.ribbon-orbit{position:absolute;width:260px;height:260px;left:50%;top:40px;transform:translateX(-50%) rotate(-30deg);perspective:600px}.ribbon-orbit i{position:absolute;left:calc(var(--i)*8px);top:calc(var(--i)*8px);width:160px;height:160px;border:7px solid #5576da;border-radius:35%;transform:rotateX(55deg) rotateZ(calc(var(--i)*4deg));opacity:calc(.35 + var(--i)*.035);animation:ribbon-arrive 3.8s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i)*.05s)}@keyframes ribbon-arrive{from{transform:translateY(80px) rotateX(0) rotateZ(calc(var(--i)*9deg));opacity:0}to{transform:rotateX(55deg) rotateZ(calc(var(--i)*4deg))}}.model-caption{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);background:white;border-radius:25px;white-space:nowrap;display:flex;align-items:center;gap:10px;padding:10px 18px;font-size:12px;box-shadow:0 8px 25px #1f356c15}.model-caption i{width:6px;height:6px;background:#496fe0;border-radius:50%}.report-visual{background:#244da6}.report-pixels{position:absolute;inset:-40px;display:grid;grid-template-columns:repeat(8,1fr);gap:2px;transform:rotate(-12deg)}.report-pixels i{background:#a7bcf5;opacity:calc(var(--v)*.8);animation:tile-reveal 3s both;animation-delay:calc(var(--i)*.03s)}@keyframes tile-reveal{from{opacity:0;transform:scale(.1)}to{transform:scale(1)}}.definition-slip{position:absolute;background:#fff;border-radius:12px;left:25px;right:25px;bottom:25px;padding:20px;box-shadow:0 15px 35px #14274b44}.definition-slip>span{font-size:11px;color:#6a7892}.definition-slip>strong{display:block;font-size:25px;line-height:1.15;letter-spacing:-.04em;font-weight:450;margin-top:10px}.definition-slip dl{font-size:11px;margin-bottom:0}.definition-slip dl div{display:flex;justify-content:space-between;gap:7px;padding-top:8px}.definition-slip dt{color:#768094}.definition-slip dd{margin:0}.intro{display:grid;grid-template-columns:.9fr 1.3fr;gap:90px;align-items:start;border-top:1px solid #e1e5ee}.intro h2{font-size:30px;line-height:1.25}.intro>p{font-size:29px;line-height:1.45;color:#647187;letter-spacing:-.025em}.platform-section{padding:0 28px 90px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:44px}.section-heading>p{max-width:380px;font-size:17px}.workbench{background:#f3f5fa;border:1px solid #dbe2f1;border-radius:20px 20px 0 0;overflow:hidden}.workbench-top{display:flex;justify-content:space-between;border-bottom:1px solid #dce2ee;padding:18px 28px;font-size:12px;color:#60708a}.workbench-content{display:grid;grid-template-columns:1fr .4fr 1.1fr .13fr 1fr;gap:0;align-items:center;padding:60px 32px;min-height:380px}.source-stack>span,.defined-model>span,.report-output>span{font-size:12px;color:#60708a}.source-stack>div{background:#fff;border:1px solid #e0e5ef;padding:14px 18px;margin-top:10px;border-radius:8px}.source-stack b{display:block;font-size:14px;font-weight:500}.source-stack small{font-size:10px;color:#60708a}.model-connectors{width:100%;height:200px}.travel-line{animation:trace-line 4.5s ease both}@keyframes trace-line{from{stroke-dashoffset:200}to{stroke-dashoffset:0}}.defined-model{text-align:center;background:#fff;border-radius:14px;padding:22px 15px;box-shadow:0 18px 40px #23386b12}.schema-symbol{display:grid;grid-template-columns:repeat(5,9px);gap:4px;justify-content:center;transform:rotate(-10deg);margin:23px auto}.schema-symbol i{width:9px;height:9px;background:#496fe0;opacity:calc(.2 + var(--v)*.8)}.defined-model>b{font-size:14px;font-weight:500;display:block}.defined-model>p{font-size:11px;margin-top:7px}.field-chips{display:flex;justify-content:center;gap:5px;margin-top:18px;flex-wrap:wrap}.field-chips span{font-size:9px;border:1px solid #e3e7f0;padding:4px;border-radius:3px}.output-lines{display:flex;flex-direction:column;gap:5px}.output-lines i{height:1px;background:#b7c7ef}.report-output{padding-left:24px}.report-output h3{font-size:22px;margin-top:14px}.report-output p{font-size:12px;margin-top:12px}.report-columns{height:65px;display:flex;gap:7px;align-items:end;margin-top:22px}.report-columns i{background:#5279d9;flex:1;height:calc(20px + var(--i,1)*3px)}.report-columns i:nth-child(2n){height:70%}.report-columns i:nth-child(3n){height:90%}.workbench figcaption{padding:15px 28px;font-size:12px;color:#60708a;background:#fff;border-top:1px solid #e0e6f1}.service-index{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid #dbe2f1;border-top:0;border-radius:0 0 20px 20px}.service-index>a{display:flex;align-items:start;padding:26px 24px;gap:14px}.service-index>a+a{border-left:1px solid #dbe2f1}.service-index svg{width:23px;flex-shrink:0;color:#4967bb;margin-top:2px}.service-index strong{font-size:16px;font-weight:500;display:block}.service-index small{display:block;margin-top:6px;color:#60708a;line-height:1.5;font-size:13px}.service-index>a:hover{background:#f5f7ff}.services{border-top:1px solid #e1e5ee}.service{display:grid;grid-template-columns:.83fr 1.17fr;gap:70px;padding:90px 28px;border-bottom:1px solid #e1e5ee;align-items:center}.service:nth-child(2){grid-template-columns:1.17fr .83fr}.service:nth-child(2) .service-copy{order:2}.service-copy h2{font-size:42px}.service-lead{font-size:21px;line-height:1.5;color:#263d70;margin-top:20px}.service-copy>p:not(.service-lead){font-size:15px;margin-top:22px}.service-copy>.button{margin-top:28px}.service-detail{margin-top:32px}.service-detail>div{display:flex;gap:14px;align-items:center;border-top:1px solid #dce2ee;padding:16px 0;font-size:13px}.detail-symbol{height:9px;width:9px;border:2px solid #5478d5;flex-shrink:0}.service-scene{border-radius:20px;min-height:460px;position:relative;padding:27px;background:#eff3fc;overflow:hidden}.scene-heading{display:flex;justify-content:space-between;color:#667997;font-size:11px}.service-scene>p{font-size:14px;max-width:450px;color:#506483;position:relative;z-index:2;margin-top:32px}.pipeline-scene{background:#e8eefb}.pipeline-bands{position:relative;height:230px;margin-top:20px;display:flex;flex-direction:column;justify-content:center;gap:12px;transform:rotate(-14deg) scale(1.2)}.pipeline-bands>div{display:flex;gap:8px;justify-content:center;transform:translateX(calc((var(--i) - 3)*16px))}.pipeline-bands i{width:42px;height:12px;border-radius:2px;background:#4061ba;opacity:calc(.25 + var(--i)*.1);animation:band-move 3.8s both;animation-delay:calc(var(--i)*.08s)}@keyframes band-move{from{transform:translateX(-100px);opacity:0}to{transform:translateX(0)}}.pipeline-bands i:nth-child(2){background:#8aa6ef}.pipeline-bands i:nth-child(4){background:#b2c6f7}.load-window{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;background:#fff;border-radius:12px;padding:22px;box-shadow:0 15px 35px #2b426b1a;margin-top:-18px}.load-window span{font-size:11px;color:#60708a}.load-window b{display:block;font-size:15px;font-weight:500;margin-top:5px}.load-window svg{width:24px;color:#476ac5;margin:0 12px}.model-scene{background:#f0f1f8}.relationship-art{display:flex;align-items:center;justify-content:center;margin-top:70px}.relationship-table{background:#fff;border-radius:10px;overflow:hidden;min-width:135px;box-shadow:0 12px 30px #29365b12}.relationship-table b,.relationship-table span{display:block;padding:10px 18px;font-size:12px}.relationship-table b{background:#dce5fc;color:#334f91;font-weight:500}.relationship-table span+span{border-top:1px solid #e7eaf1}.relationship-art>svg{width:75px;flex-shrink:0}.relationship-note{display:flex;align-items:center;gap:15px;background:#fff;padding:16px 20px;border-radius:10px;margin-top:40px}.relationship-note b{font-size:12px;white-space:nowrap;color:#4667ba}.relationship-note p{font-size:12px}.definition-scene{background:#e9effa}.definition-document{width:82%;margin:35px auto 0;background:#fff;border-radius:12px;padding:28px 25px;box-shadow:0 15px 35px #1f315c1a;transform:rotate(-2deg)}.definition-document h3{font-size:23px;margin-bottom:20px}.definition-document>div{border-top:1px solid #e4e9f1;display:grid;grid-template-columns:70px 1fr;gap:12px;padding:13px 0}.definition-document span{font-size:11px;color:#63799e}.definition-document p{font-size:12px;color:#445877}.example-section{background:#101521;color:#fff}.example-inner{border-color:#2d3547;display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;padding:90px 32px}.example-intro h2{font-size:40px}.example-intro>p{color:#aebbd0;line-height:1.65;margin-top:24px}.example-intro>.button{margin-top:28px;background:transparent;color:#dbe5fa;border-color:#53627d}.join-lab{min-width:0;border-radius:16px;background:#1c2434;padding:28px}.lab-drawing{display:grid;grid-template-columns:1fr .8fr 1fr;align-items:center;min-height:160px}.lab-source{display:flex;flex-direction:column;gap:5px}.lab-source>span{font-size:12px;color:#adb9d1}.lab-source strong{font-size:42px;font-weight:400;letter-spacing:-.04em;color:#f0f5ff}.lab-drawing>svg{width:100%;color:#6e8cdc}.lab-shipments{display:flex;flex-direction:column;gap:22px}.lab-shipments div{background:#2b3650;border:1px solid #3e4f72;border-radius:8px;padding:12px}.lab-shipments span{display:block;font-size:11px;color:#a9b8d4}.lab-shipments b{font-size:20px;font-weight:450}.lab-control{margin-top:24px;border-top:1px solid #39445a;padding-top:24px}.segmented{display:flex;gap:4px;background:#121a28;border-radius:8px;padding:4px;width:max-content;max-width:100%}.segmented button{background:transparent;border:0;color:#a9b8d3;border-radius:5px;padding:9px 16px;font-size:13px;min-height:44px}.segmented button[aria-pressed=true]{background:#eaf0ff;color:#203661}.lab-total{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-top:22px}.lab-total>span{font-size:13px;color:#b6c3db;max-width:160px}.lab-total strong{font-weight:400;font-size:49px;line-height:1}.lab-control>p{margin-top:16px;font-size:13px;color:#bac8e0;min-height:42px}.join-lab figcaption{font-size:11px;color:#91a1bd;margin-top:20px}.join-lab[data-mode=joined] .lab-shipments div{background:#3d5290;border-color:#6a8be7}.reading-section{border-bottom:1px solid #e1e5ee}.reading-list article{display:flex;align-items:center;gap:28px;padding:32px 0;border-top:1px solid #dfe5f0}.reading-list h3{font-size:27px}.reading-list article p{margin-top:12px;font-size:15px}.reading-symbol{display:flex;gap:5px;width:85px;height:85px;background:#eff3fc;border-radius:12px;align-items:center;justify-content:center;flex-shrink:0}.reading-symbol i{width:17px;height:40px;background:#6180d1;transform:skewY(-20deg)}.reading-symbol i:nth-child(2){height:56px;background:#abc0f1}.reading-symbol i:nth-child(3){height:25px}.read-action{margin-left:auto;padding:13px;border-radius:50%;flex-shrink:0}.read-action svg{width:24px}.read-action:hover{background:#edf2ff}.questions{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.questions details{padding:23px 0;border-bottom:1px solid #dce3ef}.questions details:first-child{border-top:1px solid #dce3ef}.questions summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:17px}.questions summary::-webkit-details-marker{display:none}.questions summary>span{font-size:25px;color:#4167c4;line-height:1}.questions details[open] summary>span{transform:rotate(45deg)}.questions details>p{font-size:15px;line-height:1.7;margin-top:18px;padding-right:30px}.closing{position:relative;overflow:hidden;isolation:isolate;min-height:420px;background:#274cb2;color:white;display:flex;align-items:center;justify-content:center;padding:75px 24px}.closing-pixels{position:absolute;z-index:-1;inset:-20px;display:grid;grid-template-columns:repeat(20,1fr);gap:0}.closing-pixels i{background:#99b2f5;opacity:calc(var(--v)*.23)}.closing-copy{text-align:center;max-width:650px}.closing-copy h2{font-size:clamp(40px,4.4vw,62px)}.closing-copy p{color:#d6e2ff;max-width:430px;margin:24px auto}.site-footer{padding:62px 32px 0;overflow:hidden}.footer-grid{display:grid;grid-template-columns:1.7fr 1fr .8fr .8fr;gap:45px}.footer-brand img{width:220px}.footer-brand p{font-size:14px;margin-top:20px;line-height:1.6}.footer-mail{display:inline-block;font-size:14px;margin-top:20px;color:#304d93}.footer-grid nav h2{font-size:13px;letter-spacing:0;font-weight:500;margin-bottom:17px;color:#60708a}.footer-grid nav>a{display:block;font-size:13px;margin-top:11px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #dfe5ee;margin-top:52px;padding-top:22px;font-size:12px;color:#60708a}.footer-wordmark{font-size:clamp(70px,14vw,190px);line-height:1.2;letter-spacing:-.055em;color:#f0f2f7;font-weight:450;white-space:nowrap;margin-top:35px;margin-bottom:-22px}.footer-wordmark span{font-weight:300}.inner-title{padding:75px 32px 70px;border-bottom:1px solid #dfe5ef}.inner-title>nav{display:flex;gap:12px;font-size:12px;color:#60708a;margin-bottom:32px;flex-wrap:wrap}.inner-title>h1{max-width:820px}.inner-title>p{font-size:23px;margin-top:24px;max-width:760px;line-height:1.5}.inner-service-scene{margin-top:45px}.inner-service-scene .service-scene{min-height:350px}.inner-service-scene .pipeline-bands{height:160px}.inner-service-scene .service-scene>p{max-width:none}.inner-service-scene .relationship-art{margin-top:35px}.inner-service-scene .relationship-table{min-width:230px}.inner-service-scene .relationship-art>svg{width:200px}.inner-service-scene .relationship-note{max-width:600px;margin-inline:auto}.inner-service-scene .definition-document{max-width:650px;transform:none;margin-top:20px}.inner-service-scene .definition-document>div{grid-template-columns:100px 1fr}.chapter-nav{display:flex;flex-wrap:wrap;gap:8px 22px;padding:28px 0;border-bottom:1px solid #dce3ef;font-size:12px;color:#74839b}.chapter-nav a{padding:5px 0}.service-reading{padding:0 32px 70px}.service-reading article>section{display:grid;grid-template-columns:.7fr 1.3fr;gap:75px;padding:55px 0;border-bottom:1px solid #dfe5ef}.service-reading article h2{font-size:29px;line-height:1.23}.service-reading article p{font-size:16px;line-height:1.85}.service-reading article p+p{margin-top:20px}.article-reading{padding:0 32px 70px}.article-reading .chapter-nav{max-width:820px;margin:auto}.article-reading>article{max-width:760px;margin:0 auto}.article-reading article>section{padding-top:60px}.article-reading h2{font-size:31px;line-height:1.25;margin-bottom:25px}.article-reading p{font-size:17px;line-height:1.85;color:#56637b}.article-reading .join-lab{color:white;margin:35px -40px 10px}.article-reading .join-lab p{font-size:13px;color:#bac8e0;line-height:1.6}.article-next{padding:32px;border-top:1px solid #dfe5ef;border-bottom:1px solid #dfe5ef;display:flex;gap:35px;font-size:14px;align-items:center}.article-next>p{margin-right:auto;font-size:12px}.article-next>a{max-width:230px}.timeline-figure{display:flex;align-items:center;gap:25px;flex-wrap:wrap;background:#f1f5ff;border-radius:12px;padding:28px;margin-top:32px}.timeline-figure div{display:flex;flex-direction:column;gap:6px}.timeline-figure span{font-size:12px;color:#60708a}.timeline-figure strong{font-weight:500;font-size:17px;color:#314d87}.timeline-figure>svg{width:100px;color:#5c7cce}.timeline-figure figcaption{flex-basis:100%;font-size:11px;color:#60708a}.notes-index{padding:0 32px 75px}.notes-index article{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:center;padding:55px 0;border-bottom:1px solid #dfe5ef}.notes-index h2{font-size:36px}.notes-index p{margin-top:20px;max-width:520px}.notes-index .button{margin-top:25px}.note-art{height:250px;border-radius:16px;display:grid;grid-template-columns:repeat(7,1fr);padding:40px;gap:8px;transform:perspective(900px) rotateY(5deg);background:#edf2fd;overflow:hidden}.note-art i{background:#466bd0;opacity:calc(.1 + var(--v)*.7);border-radius:2px;transform:translateY(calc(var(--v)*20px))}.note-art-1{background:#e6edf8;transform:perspective(900px) rotateY(-5deg)}.contact-title{padding:80px 32px 60px;border-bottom:1px solid #dfe5ef}.contact-title>p{font-size:23px;max-width:650px;margin-top:25px}.contact-sheet{display:grid;grid-template-columns:1.5fr 1fr;gap:65px;padding:65px 32px}.contact-sheet h2{font-size:22px;margin-bottom:22px}.contact-email{display:inline-block;font-size:clamp(20px,2.6vw,35px);letter-spacing:-.03em;color:#2d4eaa;line-height:1.3;overflow-wrap:anywhere}.contact-sheet p{font-size:15px;margin-top:24px;max-width:540px}.contact-secondary>a{font-size:20px}.enquiry-notes{grid-column:1/-1;border-top:1px solid #dfe5ef;padding-top:45px;display:grid;grid-template-columns:.65fr 1.35fr;gap:25px 70px}.enquiry-notes dl{margin:0}.enquiry-notes dl>div{display:grid;grid-template-columns:120px 1fr;gap:20px;padding:17px 0;border-bottom:1px solid #dfe5ef}.enquiry-notes dt{font-size:13px;color:#60708a}.enquiry-notes dd{margin:0;font-size:15px;color:#53617a}.enquiry-notes>p{grid-column:2;margin:0;font-size:12px}.shader-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;opacity:0}.service-scene>*:not(.shader-canvas){position:relative;z-index:1}@media(min-width:801px){.hero-copy{animation:copy-enter .8s cubic-bezier(.2,.8,.2,1) both}@keyframes copy-enter{from{opacity:.4;transform:translateY(18px)}to{opacity:1;transform:none}}}.js .reveal{opacity:.35;transform:translateY(25px);transition:opacity .8s,transform .8s cubic-bezier(.2,.8,.2,1)}.js .reveal.is-visible{opacity:1;transform:none}::-webkit-scrollbar{width:11px}::-webkit-scrollbar-track{background:#f2f5fa}::-webkit-scrollbar-thumb{background:#bac8e3;border:3px solid #f2f5fa;border-radius:8px}
@media(max-width:1100px){.frame{width:calc(100% - 48px)}.header-inner{width:calc(100% - 64px)}.wide-nav{gap:20px}.hero{padding-top:50px}.hero-triptych{gap:15px;padding:0 15px}.service{gap:38px}.service-copy h2{font-size:35px}.workbench-content{padding:45px 20px;grid-template-columns:1fr .25fr 1.1fr}.report-output,.output-lines{display:none}.service-index>a{padding:22px 18px}.footer-grid{gap:28px}.intro{gap:55px}.intro>p{font-size:26px}.example-inner{gap:35px}.join-lab{padding:23px}.relationship-table{min-width:105px}.relationship-table b,.relationship-table span{padding:10px 12px}.relationship-art>svg{width:50px}.definition-document{width:95%}.service-scene{padding:24px}.footer-wordmark{font-size:13.5vw}.questions{gap:40px}.service-reading article>section{gap:45px}}
@media(max-width:800px){.frame{width:calc(100% - 32px)}.site-header{padding:12px 0}.header-inner{width:calc(100% - 40px);gap:18px}.brand img{width:180px}.wide-nav{display:none}.header-contact{margin-left:auto;font-size:12px;padding:10px 16px}.mobile-menu{display:block;position:relative}.mobile-menu summary{list-style:none;cursor:pointer;font-size:13px;padding:10px 0;min-height:44px;display:flex;align-items:center;gap:8px}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:fixed;left:20px;right:20px;top:80px;padding:16px;background:#fff;box-shadow:0 15px 35px #1d335b26;border-radius:12px}.mobile-menu nav>a{display:block;padding:12px;border-radius:7px}.mobile-menu nav>a:hover{background:#edf2ff}.hero-copy>p{font-size:17px;max-width:600px}.hero h1{font-size:49px}.hero-triptych{margin-top:45px;gap:10px;padding:0 10px}.source-visual,.report-visual{height:250px}.model-visual{height:300px}.ribbon-orbit{transform:translateX(-50%) rotate(-30deg) scale(.75);top:15px}.source-slip{left:12px;right:12px;padding:12px}.source-slip span{font-size:9px}.source-slip b{font-size:10px}.definition-slip{left:12px;right:12px;padding:14px}.definition-slip>strong{font-size:20px}.definition-slip>span{font-size:9px}.definition-slip dl{font-size:9px}.model-caption{font-size:10px;padding:10px 12px}.hero-piece figcaption{padding:20px 14px;min-height:140px}.hero-piece figcaption span{font-size:14px}.hero-piece figcaption p{font-size:12px}.intro{grid-template-columns:1fr;gap:25px}.section{padding:65px 24px}.intro h2{font-size:31px}.intro>p{font-size:27px;max-width:620px}.section-heading{display:block}.section-heading>p{margin-top:25px;max-width:600px}.platform-section{padding:0 24px 65px}.workbench-content{padding:30px 18px;grid-template-columns:1fr .2fr 1.1fr}.service-index strong{font-size:14px}.service-index small{font-size:11px}.service-index>a{padding:20px 14px;gap:10px}.service-index svg{width:18px}.service{grid-template-columns:1fr 1fr!important;gap:25px;padding:65px 24px}.service-copy h2{font-size:31px}.service-lead{font-size:18px}.service-copy>p:not(.service-lead){font-size:14px}.service-scene{padding:20px;min-height:420px}.load-window{padding:15px;display:block;max-width:220px;margin-inline:auto}.load-window svg{display:none}.load-window>div+div{margin-top:10px;border-top:1px solid #e3e9f2;padding-top:10px}.pipeline-bands{height:180px}.load-window b{font-size:13px}.relationship-art{margin-top:50px}.relationship-table{min-width:85px}.relationship-table b,.relationship-table span{font-size:10px;padding:9px}.relationship-art>svg{width:35px}.relationship-note{padding:15px;display:block;margin-top:35px}.relationship-note p{margin-top:7px}.definition-document{padding:20px 15px}.definition-document h3{font-size:20px}.definition-document>div{display:block}.definition-document p{margin-top:6px}.service-scene>p{font-size:12px}.example-inner{display:block;padding:65px 24px}.example-intro{max-width:580px;margin-bottom:40px}.example-intro h2{font-size:38px}.example-inner>.join-lab{max-width:650px}.reading-list h3{font-size:23px}.reading-symbol{width:65px;height:70px}.questions{grid-template-columns:1fr;gap:35px}.questions>div{max-width:650px}.closing{min-height:370px}.closing h2{font-size:48px}.footer-grid{grid-template-columns:1.5fr 1fr;gap:35px}.footer-grid>nav:nth-child(3){grid-column:1}.site-footer{padding:45px 24px 0}.footer-wordmark{font-size:12.5vw;margin-top:30px;margin-bottom:-12px}.service-reading article>section{grid-template-columns:1fr;gap:22px}.service-reading article p{font-size:16px}.inner-title{padding:55px 24px}.inner-title h1{font-size:48px}.inner-title>p{font-size:21px}.service-reading,.article-reading{padding-inline:24px}.article-reading .join-lab{margin-inline:0}.notes-index{padding:0 24px 50px}.notes-index article{gap:30px}.notes-index h2{font-size:30px}.note-art{height:220px;padding:25px}.contact-title{padding:55px 24px}.contact-sheet{gap:35px;padding:50px 24px}.contact-email{font-size:24px}.enquiry-notes{grid-template-columns:1fr;gap:15px}.enquiry-notes>p{grid-column:1}.contact-secondary>a{font-size:17px}.article-next{display:block}.article-next>a{display:block;margin-top:15px}.inner-service-scene .relationship-table{min-width:160px}.inner-service-scene .relationship-art>svg{width:100px}}
@media(max-width:600px){h1{font-size:40px}h2{font-size:31px}.frame{width:calc(100% - 24px)}.header-inner{width:calc(100% - 32px);gap:15px}.brand img{width:155px}.header-contact{display:none}.mobile-menu{margin-left:auto}.hero{padding-top:43px}.hero-copy{padding-inline:18px}.hero h1{font-size:40px;line-height:1.12}.hero-copy>p{font-size:16px;line-height:1.7;margin-top:22px}.actions{gap:9px;flex-wrap:wrap;margin-top:25px}.button{font-size:13px;min-height:46px;padding:12px 19px}.hero-triptych{grid-template-columns:1fr;margin-top:35px;padding:0 14px;gap:12px}.hero-piece{border-radius:14px;display:grid;grid-template-columns:1fr 1fr;align-items:center;min-height:155px}.hero-piece.piece-model{grid-template-columns:1fr;order:-1}.hero-piece.piece-source,.hero-piece.piece-report{margin-top:0}.source-visual,.report-visual{height:180px;border-radius:14px 0 0 14px}.model-visual{height:260px}.ribbon-orbit{top:-10px;transform:translateX(-50%) rotate(-30deg) scale(.8)}.hero-piece figcaption{padding:20px 17px;min-height:0;background:transparent}.piece-model figcaption{text-align:center;padding-top:8px;padding-bottom:22px}.piece-model figcaption p{font-size:13px}.piece-model figcaption span{font-size:17px}.source-slip{bottom:15px;padding:10px}.source-slip div{padding:6px 0}.source-slip span{font-size:8px}.source-slip b{font-size:9px}.definition-slip{bottom:15px;padding:12px;left:10px;right:10px}.definition-slip>strong{font-size:18px}.definition-slip>span{font-size:8px}.definition-slip dl{font-size:8px}.hero-piece.piece-report .definition-slip dl div{padding-top:5px}.hero-piece.piece-report .definition-slip dl div:nth-child(2){display:none}.intro{padding:58px 20px;margin-top:35px}.intro h2{font-size:28px}.intro>p{font-size:23px;line-height:1.5}.section-heading{margin-bottom:30px}.section-heading h2{font-size:32px}.section-heading>p{font-size:15px;margin-top:20px}.platform-section{padding:0 16px 55px}.workbench{border-radius:14px 14px 0 0}.workbench-top{padding:15px;font-size:10px;gap:15px}.workbench-content{padding:25px 18px;grid-template-columns:1fr;gap:20px}.source-stack{display:none}.model-connectors{display:none}.defined-model{padding:20px}.defined-model>b{font-size:16px}.defined-model>p{font-size:12px}.field-chips span{font-size:10px}.workbench figcaption{padding:16px;font-size:11px}.service-index{grid-template-columns:1fr;border-radius:0 0 14px 14px}.service-index>a{padding:20px}.service-index>a+a{border-left:0;border-top:1px solid #dbe2f1}.service-index strong{font-size:15px}.service-index small{font-size:12px}.service-index svg{width:21px}.service{grid-template-columns:1fr!important;padding:55px 20px;gap:30px}.service:nth-child(2) .service-copy{order:0}.service-copy h2{font-size:35px}.service-lead{font-size:19px}.service-copy>p:not(.service-lead){font-size:15px}.service-detail{margin-top:25px}.service-detail>div{font-size:13px}.service-scene{min-height:390px;padding:22px;border-radius:14px}.load-window{display:flex;max-width:none;padding:17px}.load-window svg{display:block;width:20px;margin-inline:10px}.load-window>div+div{border:0;padding:0;margin:0}.load-window span{font-size:10px}.load-window b{font-size:12px}.pipeline-bands{height:185px}.scene-heading{font-size:11px}.service-scene>p{font-size:13px;margin-top:25px}.relationship-art{margin-top:50px}.relationship-table{min-width:115px}.relationship-table b,.relationship-table span{font-size:11px;padding:10px 12px}.relationship-art>svg{width:55px}.relationship-note{display:flex;padding:16px}.relationship-note p{margin-top:0}.definition-document{max-width:330px;padding:24px 20px}.definition-document h3{font-size:23px}.definition-document>div{display:grid;grid-template-columns:60px 1fr;gap:10px}.definition-document p{margin:0;font-size:11px}.example-inner{padding:55px 20px}.example-intro h2{font-size:32px}.example-intro>p{font-size:15px}.join-lab{padding:20px 16px}.lab-source strong{font-size:34px}.lab-source>span{font-size:10px}.lab-shipments div{padding:10px}.lab-shipments span{font-size:9px}.lab-shipments b{font-size:17px}.lab-total strong{font-size:42px}.segmented button{padding:9px 15px;font-size:12px}.lab-control>p{font-size:12px}.lab-drawing{grid-template-columns:1fr .65fr 1fr}.lab-drawing>svg{height:auto}.join-lab figcaption{font-size:10px}.reading-section{padding:55px 20px}.reading-list article{gap:16px;padding:25px 0;align-items:start}.reading-list h3{font-size:22px}.reading-list article p{font-size:13px;line-height:1.6}.reading-symbol{width:45px;height:55px;border-radius:8px;gap:3px}.reading-symbol i{width:9px;height:27px}.reading-symbol i:nth-child(2){height:37px}.read-action{padding:8px 0 8px 8px;margin-left:0}.read-action svg{width:20px}.questions{padding:55px 20px;gap:25px}.questions summary{font-size:16px}.questions details>p{font-size:14px;padding-right:15px}.closing{padding:55px 24px;min-height:370px}.closing h2{font-size:41px}.closing-copy p{font-size:15px;max-width:300px}.closing-pixels{grid-template-columns:repeat(10,1fr)}.site-footer{padding:40px 20px 0}.footer-grid{grid-template-columns:1fr 1fr;gap:30px 20px}.footer-brand{grid-column:1/-1}.footer-brand p{font-size:14px}.footer-grid>nav:nth-child(3){grid-column:auto}.footer-grid nav h2{font-size:12px}.footer-grid nav>a{font-size:12px}.footer-bottom{font-size:10px;gap:10px;margin-top:35px}.footer-wordmark{font-size:14vw;margin-top:25px;margin-bottom:-8px}.inner-title{padding:45px 20px}.inner-title>nav{font-size:10px;gap:10px;margin-bottom:25px}.inner-title h1{font-size:39px}.inner-title>p{font-size:20px;line-height:1.5}.inner-service-scene{margin:30px -8px 0}.inner-service-scene .relationship-table{min-width:100px}.inner-service-scene .relationship-art>svg{width:50px}.inner-service-scene .definition-document{padding:20px 15px}.inner-service-scene .definition-document>div{grid-template-columns:65px 1fr}.inner-service-scene .service-scene{padding:20px}.service-reading,.article-reading{padding:0 20px 55px}.chapter-nav{font-size:11px;gap:6px 15px;padding:20px 0}.service-reading article>section{padding:40px 0;gap:20px}.service-reading article h2{font-size:27px}.service-reading article p{font-size:15px;line-height:1.85}.article-reading article>section{padding-top:40px}.article-reading h2{font-size:27px}.article-reading p{font-size:16px;line-height:1.85}.article-next{padding:26px 20px}.timeline-figure{padding:20px;gap:15px}.timeline-figure>svg{width:45px}.timeline-figure strong{font-size:14px}.timeline-figure span{font-size:10px}.notes-index{padding:0 20px 40px}.notes-index article{display:block;padding:35px 0}.notes-index h2{font-size:29px;margin-top:25px}.notes-index p{font-size:15px}.note-art{height:180px;padding:25px;gap:5px}.contact-title{padding:45px 20px}.contact-title h1{font-size:40px}.contact-title>p{font-size:20px}.contact-sheet{display:block;padding:40px 20px}.contact-secondary{margin-top:35px;padding-top:30px;border-top:1px solid #dfe5ef}.contact-email{font-size:24px}.contact-sheet p{font-size:14px}.enquiry-notes{display:block;margin-top:35px;padding-top:30px}.enquiry-notes dl>div{grid-template-columns:80px 1fr;gap:15px}.enquiry-notes dd{font-size:13px}.enquiry-notes dt{font-size:11px}.enquiry-notes>p{margin-top:20px;font-size:11px}}@media(max-width:360px){.brand img{width:145px}.hero h1{font-size:35px}.hero-copy{padding-inline:15px}.hero-copy>p{font-size:15px}.actions .button{width:100%}.hero-triptych{padding-inline:10px}.hero-piece figcaption{padding-inline:13px}.hero-piece figcaption span{font-size:13px}.hero-piece figcaption p{font-size:11px}.relationship-table{min-width:95px}.relationship-art>svg{width:35px}.load-window b{font-size:10px}.load-window span{font-size:9px}.contact-email{font-size:21px}.closing h2{font-size:36px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-copy,.pixel-flow i,.ribbon-orbit i,.report-pixels i,.travel-line,.pipeline-bands i{animation:none!important}.js .reveal{opacity:1;transform:none;transition:none}.button{transition:background .1s}.button:hover{transform:none}}
/* Grainset deliberately closes with a compact colophon rather than Thread's large wordmark. */
.site-footer{padding-bottom:30px}.closing-copy{position:relative;z-index:2}.closing .shader-canvas{z-index:-1}.closing-pixels{z-index:0;opacity:.6}.inner-title:not(.service-title)>nav a[href='/notes']{color:#657a9d}
.history-model{background:#fff;border-radius:12px;padding:24px;margin:38px 5px 0;box-shadow:0 15px 35px #29365b16}.history-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.history-head b{font-size:17px;font-weight:500}.history-head>span{font-size:11px;color:#60708a}.history-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 15px;border-radius:6px;color:#8a96ad;font-size:12px;border:1px solid transparent;transition:background .25s,color .25s}.history-row.active{background:#e9efff;color:#345295;border-color:#cad8fc}.history-row span:first-child{font-weight:500;font-size:16px}.history-track{display:flex;gap:5px;margin:22px 0}.history-track i{height:8px;flex:1;background:#aec0ed}.history-track i:nth-child(n+7){background:#5979ce}.history-choices{display:flex;gap:8px}.history-choices button{font-size:12px;min-height:44px;border:1px solid #dbe3f5;border-radius:6px;padding:10px 17px;background:#fff;color:#657592}.history-choices button[aria-pressed=true]{background:#243d80;border-color:#243d80;color:#fff}.history-result{font-size:12px!important;color:#4e648c!important;margin-top:18px!important;line-height:1.5}.inner-service-scene .history-model{max-width:650px;margin-inline:auto}.inner-service-scene .model-scene{min-height:400px}@media(max-width:800px){.history-model{padding:18px;margin-top:30px}.history-head{gap:10px}.history-head b{font-size:15px}.history-head>span{font-size:9px}.history-row{padding:12px 10px;gap:10px;font-size:10px}.history-row span:first-child{font-size:14px}.history-choices button{padding:10px 12px;font-size:11px}.history-result{font-size:11px!important}.history-choices{gap:5px}}@media(max-width:600px){.history-model{padding:20px;margin-inline:0}.history-head b{font-size:16px}.history-head>span{font-size:10px}.history-row{padding:12px;font-size:11px}.history-choices button{padding:10px 16px;font-size:12px}}

.pipeline-bands i,.travel-line{animation-play-state:paused}

.footer-bottom{font-size:12px}.definition-document>strong{display:block;font-size:23px;line-height:1.2;letter-spacing:-.035em;font-weight:450;margin-bottom:20px}
.colophon-main{display:flex;justify-content:space-between;gap:35px;align-items:center}.colophon-brand img{width:225px;display:block}.colophon-contact{display:flex;flex-direction:column;gap:5px;text-align:right}.colophon-contact>a:first-child{font-size:19px;color:#304d93}.colophon-contact>a:last-child{font-size:13px;color:#60708a}.colophon-index{display:flex;align-items:center;flex-wrap:wrap;gap:16px 34px;padding:25px 0;margin-top:35px;border-top:1px solid #dfe5ee;border-bottom:1px solid #dfe5ee}.colophon-index>a{font-size:13px}.colophon-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:25px;font-size:12px;color:#60708a}.colophon-bottom small{font-size:12px}.colophon-bottom nav{display:flex;gap:22px}@media(max-width:600px){.colophon-main{display:block}.colophon-brand img{width:190px}.colophon-contact{text-align:left;margin-top:23px}.colophon-contact>a:first-child{font-size:17px}.colophon-contact>a:last-child{font-size:12px}.colophon-index{gap:13px 22px;margin-top:25px;padding:22px 0}.colophon-index>a{font-size:12px}.colophon-bottom,.colophon-bottom small{font-size:11px}.colophon-bottom nav{gap:18px}}
/* Bespoke service topology and analytical lineage, round two. */
.topology-header{padding:12px 0 0;background:#fff}.header-utility,.route-navigation{width:calc(100% - 120px);max-width:1120px;margin:auto}.header-utility{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:35px}.header-utility .brand img{width:185px}.header-utility>nav{display:flex;gap:30px;align-items:center;font-size:13px}.header-utility>nav>a{padding:7px 0}.route-navigation{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:9px;padding:5px 0 13px}.route-navigation>a{display:flex;align-items:center;gap:11px;white-space:nowrap;min-height:44px;font-size:15px;color:#263851;padding:6px 0}.junction-node{height:20px;width:20px;stroke:#5576c1;stroke-width:1.3;transition:transform .25s,stroke .25s}.route-navigation>a:hover .junction-node,.route-navigation>a:focus-visible .junction-node{transform:rotate(-8deg);stroke:#123bc1}.route-navigation>a[aria-current=page]{color:#1c45b2}.junction-link{flex:1;width:60px;min-width:20px;max-width:160px;height:25px;stroke:#b5c5e9;stroke-width:1.3}.topology-mobile{display:none}.hero{padding-top:49px}.hero-copy{max-width:1100px}.hero-copy h1{max-width:1060px;font-size:clamp(48px,6.1vw,88px);letter-spacing:-.04em}.hero-copy h1 em{font-style:normal;color:#365ac3}.hero-copy>p{font-size:18px;max-width:680px;margin-top:22px}.hero-copy .actions{margin-top:25px}.lineage-canvas{margin:48px 22px 0;background:#f1f5fd;position:relative;overflow:hidden;border-radius:15px 15px 0 0}.lineage-space{position:relative;min-height:440px;isolation:isolate}.lineage-grid{position:absolute;inset:0;display:grid;grid-template-columns:repeat(12,1fr);gap:0;z-index:-1;opacity:.4}.lineage-grid i{border-right:1px solid #d8e3f6;border-bottom:1px solid #d8e3f6;background:#eff4fd}.lineage-grid i:nth-child(3n){background:#e1eafb}.lineage-routes{position:absolute;inset:0;width:100%;height:100%;z-index:0}.lineage-base{stroke:#c2d0ed;stroke-width:1.4}.lineage-trace{stroke:#365fc9;stroke-width:2.5;stroke-dasharray:650;stroke-dashoffset:650;animation:lineage-draw 2s cubic-bezier(.3,.7,.2,1) .7s forwards}.trace-model{animation-delay:1.5s}.route-stop{fill:#a9badc}.lineage-plane{position:absolute;z-index:1;transition:filter .5s,transform .5s}.plane-title{display:flex;align-items:center;gap:10px;margin-bottom:25px}.plane-title h2{font-size:16px;letter-spacing:-.015em;font-weight:500}.plane-node{width:8px;height:8px;background:#6f8ac6;box-shadow:0 0 0 5px #e0e9fb;border-radius:50%}.source-plane{left:3.2%;top:72px;width:25.7%}.source-fieldnames,.trace-record{display:grid;grid-template-columns:30px 1fr 1fr;gap:12px;align-items:center}.source-fieldnames{font-size:10px;color:#607392;margin-bottom:12px;padding:0 10px}.source-fieldnames span:nth-child(2){text-align:right}.source-fieldnames span:last-child{text-align:right}.trace-record{padding:13px 10px;font-size:12px;background:#fff;border:1px solid #d4dff3;border-radius:4px;box-shadow:0 6px 13px #263f7610;position:relative;animation:record-place 1.4s cubic-bezier(.2,.8,.2,1) both}.record-b{animation-delay:.15s;margin-top:9px}.trace-record b{font-size:14px;font-weight:500;text-align:right;font-variant-numeric:tabular-nums}.trace-record>span:last-child{font-size:11px;color:#527147;text-align:right}.trace-record.excluded{margin-top:9px;opacity:.55;background:#e8edf6;border-style:dashed;animation-delay:.3s}.trace-record.excluded>span:last-child{color:#778399}.source-plane>p,.model-plane>p,.measure-plane>p:not(.measure-name){font-size:12px;line-height:1.5;color:#586f93;margin-top:18px}.model-plane{left:42.5%;top:145px;width:24%}.model-assembly{height:87px;position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;perspective:500px;margin-bottom:17px}.model-assembly i{background:#5378cf;border-radius:2px;box-shadow:0 8px 12px #30509414;transform:rotateX(24deg) skewY(-12deg);animation:model-block-place 2s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(.35s + var(--n)*.08s)}.model-assembly i:nth-child(n+9){background:#abc0ee}.model-rule{display:flex;flex-direction:column;gap:7px;border-top:1px solid #c9d7f1;padding-top:14px}.model-rule code{font-size:13px;color:#294b9f;font-family:Geist,sans-serif;font-variant-numeric:tabular-nums}.model-rule>span{font-size:11px;color:#637b9f}.measure-plane{left:77%;top:70px;width:20%}.measure-name{font-size:18px;line-height:1.3;color:#2b436f;max-width:170px;margin-top:35px}.reported-amount{font-size:clamp(40px,4.6vw,66px);letter-spacing:-.04em;font-weight:400;display:flex;align-items:baseline;gap:10px;color:#1c3b83;line-height:1.1;margin-top:12px}.reported-amount>span{font-size:11px;letter-spacing:0;color:#6e80a0}.measure-formula{display:flex;align-items:center;gap:13px;margin-top:20px;color:#536e9c;font-size:14px}.measure-formula>i{font-style:normal;color:#9aaccb}.measure-formula>span{border-bottom:1px solid #a9bce3;padding-bottom:5px;font-variant-numeric:tabular-nums}.trace-guide{display:grid;grid-template-columns:auto 1fr;gap:35px;align-items:center;background:#fff;padding:23px 28px;border-top:1px solid #dde5f2}.trace-next{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-width:210px;border:0;border-radius:8px;background:#203d87;color:#fff;padding:14px 18px;min-height:48px;font-size:13px;text-align:left}.trace-next[hidden]{display:none}.trace-next:hover{background:#345bbe}.trace-next svg{width:20px}.trace-guide>p{font-size:13px;line-height:1.6;color:#556b8f;max-width:680px}.lineage-canvas>figcaption{padding:12px 28px;font-size:10px;background:#fff;color:#697e9f;border-top:1px solid #e5ebf5}.lineage-canvas[data-trace=source] .source-plane .plane-node,.lineage-canvas[data-trace=model] .model-plane .plane-node,.lineage-canvas[data-trace=report] .measure-plane .plane-node{background:#234fc2;box-shadow:0 0 0 5px #c7d7fb}.lineage-canvas[data-trace=source] .trace-record:not(.excluded){background:#e4edff;border-color:#9db6ec}.lineage-canvas[data-trace=model] .model-assembly i{background:#2f5abe}.lineage-canvas[data-trace=model] .model-rule{border-top-color:#5076d0}.lineage-canvas[data-trace=report] .reported-amount{color:#214cbd}.lineage-canvas.is-tracing .lineage-trace{animation:lineage-draw .8s cubic-bezier(.2,.7,.2,1) both}.lineage-canvas.is-tracing .trace-model{animation-delay:.2s}.lineage-canvas.is-tracing .model-assembly i{animation:model-block-place 1s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--n)*.025s)}@keyframes lineage-draw{from{stroke-dashoffset:650}to{stroke-dashoffset:0}}@keyframes model-block-place{from{transform:translate(calc((var(--n) - 6)*17px),-50px) rotateX(65deg) skewY(-12deg);opacity:.15}to{transform:rotateX(24deg) skewY(-12deg);opacity:1}}@keyframes record-place{from{transform:translate(-30px,20px) rotate(-4deg);opacity:0}to{transform:none}}@media(max-width:1100px){.header-utility,.route-navigation{width:calc(100% - 64px)}.route-navigation{gap:13px}.route-navigation>a{font-size:13px;gap:8px}.lineage-canvas{margin-inline:15px}.trace-record{padding:12px 8px;gap:6px;font-size:11px}.trace-record b{font-size:13px}.trace-record>span:last-child{font-size:10px}.source-fieldnames{padding:0 8px;font-size:9px;gap:6px}.plane-title h2{font-size:14px}.plane-title{gap:8px}.model-plane{left:41%;width:25%}.measure-plane{left:76%;width:21%}.measure-name{font-size:17px}.model-rule code{font-size:11px}.trace-guide{gap:25px}.source-plane>p,.model-plane>p,.measure-plane>p:not(.measure-name){font-size:11px}}
@media(max-width:800px){.header-utility,.route-navigation{width:calc(100% - 40px)}.header-utility .brand img{width:170px}.header-utility>nav{gap:22px;font-size:12px}.route-navigation{gap:11px}.route-navigation>a{font-size:13px;gap:7px}.junction-node{width:16px;height:16px}.hero-copy h1{font-size:59px}.hero-copy>p{font-size:17px}.lineage-space{min-height:420px}.plane-title h2{font-size:13px}.source-plane{left:3%;width:27%;top:65px}.source-fieldnames,.trace-record{grid-template-columns:20px 1fr;gap:6px}.source-fieldnames>span:last-child{display:none}.trace-record>span:last-child{grid-column:2;text-align:right;font-size:9px;line-height:1}.trace-record b{font-size:12px}.trace-record{padding:9px 8px}.model-plane{left:42%;width:24%;top:145px}.model-assembly{height:70px;gap:4px}.model-rule code{font-size:10px}.model-rule>span{font-size:10px}.measure-plane{top:65px;left:77%;width:20%}.measure-name{font-size:15px;margin-top:30px}.reported-amount{font-size:43px;display:block}.reported-amount>span{display:block;font-size:9px;margin-top:5px}.measure-formula{font-size:12px;gap:10px}.source-plane>p,.model-plane>p,.measure-plane>p:not(.measure-name){font-size:10px}.trace-guide{padding:20px;gap:20px}.trace-guide>p{font-size:12px}.trace-next{font-size:12px;min-width:180px;padding:13px 15px}.lineage-canvas>figcaption{font-size:10px;padding:12px 20px}}
@media(max-width:600px){.topology-header{padding-top:9px}.header-utility{width:calc(100% - 36px);min-height:34px;gap:15px}.header-utility .brand img{width:145px}.header-utility>nav{gap:17px;font-size:11px}.header-utility>nav>a{min-height:40px;display:flex;align-items:center;padding:5px 0}.route-navigation{display:none}.topology-mobile{display:block;width:calc(100% - 36px);margin:2px auto 0;padding:0}.topology-mobile summary{display:flex;justify-content:space-between;padding:9px 0;min-height:42px;font-size:12px;color:#456089}.topology-mobile>nav{position:static;box-shadow:none;padding:4px 0 13px;border-radius:0;background:#fff;display:block}.topology-mobile>nav>a{padding:12px 0;border-top:1px solid #e4eaf4;font-size:13px}.topology-mobile summary>span{font-size:20px}.hero{padding-top:35px}.hero-copy h1{font-size:46px;letter-spacing:-.04em;line-height:1.06;max-width:350px}.hero-copy>p{font-size:15px;line-height:1.75;margin-top:21px}.hero-copy .actions{margin-top:23px;gap:9px}.lineage-canvas{margin:32px 14px 0;border-radius:12px 12px 0 0}.lineage-space{min-height:0;display:flex;flex-direction:column;padding:26px 22px;gap:0}.lineage-routes{display:none}.lineage-grid{grid-template-columns:repeat(6,1fr);opacity:.35}.lineage-plane{position:relative;left:auto;top:auto;width:100%;padding-bottom:28px}.lineage-plane+.lineage-plane{padding-top:26px;border-top:1px solid #cad7ee}.plane-title{margin-bottom:20px;gap:10px}.plane-title h2{font-size:16px}.plane-node{width:7px;height:7px}.source-fieldnames,.trace-record{grid-template-columns:25px 1fr 1fr;gap:12px}.source-fieldnames{font-size:9px;padding:0 10px}.source-fieldnames>span:last-child{display:block}.trace-record{font-size:12px;padding:12px 10px}.trace-record b{font-size:14px}.trace-record>span:last-child{font-size:10px;grid-column:auto;line-height:1.3}.source-plane>p,.model-plane>p,.measure-plane>p:not(.measure-name){font-size:12px;line-height:1.65;margin-top:15px}.model-assembly{max-width:210px;height:87px;gap:7px;margin:22px auto}.model-rule{padding-top:15px}.model-rule code{font-size:13px}.model-rule>span{font-size:11px}.measure-plane{padding-bottom:0}.measure-name{font-size:18px;margin-top:0}.reported-amount{display:flex;align-items:baseline;gap:12px;font-size:66px;line-height:1;margin-top:15px}.reported-amount>span{font-size:11px}.measure-formula{position:absolute;right:0;top:60px;display:flex;flex-direction:column;gap:5px;font-size:12px}.measure-formula>span{padding:0;border:0}.measure-formula>i{font-size:12px}.trace-guide{display:block;padding:22px}.trace-next{width:100%;min-width:0;font-size:13px;min-height:48px}.trace-guide>p{font-size:12px;margin-top:16px;line-height:1.7}.trace-guide>p:first-child{margin-top:0}.lineage-canvas>figcaption{font-size:10px;line-height:1.7;padding:12px 22px}.actions>.button{padding-inline:18px}.lineage-canvas[data-trace=source] .source-plane,.lineage-canvas[data-trace=model] .model-plane,.lineage-canvas[data-trace=report] .measure-plane{filter:none}}
@media(max-width:360px){.header-utility .brand img{width:126px}.header-utility>nav{gap:13px;font-size:10px}.header-utility{width:calc(100% - 30px)}.topology-mobile{width:calc(100% - 30px)}.hero-copy h1{font-size:41px}.hero-copy>p{font-size:14px}.hero-copy .actions>.button{width:auto;font-size:12px;padding-inline:15px}.lineage-space{padding:23px 17px}.trace-record{gap:8px}.source-fieldnames{gap:8px}.trace-record>span:last-child{font-size:9px}}
@media(prefers-reduced-motion:reduce){.lineage-trace,.model-assembly i,.trace-record,.lineage-canvas.is-tracing .lineage-trace,.lineage-canvas.is-tracing .model-assembly i{animation:none!important}.lineage-trace{stroke-dashoffset:0}.lineage-plane,.junction-node{transition:none}}
.lineage-canvas.is-tracing[data-trace=model] .trace-model,.lineage-canvas.is-tracing[data-trace=source] .trace-source{animation-name:lineage-draw-back}.lineage-canvas.is-tracing[data-trace=model] .trace-source,.lineage-canvas.is-tracing[data-trace=source] .trace-model{animation:none;stroke-dashoffset:0;opacity:.3}@keyframes lineage-draw-back{from{stroke-dashoffset:-650}to{stroke-dashoffset:0}}@media(max-width:600px){.js .lineage-space{height:340px;min-height:0;display:block}.js .lineage-plane{display:none;padding:0;border:0}.js .lineage-canvas[data-trace=source] .source-plane,.js .lineage-canvas[data-trace=model] .model-plane,.js .lineage-canvas[data-trace=report] .measure-plane{display:block}.trace-record>span:last-child{font-size:11px}.source-fieldnames{font-size:10px}.js .lineage-plane{animation:plane-enter .4s cubic-bezier(.2,.8,.2,1) both}@keyframes plane-enter{from{clip-path:inset(0 0 100% 0);opacity:.3}to{clip-path:inset(0);opacity:1}}}@media(prefers-reduced-motion:reduce){.js .lineage-plane{animation:none!important}}

.trace-record.excluded{opacity:1;color:#64748c}.trace-record.excluded>span:last-child{color:#5c6d87}
html{scroll-padding-top:150px}
.lineage-canvas.is-tracing .model-assembly i{animation-name:model-block-inspect}@keyframes model-block-inspect{from{transform:translate(calc((var(--n) - 6)*8px),-24px) rotateX(60deg) skewY(-12deg);opacity:.35}to{transform:rotateX(24deg) skewY(-12deg);opacity:1}}
