@font-face{font-family:Inter;src:url(/fonts/inter-regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url(/fonts/inter-medium.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:Inter;src:url(/fonts/inter-semibold.woff2) format("woff2");font-weight:600;font-display:swap}
:root{font-family:Inter,Arial,sans-serif;font-weight:500;letter-spacing:-.025em;color:#24332d;background:#fafaf7;font-synthesis:none;--ink:#24332d;--muted:#68716a;--accent:#e3ffa3}
*{box-sizing:border-box}
body{margin:0 auto;max-width:1600px;min-height:100svh}
button,a{-webkit-tap-highlight-color:transparent}
button{font:inherit;letter-spacing:inherit;cursor:pointer;color:inherit}
a{color:inherit;text-decoration:none}
button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #718b76;outline-offset:4px}
[hidden]{display:none!important}
.navbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding:clamp(8px,1vw,15px) clamp(17px,2.15vw,34px);min-height:clamp(41px,5.1vw,75px)}
.wordmark{display:inline-flex;align-items:center;gap:clamp(5px,.65vw,10px);justify-self:start;font-size:clamp(10px,1.05vw,16px);font-weight:500;letter-spacing:-.025em}
.brand-icon{display:grid;place-items:center;width:clamp(15px,1.85vw,28px);aspect-ratio:1;border-radius:23%;background:var(--accent);color:var(--ink);font-weight:500;box-shadow:inset 0 1px 0 #ffffff36}
.navbar nav{display:flex;align-items:center;gap:clamp(14px,2.1vw,33px);color:#68716a;font-size:clamp(9px,1.02vw,15px);font-weight:500;letter-spacing:-.025em}
.navbar nav button{border:0;padding:0;background:none;letter-spacing:inherit}
.navbar nav :is(button,a):hover{color:var(--ink)}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:clamp(25px,2.88vw,44px);padding:0 clamp(9px,1.12vw,17px);border:1px solid transparent;border-radius:999px;white-space:nowrap;font-size:clamp(9px,1.03vw,15px);font-weight:500;transition:transform .18s,background-color .18s,border-color .18s}
.button:hover{transform:translateY(-1px)}
.button:active{transform:translateY(0)}
.primary{background:var(--accent);color:var(--ink);border-color:#d2ed95;box-shadow:inset 0 1px 0 #ffffff80}
.primary:hover{background:#d8f594}
#start{background:#262626;border-color:#262626;color:#fff;box-shadow:inset 0 1px 0 #ffffff24,0 1px 2px #18181814}
#start:hover{background:#343434;border-color:#343434}
.quiet{background:#fffffc;border-color:#dedfd5}
.quiet:hover{border-color:#a8b49f}
.nav-action{justify-self:end}
main{padding-bottom:clamp(48px,8.8vw,140px)}
.hero{text-align:center;padding:clamp(58px,7.5vw,118px) 20px 0}
.hero h1{margin:0 auto;max-width:1000px;font-weight:500;font-size:clamp(36px,4.4vw,68px);letter-spacing:-.05em;line-height:1.07;text-wrap:balance}
.hero p{margin:clamp(16px,2vw,29px) auto 0;color:var(--muted);font-size:clamp(12px,1.39vw,21px);line-height:1.58;letter-spacing:-.025em}
.actions{display:flex;justify-content:center;gap:clamp(6px,.8vw,12px);margin-top:clamp(16px,2.05vw,31px)}
.workflow{width:min(73.2vw,1110px);margin:clamp(54px,7.65vw,118px) auto 0;scroll-margin-top:40px}
.map{position:relative;aspect-ratio:1060/300;container-type:inline-size}
.tracks{position:absolute;width:100%;height:100%;overflow:visible;fill:none}
.track-base{stroke:#eef1e7;stroke-width:9;stroke-linecap:round;stroke-linejoin:round}
.track-edge{stroke:#d5e4be;stroke-width:4.5;stroke-linecap:round}
.track-signal{stroke:#9fbb6f;stroke-width:1.8;stroke-dasharray:8 212;stroke-linecap:round;animation:trace 9s linear infinite}
@keyframes trace{to{stroke-dashoffset:-440}}
.ticks{stroke:#c9cfc1;stroke-width:1}
.junctions{fill:#fff;stroke:#bacd9a;stroke-width:1.4}
.node{position:absolute;left:var(--x);top:var(--y);translate:-50% -50%;display:grid;place-items:center;width:4.9cqw;min-width:25px;aspect-ratio:1;border-radius:27%;border:1px solid #e1e4d9;background:#fffefa;box-shadow:0 .65cqw 1.3cqw #2020290e;transition:transform .2s,border-color .2s}
.node :is(svg,img){display:block;width:58%;height:auto}
.node:hover{transform:translateY(-3px);border-color:#bbd38f}
.node.hub{width:6.9cqw;min-width:37px;color:var(--ink);background:var(--accent);border:0;box-shadow:0 1cqw 1.75cqw #6b803226,inset 0 1px 1px #ffffff90;font-size:3.25cqw;font-weight:500}
.node.hub svg{width:48%}.node.hub:hover{transform:none}
.marker,.map-label{position:absolute;translate:-50% -50%;white-space:nowrap;color:#65715f;font-size:1.08cqw;font-weight:500;letter-spacing:-.025em;line-height:1}
.marker{top:8.67%;padding:.75cqw 1.2cqw;border:1px solid #dfe4d7;border-radius:999px;background:#fcfdf8}
.intake{left:33.4%}.archive{left:66.6%}
.map-label{top:65%}.field{left:31%}.brief{left:69%}
dialog{width:min(440px,calc(100vw - 32px));padding:25px;border:1px solid #e3e3de;border-radius:17px;background:#fffffc;color:var(--ink);box-shadow:0 24px 90px #2b39292b}
dialog::backdrop{background:#24332945}
.dialog-top{display:flex;align-items:center;justify-content:space-between}
.dialog-top .brand-icon{width:26px}
.close{border:1px solid #e4e4e0;border-radius:50%;width:31px;height:31px;background:white;font-size:20px}
dialog h2{margin:18px 0 8px;font-size:27px;letter-spacing:-.025em;font-weight:500}
dialog p{margin:0;color:var(--muted);line-height:1.55;font-size:14px}
#collection{display:grid;gap:10px;margin-top:20px}
#collection label{font-size:13px}
#collection input{width:100%;border:1px solid #deded7;border-radius:8px;padding:10px;font:inherit}
#collection .button{justify-self:start;min-height:34px;font-size:12px}
#result{margin-top:12px}
@media(max-width:600px){
  .navbar{grid-template-columns:1fr 1fr;padding:10px 20px 0;gap:4px}
  .wordmark{font-size:15px;min-height:44px}.brand-icon{width:24px}
  .navbar nav{grid-row:2;grid-column:1/-1;justify-content:space-between;gap:2px;font-size:11px;padding-top:2px}
  .navbar nav :is(button,a){display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}
  .nav-action{grid-row:1;grid-column:2;font-size:12px;min-height:44px;padding-inline:16px}
  .hero{padding:44px 22px 0}.hero h1{font-size:clamp(30px,8.1vw,44px);line-height:1.12;max-width:15ch}.hero p{max-width:35ch;font-size:14px;line-height:1.6;margin-top:20px}
  .desktop-break{display:none}.actions{gap:8px;margin-top:24px}.actions .button{min-height:44px;font-size:12px;padding-inline:15px}
  .workflow{width:calc(100% - 48px);margin-top:56px}
  .map{aspect-ratio:1.65}.node::after{content:"";position:absolute;inset:-4px;border-radius:inherit}.node{width:36px;min-width:36px;border-radius:11px}.node.hub{width:48px;min-width:48px;border-radius:15px}
  .map-label{display:block;top:75%;font-size:9px}.marker{font-size:9px;padding:6px 9px}
  main{padding-bottom:48px}
  dialog{padding:22px}#collection input{font-size:16px}#collection .button{min-height:44px;font-size:14px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

.margin-credit{margin:48px 20px 0;text-align:center;font-size:12px;color:var(--muted);line-height:1.6}.margin-credit a{text-decoration:underline;text-underline-offset:3px}.margin-credit a:hover{color:var(--ink)}
.is-gallery-embed body{min-height:0}
