@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Space+Grotesk:wght@400;500;600&display=swap";:root{color:#283033;font-synthesis:none;text-rendering:optimizelegibility;--ink:#283033;--muted:#72736f;--canvas:#e8e4dc;--paper:#f1eee8;--coral:#c7634a;--line:#28303333;--line-soft:#28303317;background:#e8e4dc;font-family:Space Grotesk,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}html.is-slow-scrolling{scroll-behavior:auto}body{background:var(--canvas);min-width:320px;margin:0;overflow-x:hidden}button,a{color:inherit;font:inherit}a{text-decoration:none}button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}main{background-color:var(--canvas);background-image:linear-gradient(#2830330d 1px,#0000 1px),linear-gradient(90deg,#2830330d 1px,#0000 1px),radial-gradient(#28303314 .7px,#0000 .7px);background-size:112px 112px,112px 112px,28px 28px;position:relative;overflow:visible}.topbar{z-index:20;justify-content:space-between;align-items:center;padding:26px clamp(22px,5vw,72px);display:flex;position:fixed;top:0;left:0;right:0}.brand-lockup,.wordmark{align-items:center;display:flex}.brand-lockup{gap:0}.wordmark{gap:9px;font-size:1.18rem;font-weight:600}.nav-contact span{color:var(--coral)}.wordmark-name{letter-spacing:-.035em;white-space:nowrap}.wordmark-name span{color:var(--coral)}.wordmark-handle{color:var(--coral);letter-spacing:.08em;text-transform:uppercase;margin-left:2px;font-family:DM Mono,monospace;font-size:.57rem;font-weight:400}.wordmark-handle:hover,.wordmark-handle:focus-visible{color:var(--ink)}.nav-links{align-items:center;gap:30px;font-size:.78rem;display:flex}.nav-links a{color:var(--muted);transition:color .2s}.nav-links a:hover,.nav-links a:focus-visible{color:var(--ink)}.nav-contact{border-bottom:1px solid var(--coral);padding-bottom:5px;color:var(--ink)!important}.intro-section{text-align:center;z-index:3;justify-content:center;align-items:center;min-height:100svh;padding:100px 24px 80px;display:flex;position:relative}h1,h2,p{margin-top:0}.intro-section h1{letter-spacing:-.045em;max-width:980px;margin:0;font-size:clamp(4rem,12vw,9.5rem);font-weight:600;line-height:.82}h1 em{color:var(--coral);font-style:normal}.hero-concept-line{white-space:nowrap}.scroll-cue{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;flex-direction:column;align-items:center;gap:10px;padding:12px 20px 8px;font-family:DM Mono,monospace;font-size:.59rem;transition:color .2s,transform .25s;display:flex;position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.scroll-cue-arrow{color:var(--coral);font-size:1.15rem}.scroll-cue:hover,.scroll-cue:focus-visible{color:var(--ink);transform:translate(-50%,-3px)}.scroll-cue:focus-visible,.graph-node:focus-visible{outline:2px solid var(--coral);outline-offset:5px}.graph-section{z-index:2;min-height:138svh;margin-top:-24svh;position:relative}.graph-stage{isolation:isolate;height:100svh;position:sticky;top:0;overflow:hidden}.graph-stage:after{background:var(--canvas);content:"";opacity:var(--scene-veil-opacity,0);pointer-events:none;z-index:10;position:absolute;inset:0}.graph-canvas{max-width:1280px;height:100%;opacity:var(--scene-opacity,1);transform:translateY(var(--scene-y,0)) scale(var(--scene-scale,1));transform-origin:50%;will-change:opacity, transform;width:100%;margin:0 auto;position:relative}.graph-lines,.graph-nodes{width:100%;height:100%;position:absolute;inset:0}.graph-lines{pointer-events:none;z-index:1;overflow:visible}.graph-lines line{stroke:var(--edge-color,#3e414047);stroke-linecap:round;stroke-width:1.1px;vector-effect:non-scaling-stroke;transition:stroke .35s,stroke-width .35s}.graph-lines line.active{stroke:#c7634ae0;stroke-width:1.6px}.graph-lines line.dimmed{stroke:#c7634a4d}.graph-nodes{z-index:4}.graph-node{aspect-ratio:1;border:2px solid var(--accent,var(--line));color:var(--accent,var(--ink));cursor:pointer;left:var(--x);text-align:center;top:var(--y);box-shadow:none;width:var(--node-size,clamp(84px, 7.2vw, 92px));will-change:left, top, opacity;background:#f1eee8e0;border-radius:50%;justify-content:center;align-items:center;padding:13px;transition:background .25s,border-color .25s,box-shadow .42s,color .25s,filter .35s,transform .42s cubic-bezier(.22,1,.36,1);display:flex;position:absolute;transform:translate(-50%,-50%)}.graph-node:hover,.graph-node:focus-visible{background:color-mix(in srgb, var(--coral) 5%, var(--paper));box-shadow:0 0 0 4px color-mix(in srgb, var(--accent,var(--coral)) 8%, transparent);transform:translate(-50%,-50%)scale(1.045)}.graph-node:not(.active):not(.connected){filter:none;opacity:1}.graph-node:not(.exiting):hover,.graph-node:not(.exiting):focus-visible{filter:saturate();opacity:1}.graph-stage:not(.view-category) .graph-node.category,.graph-node.connected,.graph-node.active{opacity:1}.graph-node.active{box-shadow:0 0 0 5px color-mix(in srgb, var(--accent,var(--coral)) 11%, transparent);background:#f1eee8e0}.graph-node.exiting,.graph-canvas.is-navigating .graph-node{pointer-events:none}.graph-node.person{background:var(--paper);color:var(--coral);filter:none;opacity:var(--icon-opacity,1);width:var(--node-size,clamp(104px, 8.6vw, 114px));z-index:6;border-color:#28303338;padding:4px;box-shadow:0 0 0 5px #e8e4dccc}.graph-node.person:hover,.graph-node.person:focus-visible{background:var(--paper);border-color:var(--coral);box-shadow:0 0 0 5px color-mix(in srgb, var(--coral) 14%, transparent);filter:none}.graph-node.person.breadcrumb{color:var(--coral);filter:none;opacity:var(--icon-opacity,1);width:var(--node-size,clamp(68px, 5.8vw, 76px))}.person-icon{height:100%;transform:scale(var(--icon-scale,1));transform-origin:50%;border-radius:50%;justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden}.person-avatar{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.graph-node.person.breadcrumb .person-icon{box-shadow:inset 0 0 0 1px #2830331a}.graph-node.category.open{box-shadow:0 0 0 6px color-mix(in srgb, var(--accent) 10%, transparent);width:var(--node-size,clamp(90px, 7.8vw, 98px));background:#f1eee8e0}.graph-node.category.context{width:var(--node-size,clamp(64px, 5.6vw, 70px));border-width:1px}.graph-node.item{width:var(--node-size,clamp(60px, 5.5vw, 66px));background:#f1eee8e0}.graph-node.item.preview{background:color-mix(in srgb, var(--paper) 78%, transparent);width:var(--node-size,clamp(44px, 3.8vw, 48px));z-index:3;border-width:1px;padding:6px}.graph-node.item.focused{box-shadow:0 0 0 6px color-mix(in srgb, var(--accent,var(--coral)) 11%, transparent);width:var(--node-size,clamp(92px, 7.8vw, 100px));z-index:7;background:#f1eee8f5}.graph-node.item.logo-node{box-shadow:none;background:0 0;border-color:#0000;padding:6px}.graph-node.item.logo-node:hover,.graph-node.item.logo-node:focus-visible{box-shadow:0 0 0 5px color-mix(in srgb, var(--coral) 9%, transparent);background:#f1eee8b8}.graph-node.item.logo-node.active{box-shadow:0 0 0 6px color-mix(in srgb, var(--coral) 11%, transparent);background:#f1eee8c7}.graph-node.item.preview.logo-node{background:color-mix(in srgb, var(--paper) 78%, transparent);border-color:var(--accent,var(--coral));padding:6px}.graph-node.tool{width:var(--node-size,clamp(34px, 3.4vw, 38px));z-index:5;background:#f1eee8f0;border-width:1px;padding:7px}.graph-node.tool.overview-tool{border-color:color-mix(in srgb, var(--accent,var(--coral)) 72%, transparent);pointer-events:none;width:var(--node-size,18px);background:#f1eee8e6;padding:2px}.graph-node.tool.background-tool{width:var(--node-size,24px);padding:4px}.graph-node.tool.overview-tool .tool-logo{width:82%;height:82%}.graph-node.tool.overview-tool .node-symbol svg{stroke-width:1.8px;width:76%;height:76%}.tool-logo-lockup{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.tool-logo{object-fit:contain;pointer-events:none;width:72%;max-width:100%;height:72%;display:block}.node-symbol{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.node-symbol svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5px;width:68%;height:68%}.logo-pair .tool-logo-lockup{gap:1px}.logo-pair .tool-logo{width:47%;height:60%}.node-label{text-wrap:balance;max-width:88px;font-size:clamp(.69rem,.9vw,.82rem);font-weight:500;line-height:1.15}.graph-node.preview .node-label{letter-spacing:-.02em;max-width:46px;font-family:DM Mono,monospace;font-size:clamp(.46rem,.55vw,.56rem);line-height:1.08}.graph-detail{border-left:1px solid var(--line);z-index:7;grid-template-columns:70px minmax(0,240px);gap:12px;max-width:340px;padding-left:15px;animation:.3s .62s both detail-in;display:grid;position:absolute;bottom:clamp(24px,6vh,64px);left:clamp(24px,6vw,80px)}.detail-label{color:var(--muted);letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:7px;padding-top:3px;font-family:DM Mono,monospace;font-size:.5rem;display:flex}.detail-dot{background:var(--accent,var(--coral));border-radius:50%;width:6px;height:6px}.detail-copy h2{margin:0 0 6px;font-size:1.05rem;font-weight:500;line-height:1.1}.detail-copy p{color:var(--muted);margin:0;font-size:.7rem;line-height:1.5}.detail-tags{flex-wrap:wrap;gap:5px;margin:10px 0 0;padding:0;list-style:none;display:flex}.detail-tags li{border:1px solid var(--line);color:var(--muted);letter-spacing:.02em;white-space:nowrap;border-radius:999px;padding:3px 6px;font-family:DM Mono,monospace;font-size:.48rem}.site-footer{color:var(--muted);letter-spacing:.04em;opacity:var(--footer-opacity,1);text-transform:uppercase;transform:translateY(var(--footer-y,0));will-change:opacity, transform;z-index:3;grid-template-columns:1fr auto 1fr;align-items:center;margin:0 clamp(22px,5vw,72px);padding:22px 0 24px;font-family:DM Mono,monospace;font-size:.58rem;display:grid;position:relative}.footer-note{text-align:center;white-space:nowrap;justify-self:center}.footer-tech{text-align:right;white-space:nowrap;justify-self:end;align-items:center;gap:7px;display:inline-flex}.footer-tech-tools{align-items:center;gap:5px;display:inline-flex}.footer-tech-tools img{width:13px;height:13px;display:block}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=900px){.graph-detail{left:28px}}@media (width<=640px),(width<=960px) and (height<=520px) and (pointer:coarse){.topbar{padding:calc(14px + env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) 22px max(14px, env(safe-area-inset-left));background:linear-gradient(#e8e4dcf5 0%,#e8e4dcd1 72%,#0000 100%);gap:12px}.wordmark{gap:7px;font-size:1.05rem}.wordmark-handle,.nav-links a:first-child{display:none}.nav-links{flex-shrink:0;gap:12px;font-size:.7rem}.nav-contact{padding-bottom:3px}.intro-section{min-height:100dvh;padding:calc(86px + env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) calc(76px + env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left))}.intro-section h1{max-width:none;font-size:clamp(2.15rem,11vw,5rem);line-height:.88}.hero-concept-line{max-width:100%;display:inline-block}.scroll-cue{bottom:max(10px, env(safe-area-inset-bottom));min-height:44px}.graph-section{min-height:130svh;margin-top:-16svh}.graph-stage{height:calc(100dvh - 70px - env(safe-area-inset-bottom))}.graph-lines line{stroke-width:.9px}.graph-lines line.active{stroke-width:1.4px}.graph-node{width:var(--node-size,68px);padding:9px}.graph-node.item{width:var(--node-size,54px)}.graph-node.item.preview{width:var(--node-size,40px);padding:4px}.graph-node.tool{width:var(--node-size,32px);padding:5px}.graph-node.tool.overview-tool{width:var(--node-size,14px);padding:2px}.graph-node.tool.background-tool{width:var(--node-size,20px);padding:3px}.graph-node.category.open{width:var(--node-size,74px)}.graph-node.category.context{width:var(--node-size,52px)}.graph-node.item.focused{width:var(--node-size,72px)}.graph-node.person{width:var(--node-size,78px)}.graph-node.person.breadcrumb{width:var(--node-size,52px)}.node-label{max-width:66px;font-size:.61rem}.graph-node.preview .node-label{max-width:36px;font-size:.43rem}.graph-detail{border-left:0;border-top:1px solid var(--line);bottom:max(10px, env(safe-area-inset-bottom));left:max(14px, env(safe-area-inset-left));max-width:none;max-height:28dvh;right:max(14px, env(safe-area-inset-right));background:#f1eee8eb;padding:9px 8px 4px 0;display:block;overflow-y:auto}.detail-label{margin-bottom:6px;padding-top:0}.detail-copy h2{margin-bottom:4px;font-size:.95rem}.detail-copy p{max-width:300px;font-size:.65rem}.detail-tags{gap:4px;margin-top:7px}.detail-tags li{padding:2px 5px;font-size:.44rem}.site-footer{margin:0 max(14px, env(safe-area-inset-right)) 0 max(14px, env(safe-area-inset-left));padding:18px 0 calc(20px + env(safe-area-inset-bottom));grid-template-columns:1fr auto;gap:9px}.footer-note{grid-area:2/1/auto/-1;justify-self:center}.footer-tech{grid-area:1/2}}@media (width<=430px) and (height>=640px){.topbar{padding:calc(10px + env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) 16px max(12px, env(safe-area-inset-left));gap:8px}.wordmark{font-size:1rem}.nav-links{gap:9px;font-size:.67rem}.intro-section{min-height:100dvh;padding-bottom:calc(60px + env(safe-area-inset-bottom));padding-top:calc(72px + env(safe-area-inset-top))}.intro-section h1{font-size:clamp(2.15rem,10.7vw,2.65rem)}.scroll-cue{bottom:env(safe-area-inset-bottom);gap:6px;padding-top:6px;padding-bottom:0;font-size:.54rem}.graph-section{min-height:133svh;margin-top:-12svh}.graph-stage{height:calc(100dvh - 47px - env(safe-area-inset-bottom))}.graph-detail{bottom:max(6px, env(safe-area-inset-bottom));left:max(12px, env(safe-area-inset-left));max-height:22dvh;right:max(12px, env(safe-area-inset-right));grid-template-columns:56px minmax(0,1fr);gap:8px;padding:7px 6px 3px 0;display:grid}.detail-label{align-self:start;gap:5px;margin-bottom:0;padding-top:2px;font-size:.46rem}.detail-copy h2{margin-bottom:2px;font-size:.88rem}.detail-copy p{max-width:none;font-size:.61rem;line-height:1.4}.site-footer{margin:0 max(12px, env(safe-area-inset-right)) 0 max(12px, env(safe-area-inset-left));padding:10px 0 calc(10px + env(safe-area-inset-bottom));gap:6px;font-size:.52rem}}@media (width<=360px){.topbar{gap:8px}.wordmark{font-size:.96rem}.nav-links{gap:8px;font-size:.64rem}.graph-node.item{width:var(--node-size,50px)}.site-footer{font-size:.52rem}}@media (width<=960px) and (height<=520px) and (orientation:landscape) and (pointer:coarse){.intro-section{padding-bottom:54px;padding-top:calc(64px + env(safe-area-inset-top))}.intro-section h1{font-size:clamp(2.4rem,9.5vw,4.5rem)}.scroll-cue{flex-direction:row;align-items:center;gap:8px}.graph-detail{bottom:max(6px, env(safe-area-inset-bottom));grid-template-columns:64px minmax(0,1fr);gap:10px;max-height:25dvh;padding-top:7px;display:grid}.detail-label{margin-bottom:0}.detail-copy p{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}.site-footer{opacity:1;transform:none}.graph-stage:after{opacity:0}}@keyframes detail-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
