:root{--ink:#0e0c0a;--parchment:#ebe6dc;--paper-plate:#ebe6dc;--accent:#13a0c3;--accent-2:#2b3a2e;--font-display:"Cormorant Garamond", serif;--font-body:"IBM Plex Sans", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace}main.fading>.page{opacity:0;transition:opacity .25s}#splash{z-index:2000;color:#ebe6dc;letter-spacing:.02em;background:#0e0c0a;place-items:center;font-family:Cormorant Garamond,serif;font-size:28px;font-style:italic;transition:opacity .6s .2s;display:grid;position:fixed;inset:0}#splash.hide{opacity:0;pointer-events:none}#splash .pulse-dot{vertical-align:middle;background:#c89b3c;border-radius:50%;width:8px;height:8px;margin-right:14px;animation:1.2s ease-in-out infinite pulse;display:inline-block}@keyframes pulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}*{box-sizing:border-box}html,body{background:var(--ink);color:var(--parchment);font-family:var(--font-body);font-feature-settings:"ss01", "ss02";-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;padding:0;overflow-x:hidden}body{background:radial-gradient(ellipse 80% 60% at 50% 0%, color-mix(in oklab, var(--accent) 8%, transparent), transparent 70%), radial-gradient(ellipse 60% 40% at 90% 100%, color-mix(in oklab, var(--accent-2) 6%, transparent), transparent 70%), var(--ink);background-attachment:fixed;min-height:100vh}body:before{content:"";pointer-events:none;z-index:1000;opacity:.18;mix-blend-mode:overlay;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.55 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)'/></svg>");position:fixed;inset:0}::selection{background:var(--accent);color:var(--ink)}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.01em;text-wrap:balance;margin:0;font-weight:400}p{text-wrap:pretty}a{color:inherit;text-decoration:none}.mono{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;font-size:.78rem}.dim{opacity:.55}.nav{z-index:100;pointer-events:none;mix-blend-mode:difference;justify-content:space-between;align-items:center;padding:22px 42px;display:flex;position:fixed;top:0;left:0;right:0}.nav>*{pointer-events:auto}.nav .brand{font-family:var(--font-display);letter-spacing:.02em;color:var(--parchment);cursor:pointer;align-items:baseline;gap:10px;font-size:22px;display:flex}.nav .brand .dot{background:var(--accent);border-radius:50%;width:8px;height:8px;display:inline-block;transform:translateY(-2px)}.nav .brand small{font-family:var(--font-mono);letter-spacing:.24em;text-transform:uppercase;opacity:.6;font-size:9.5px}.nav-links{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;gap:28px;font-size:11px;display:flex}.nav-links button{color:var(--parchment);font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer;opacity:.55;background:0 0;border:0;padding:6px 0;transition:opacity .25s;position:relative}.nav-links button:hover,.nav-links button.active{opacity:1}.nav-links button.active:after{content:"";background:var(--accent);height:1px;position:absolute;bottom:-2px;left:0;right:0}@media (max-width:720px){.nav{padding:14px 18px}body.route-studio .nav,body.route-gallery .nav,body.route-about .nav{padding-left:18px}.nav .brand{gap:8px;font-size:18px}.nav .brand small{display:none}.nav-links{letter-spacing:.16em;gap:16px;font-size:10px}}.page{z-index:2;min-height:100vh;animation:.7s cubic-bezier(.2,.7,.2,1) both pageIn;position:relative}@keyframes pageIn{0%{transform:translateY(8px)}to{transform:translateY(0)}}body.route-studio .ticker{display:none}.ticker{z-index:5;font-family:var(--font-mono);letter-spacing:.24em;text-transform:uppercase;color:color-mix(in oklab, var(--parchment) 50%, transparent);border-top:1px solid color-mix(in oklab, var(--parchment) 8%, transparent);justify-content:space-between;align-items:center;margin-top:24px;padding:18px 42px 24px;font-size:10px;display:flex;position:relative}.ticker .pulse{background:var(--accent);vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-right:8px;animation:2s ease-in-out infinite tick;display:inline-block}@keyframes tick{0%,to{opacity:.3;transform:scale(.85)}50%{opacity:1;transform:scale(1.1)}}body.route-studio{height:100dvh;overflow:hidden}.page.studio{flex-direction:column;height:100dvh;padding:0;display:flex;overflow:hidden}.studio-grid{flex:1;grid-template:"left stage"1fr"meta meta"/minmax(260px,.9fr) minmax(320px,1.2fr);gap:0 32px;min-height:0;padding:90px 48px 18px 90px;display:grid}.studio-left{flex-direction:column;grid-area:left;justify-content:space-between;gap:20px;max-width:460px;min-height:0;display:flex;overflow:hidden}.brand-block{flex-direction:column;gap:12px;display:flex}.studio-name{font-family:var(--font-display);letter-spacing:-.015em;flex-direction:column;font-size:clamp(40px,4.4vw,68px);font-weight:400;line-height:.96;display:flex}.studio-name .line{display:block}.studio-name em{color:var(--accent);font-style:italic}.studio-bio{flex-direction:column;gap:12px;display:flex}.studio-bio .lead{font-family:var(--font-display);color:var(--parchment);text-wrap:pretty;max-width:32ch;margin:0;font-size:clamp(16px,1.3vw,20px);font-style:italic;line-height:1.4}.studio-bio .sub{color:color-mix(in oklab, var(--parchment) 65%, transparent);max-width:38ch;margin:0;font-size:13px;line-height:1.55}.plate-stage{cursor:pointer;-webkit-user-select:none;user-select:none;grid-area:stage;justify-content:center;align-items:center;min-height:0;display:flex;position:relative}.plate-mat{aspect-ratio:3/4;background:linear-gradient(180deg, color-mix(in oklab, var(--ink) 88%, var(--parchment)), color-mix(in oklab, var(--ink) 96%, var(--parchment)));width:auto;max-width:100%;height:100%;max-height:100%;box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--parchment) 8%, transparent), 0 40px 80px -20px #000000b3, 0 6px 24px -6px #00000080;padding:24px;position:relative}.plate-paper{background:var(--paper-plate,#ebe6dc);width:100%;height:100%;filter:drop-shadow(0 0 30px color-mix(in oklab, var(--accent) 22%, transparent));position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #0000002e,inset 0 0 30px #0000001f}.plate-img{width:100%;height:100%;position:absolute;inset:0}.plate-img svg{width:100%;height:100%;display:block}.plate-img-next{clip-path:inset(0 100% 0 0)}.dir-next .plate-img-next.ink-rolling{animation:inkReveal var(--brayer-duration,2.4s) cubic-bezier(.55,.05,.45,1) forwards}.dir-prev .plate-img-next{clip-path:inset(0 0 0 100%)}.dir-prev .plate-img-next.ink-rolling{animation:inkRevealRev var(--brayer-duration,2.4s) cubic-bezier(.55,.05,.45,1) forwards}@keyframes inkReveal{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes inkRevealRev{0%{clip-path:inset(0 0 0 100%)}to{clip-path:inset(0)}}.ink-edge{pointer-events:none;background:linear-gradient(90deg, color-mix(in oklab, var(--accent) 60%, var(--ink)) 0%, color-mix(in oklab, var(--ink) 80%, var(--accent)) 40%, transparent 100%);mix-blend-mode:multiply;opacity:0;width:16px;position:absolute;top:0;bottom:0;left:0;transform:translate(-200%)}.dir-next .ink-edge.ink-rolling{animation:inkEdge var(--brayer-duration,2.4s) cubic-bezier(.55,.05,.45,1) forwards}.dir-prev .ink-edge.ink-rolling{animation:inkEdgeRev var(--brayer-duration,2.4s) cubic-bezier(.55,.05,.45,1) forwards}@keyframes inkEdge{0%{opacity:0;left:0%}8%{opacity:.7}92%{opacity:.7}to{opacity:0;left:100%}}@keyframes inkEdgeRev{0%{opacity:0;left:100%}8%{opacity:.7}92%{opacity:.7}to{opacity:0;left:0%}}.reg{font-family:var(--font-mono);color:color-mix(in oklab, var(--parchment) 38%, transparent);font-size:16px;position:absolute}.reg-tl{top:10px;left:12px}.reg-tr{top:10px;right:12px}.reg-bl{bottom:10px;left:12px}.reg-br{bottom:10px;right:12px}body.route-studio .nav,body.route-gallery .nav{padding-left:80px}.brayer-wrap{pointer-events:none;z-index:5;position:absolute;inset:0}.brayer-wrap .brayer{filter:drop-shadow(8px 12px 18px #0000008c);opacity:0;width:auto;height:106%;position:absolute;top:-3%;left:0%;transform:translate(-21.5%)}.dir-next .brayer-wrap.brayer-rolling .brayer{animation:brayerRollV var(--brayer-duration,2.4s) cubic-bezier(.55,.05,.45,1) forwards}.dir-prev .brayer-wrap.brayer-rolling .brayer{animation:brayerRollVRev var(--brayer-duration,2.4s) cubic-bezier(.55,.05,.45,1) forwards}@keyframes brayerRollV{0%{opacity:0;left:0%}8%{opacity:1}92%{opacity:1}to{opacity:0;left:100%}}@keyframes brayerRollVRev{0%{opacity:0;left:100%;transform:translate(-78.5%)scaleX(-1)}8%{opacity:1}92%{opacity:1}to{opacity:0;left:0%;transform:translate(-78.5%)scaleX(-1)}}.studio-meta{border-top:1px solid color-mix(in oklab, var(--parchment) 12%, transparent);grid-area:meta;grid-template-columns:auto 1fr auto;align-items:center;gap:32px;margin-top:8px;padding:14px 0 4px;display:grid}.meta-left{justify-content:flex-start;align-items:baseline;display:flex}.counter{font-family:var(--font-display);letter-spacing:-.04em;align-items:baseline;gap:4px;font-size:52px;line-height:.9;display:flex}.counter-cur{color:var(--accent)}.counter-sep{opacity:.4;margin:0 6px;font-size:34px;transform:translateY(-4px)}.counter-tot{opacity:.45;font-size:34px}.meta-center{text-align:center;flex-direction:column;align-items:center;gap:4px;display:flex}.work-title{font-size:clamp(28px,2.6vw,38px);font-style:italic;font-weight:400;line-height:1;font-family:var(--font-display);animation:.6s cubic-bezier(.2,.7,.2,1) both titleIn}@keyframes titleIn{0%{filter:blur(4px);transform:translateY(6px)}to{filter:blur();transform:translateY(0)}}.work-sub{letter-spacing:.18em;white-space:nowrap;flex-wrap:nowrap;align-items:baseline;gap:10px;font-size:10px;display:flex}.work-sub .dot{color:var(--accent)}.meta-right{justify-content:flex-end;align-items:center;gap:14px;display:flex}.meta-arrow{border:1px solid color-mix(in oklab, var(--parchment) 22%, transparent);color:var(--parchment);font-family:var(--font-mono);cursor:pointer;background:0 0;place-items:center;width:38px;height:38px;font-size:14px;transition:border-color .25s,color .25s,transform .25s;display:grid}.meta-arrow:hover:not(:disabled){border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.meta-arrow:disabled{opacity:.3;cursor:not-allowed}.meta-hint{letter-spacing:.22em;white-space:nowrap;font-size:9.5px}@media (max-width:880px){body.route-studio{height:auto;overflow:auto}.page.studio{height:auto;overflow:visible}.studio-grid{grid-template-columns:1fr;grid-template-areas:"left""stage""meta";gap:28px;padding:90px 28px 32px 96px}.studio-left{max-width:none}.plate-stage{min-height:480px}.plate-mat{width:min(420px,86vw);height:auto}}@media (max-width:720px){body.route-studio{height:auto;overflow:auto}.page.studio{height:auto;overflow:visible}.studio-grid{grid-template-columns:1fr;grid-template-areas:"stage""left""meta";gap:24px;padding:76px 18px 28px}.studio-left{max-width:none}.studio-name{font-size:clamp(34px,8.5vw,52px)}.studio-bio .lead{max-width:none;font-size:16px}.studio-bio .sub{max-width:none;font-size:13px}.plate-stage{min-height:0}.plate-mat{width:86vw;max-width:100%;height:auto}.studio-meta{grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:start;gap:10px 18px}.meta-left{grid-row:1/2}.meta-center{text-align:left;grid-area:1/2/2/3;align-items:flex-start}.meta-right{grid-area:2/1/3/-1;justify-content:space-between}.counter{font-size:38px}.counter-sep,.counter-tot{font-size:26px}.work-title{font-size:22px}.work-sub{letter-spacing:.14em;white-space:normal;flex-wrap:wrap;font-size:9px}}body.route-gallery{height:100dvh;overflow:hidden}.page.gallery{flex-direction:column;gap:0;height:100dvh;padding:80px 0 0 90px;display:flex;overflow:hidden}.gallery-head{flex-wrap:wrap;flex:none;justify-content:space-between;align-items:flex-end;gap:24px;padding:4px 56px 18px;display:flex}.gallery-head>*{-webkit-backdrop-filter:blur(8px);background:color-mix(in oklab, var(--ink) 35%, transparent);border-radius:2px;padding:10px 14px}.rack-hint{-webkit-backdrop-filter:blur(6px);background:color-mix(in oklab, var(--ink) 45%, transparent);border-radius:2px;padding:6px 10px}figure.hung figcaption{-webkit-backdrop-filter:blur(6px);background:color-mix(in oklab, var(--ink) 30%, transparent);border-radius:2px;width:100%;margin-top:14px;padding:8px 12px;display:inline-block}@media (max-width:720px){.page.gallery{padding:70px 0 0}.gallery-head{padding:4px 18px 12px}.gallery-title{font-size:clamp(28px,7vw,40px)}.gallery-sub{flex-wrap:wrap;gap:14px}.layout-switch button{padding:6px 10px;font-size:9px}.rack-scroll{padding:50px 18px 32px}.rack-track{gap:36px}.rack-hint{bottom:6px;right:18px}}@media (max-width:900px){.columns-stage{column-count:2;column-gap:24px;padding:16px 24px 60px;display:block}.col{display:contents;margin-top:0!important}.stacked{break-inside:avoid;width:100%;margin-bottom:28px}.stacked .print{aspect-ratio:100/130;height:auto}}@media (max-width:720px){.columns-stage{column-gap:18px;padding:16px 18px 60px}.stacked{margin-bottom:22px}}.page.gallery[data-layout=scatter],.page.gallery[data-layout=columns]{height:auto;overflow:visible}:is(body.route-gallery:has(.page.gallery[data-layout=scatter]),body.route-gallery:has(.page.gallery[data-layout=columns])){height:auto;overflow:auto}.gallery-title{letter-spacing:-.02em;font-size:clamp(36px,4vw,56px);font-style:italic;font-family:var(--font-display)}.gallery-sub{align-items:center;gap:24px;display:flex}.gallery-body{flex-direction:column;flex:1;min-height:0;display:flex}.layout-switch{border:1px solid color-mix(in oklab, var(--parchment) 20%, transparent);display:inline-flex}.layout-switch button{color:var(--parchment);font:inherit;letter-spacing:.18em;text-transform:uppercase;cursor:pointer;opacity:.55;border:0;border-right:1px solid color-mix(in oklab, var(--parchment) 12%, transparent);background:0 0;padding:8px 14px;font-size:10px}.layout-switch button:last-child{border-right:0}.layout-switch button:hover{opacity:.9}.layout-switch button.on{background:color-mix(in oklab, var(--accent) 80%, transparent);color:var(--ink);opacity:1}.rack-stage{background:radial-gradient(ellipse 90% 60% at 50% 110%, color-mix(in oklab, var(--accent-2) 8%, transparent), transparent 70%);flex-direction:column;flex:1;justify-content:center;min-height:0;display:flex;position:relative}.rack-floor{display:none}.rack-scroll{scrollbar-width:thin;scrollbar-color:color-mix(in oklab, var(--parchment) 30%, transparent) transparent;scroll-behavior:auto;flex:1;min-height:0;padding:70px 64px 50px;overflow:auto hidden}.rack-scroll::-webkit-scrollbar{height:6px}.rack-scroll::-webkit-scrollbar-thumb{background:color-mix(in oklab, var(--parchment) 25%, transparent)}.rack-track{align-items:flex-start;gap:52px;min-width:max-content;height:100%;display:flex;position:relative}.rack-track:before{content:"";background:color-mix(in oklab, var(--parchment) 35%, transparent);pointer-events:none;height:1px;position:absolute;top:8px;left:-200px;right:-200px;box-shadow:0 1px #00000080}.hung{--base-rot:var(--rot);--sway-deg:calc(var(--sway,0) * var(--sway-mul,.04) * 80deg);--sway-y:calc(var(--sway,0) * var(--sway-mul,.04) * 6px);width:var(--w);margin-top:var(--drop,18px);transform:rotate(calc(var(--base-rot) + var(--sway-deg))) translateY(var(--sway-y));transform-origin:50% -20px;scroll-snap-align:center;will-change:transform;flex:none;position:relative}.hung:hover{z-index:5;transition:transform .5s cubic-bezier(.2,.7,.2,1);transform:rotate(0)translateY(-6px)}.thread{top:calc(-1 * var(--drop,18px) - 30px);width:1px;height:calc(var(--drop,18px) + 22px);background:color-mix(in oklab, var(--parchment) 35%, transparent);position:absolute}.thread-l{transform-origin:top;left:14%;transform:rotate(-2deg)}.thread-r{transform-origin:top;right:14%;transform:rotate(2deg)}.pin{z-index:3;background:linear-gradient(#c8a472,#8b6a3d);border-radius:3px 3px 1px 1px;width:14px;height:18px;position:absolute;top:-8px;box-shadow:inset 0 -2px #00000040,inset 0 1px #ffffff26,0 2px 6px #00000080}.pin:after{content:"";background:#0006;width:2px;height:7px;position:absolute;top:5px;left:50%;transform:translate(-50%)}.pin-l{left:12%}.pin-r{right:12%}.print-wrap{width:100%;aspect-ratio:var(--w) / var(--h);background:var(--paper-plate);position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #0000002e,0 24px 36px -10px #0009,0 6px 14px -4px #0006}.print-wrap:after{content:"";pointer-events:none;background:radial-gradient(80% 60% at 50% 0,#ffffff0f,#0000 50%),radial-gradient(100% 100% at 50% 100%,#00000014,#0000 50%);position:absolute;inset:0}.print,.print svg{width:100%;height:100%;display:block}figure.hung figcaption{text-align:center;margin-top:14px}.cap-title{font-family:var(--font-display);font-size:16px;font-style:italic}.cap-meta{margin-top:4px;font-size:9px}.rack-hint{letter-spacing:.22em;font-size:9.5px;position:absolute;bottom:12px;right:56px}.scatter-stage{padding:24px 0 100px;overflow:auto}.scatter-canvas{width:1640px;height:1420px;margin:0 64px;position:relative}.scattered{width:var(--w);transform:rotate(var(--rot));margin:0;transition:transform .5s cubic-bezier(.2,.7,.2,1),z-index 0s .5s;position:absolute}.scattered:hover{z-index:10;transition:transform .5s cubic-bezier(.2,.7,.2,1),z-index;transform:rotate(0)scale(1.04)}.scattered .print{width:var(--w);height:var(--h);background:var(--paper-plate);box-shadow:inset 0 0 0 1px #0000002e,0 30px 50px -16px #000000a6,0 8px 18px -4px #0006}.scattered figcaption{font-family:var(--font-display);align-items:baseline;gap:8px;margin-top:12px;font-size:15px;font-style:italic;display:flex}.columns-stage{grid-template-columns:repeat(3,1fr);align-items:start;gap:56px;padding:16px 64px 80px;display:grid}.col{flex-direction:column;gap:56px;display:flex}.stacked{width:100%;margin:0}.stacked .print{width:100%;height:var(--h);background:var(--paper-plate);box-shadow:inset 0 0 0 1px #0000002e,0 30px 50px -16px #0009,0 6px 16px -4px #00000059}.stacked figcaption{flex-direction:column;gap:4px;margin-top:14px;display:flex}body.route-about{height:100dvh;overflow:hidden}.page.about{flex-direction:column;height:100dvh;padding:80px 56px 18px 90px;display:flex;overflow:hidden}.about-shell{flex:1;grid-template-rows:1fr auto;gap:24px;min-height:0;display:grid}.about-grid{grid-template-columns:minmax(0,1.6fr) minmax(220px,.7fr);align-items:start;gap:48px;min-height:0;display:grid;overflow:hidden}.about-left{flex-direction:column;gap:18px;min-height:0;display:flex}.about-h{flex-direction:column;margin:0;font-size:clamp(40px,4.6vw,76px);line-height:.96;display:flex}.about-h-line{display:block}.about-h-line-2{color:color-mix(in oklab, var(--parchment) 75%, transparent)}.about-h-line-2 em{color:var(--accent);font-style:italic}.bio{max-width:56ch;color:color-mix(in oklab, var(--parchment) 80%, transparent);flex-direction:column;gap:12px;font-size:14px;line-height:1.55;display:flex}.bio p{margin:0}.bio .lead{font-family:var(--font-display);color:var(--parchment);font-size:18px;font-style:italic;line-height:1.42}.contact-row{border-top:1px solid color-mix(in oklab, var(--parchment) 14%, transparent);grid-template-columns:1fr 1fr;gap:0 28px;max-width:540px;margin-top:auto;padding-top:4px;display:grid}.contact-card{border-bottom:1px solid color-mix(in oklab, var(--parchment) 14%, transparent);align-items:center;gap:14px;padding:12px 4px;transition:padding .3s,background .3s;display:flex}.contact-card:hover{background:linear-gradient(90deg, color-mix(in oklab, var(--accent) 6%, transparent), transparent);padding-left:10px}.contact-card:hover .contact-arrow{transform:translate(6px,-6px)}.contact-glyph{width:28px;height:28px;color:var(--accent);place-items:center;display:grid}.contact-glyph svg{width:22px;height:22px}.contact-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.contact-handle{font-family:var(--font-display);white-space:nowrap;text-overflow:ellipsis;font-size:17px;font-style:italic;line-height:1.1;overflow:hidden}.contact-arrow{font-family:var(--font-mono);color:var(--accent);font-size:14px;transition:transform .3s}.about-right{flex-direction:column;align-items:stretch;gap:14px;min-height:0;display:flex}.portrait{background:var(--paper-plate);filter:drop-shadow(0 0 18px color-mix(in oklab, var(--accent) 12%, transparent));flex-direction:column;flex:1;min-height:0;padding:14px 14px 10px;display:flex;box-shadow:inset 0 0 0 1px #0000002e,0 24px 50px -16px #0009}.portrait svg{object-fit:contain;flex:1;width:100%;height:100%;min-height:0;display:block}.portrait-caption{text-align:center;color:#0e0c0a8c;margin-top:8px;font-size:8.5px}.studio-card{border:1px solid color-mix(in oklab, var(--parchment) 14%, transparent);flex-direction:column;gap:8px;padding:12px 14px;display:flex}.studio-card-row{flex-direction:column;gap:2px;display:flex}.studio-card .studio-line{font-family:var(--font-display);font-size:18px;font-style:italic}.studio-card .studio-line.small{font-size:13px;line-height:1.3}.about-tools{border-top:1px solid color-mix(in oklab, var(--parchment) 12%, transparent);flex-direction:column;gap:10px;padding-top:16px;display:flex}.about-tools-head{justify-content:space-between;align-items:baseline;gap:24px;display:flex}.about-tools-title{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:clamp(22px,2.2vw,32px);line-height:1}.about-tools-title em{color:var(--accent);font-style:italic}.about-tools-hint{letter-spacing:.22em;font-size:9.5px}.about-tools-rack{border-top:1px solid color-mix(in oklab, var(--parchment) 12%, transparent);scrollbar-width:thin;scrollbar-color:color-mix(in oklab, var(--parchment) 25%, transparent) transparent;gap:0;display:flex;overflow:auto hidden}.about-tools-rack::-webkit-scrollbar{height:4px}.about-tools-rack::-webkit-scrollbar-thumb{background:color-mix(in oklab, var(--parchment) 20%, transparent)}.rack-tool{border:0;border-right:1px solid color-mix(in oklab, var(--parchment) 10%, transparent);min-width:110px;color:var(--parchment);font:inherit;text-align:left;cursor:pointer;background:0 0;flex-direction:column;flex:1 0 auto;align-items:flex-start;gap:10px;padding:14px 14px 12px;transition:background .3s,transform .3s;display:flex;position:relative}.rack-tool:before{content:"";background:var(--accent);transform-origin:0;height:2px;transition:transform .4s;position:absolute;inset:auto 0 0;transform:scaleX(0)}.rack-tool:hover{background:color-mix(in oklab, var(--parchment) 4%, transparent)}.rack-tool:hover:before{transform:scaleX(1)}.rack-tool:hover .rack-tool-icon{transform:translateY(-2px)rotate(-2deg)}.rack-tool-icon{width:56px;height:36px;color:var(--parchment);transition:transform .4s cubic-bezier(.2,.7,.2,1)}.rack-tool-icon svg{width:100%;height:100%}.rack-tool-cap{flex-direction:column;gap:2px;display:flex}.rack-tool-name{font-family:var(--font-display);font-size:15px;font-style:italic;line-height:1.1}.rack-tool-use{letter-spacing:.18em;white-space:nowrap;font-size:8.5px}.bio,.contact-row,.studio-card,.about-tools-head,.portrait-caption{-webkit-backdrop-filter:blur(8px);background:color-mix(in oklab, var(--ink) 35%, transparent);border-radius:2px;padding:12px 16px}.contact-row{padding:4px 12px}.about-tools-head{padding:10px 14px}.about-h{background:color-mix(in oklab, var(--ink) 35%, transparent);-webkit-backdrop-filter:blur(6px);width:fit-content;max-width:100%;padding:4px 10px}.portrait-caption{background:color-mix(in oklab, var(--paper-plate) 70%, transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}@media (max-width:820px){body.route-about{height:auto;overflow:auto}.page.about{height:auto;padding:80px 28px 32px 96px;overflow:visible}.about-shell{grid-template-rows:auto auto}.about-grid{grid-template-columns:1fr}.about-right{flex-direction:row;gap:14px}.portrait{max-width:200px}.studio-card{flex:1}.contact-row{grid-template-columns:1fr}}@media (max-width:720px){.page.about{padding:80px 18px 32px}.about-h{font-size:clamp(32px,8.5vw,52px)}.bio{font-size:13px}.bio .lead{font-size:16px}.about-right{flex-direction:column;gap:12px}.portrait{align-self:center;max-width:200px}.rack-tool{min-width:96px;padding:12px 12px 10px}.rack-tool-icon{width:48px;height:30px}.rack-tool-name{font-size:14px}.about-tools-head{flex-direction:column;align-items:flex-start;gap:8px}.about-tools-hint{font-size:9px}}.marks-canvas{z-index:1;pointer-events:none;width:100vw;height:100vh;position:fixed;inset:0}body.tool-active .marks-canvas{pointer-events:auto;cursor:none;touch-action:none}body.tool-active main .page{pointer-events:none}body.tool-active .nav,body.tool-active .tool-deck,body.tool-active .picked-up,body.tool-active .tweaks-panel{pointer-events:auto}.tool-deck{z-index:200;background:color-mix(in oklab, var(--ink) 88%, transparent);-webkit-backdrop-filter:blur(14px);border:1px solid color-mix(in oklab, var(--parchment) 12%, transparent);width:60px;font-family:var(--font-body);border-left:0;border-radius:0 2px 2px 0;flex-direction:column;gap:8px;max-height:min(92vh,720px);padding:14px 0 10px;transition:width .4s cubic-bezier(.2,.7,.2,1);display:flex;position:fixed;top:50%;left:0;overflow:hidden;transform:translateY(-50%)}.tool-deck.open{width:248px;box-shadow:16px 0 40px -10px #0009,8px 0 16px -4px #00000059}.tool-deck.has-active:not(.open){border-color:color-mix(in oklab, var(--accent) 60%, transparent)}.tool-deck-head{border-bottom:1px solid color-mix(in oklab, var(--parchment) 10%, transparent);flex-direction:column;gap:4px;padding:4px 12px 12px;display:flex}.tool-deck-title{letter-spacing:.24em;color:var(--parchment);text-transform:uppercase;opacity:.8;font-size:10px}.tool-deck-sub{letter-spacing:.18em;color:color-mix(in oklab, var(--parchment) 45%, transparent);text-transform:uppercase;white-space:nowrap;opacity:0;height:12px;font-size:9px;transition:opacity .3s .1s;overflow:hidden}.tool-deck.open .tool-deck-sub{opacity:1}.tool-deck-list{scrollbar-width:thin;scrollbar-color:color-mix(in oklab, var(--parchment) 25%, transparent) transparent;flex-direction:column;flex:1;gap:0;padding:4px 0;display:flex;overflow:hidden auto}.tool-deck-list::-webkit-scrollbar{width:4px}.tool-deck-list::-webkit-scrollbar-thumb{background:color-mix(in oklab, var(--parchment) 20%, transparent)}.tool-pick{color:var(--parchment);cursor:pointer;text-align:left;font:inherit;white-space:nowrap;background:0 0;border:0;align-items:center;gap:14px;width:100%;padding:8px 12px;transition:background .25s,color .25s;display:flex;position:relative}.tool-pick:before{content:"";background:var(--accent);opacity:0;width:2px;transition:opacity .25s;position:absolute;top:18%;bottom:18%;left:0}.tool-pick:hover{background:color-mix(in oklab, var(--parchment) 4%, transparent)}.tool-pick.active{background:color-mix(in oklab, var(--accent) 10%, transparent);color:var(--accent)}.tool-pick.active:before{opacity:1}.tool-pick-icon{width:36px;height:28px;color:inherit;flex:0 0 36px;place-items:center;display:grid}.tool-pick-icon svg{width:100%;height:100%}.tool-pick-label{opacity:0;flex-direction:column;flex:1;gap:1px;min-width:0;transition:opacity .3s .1s;display:flex}.tool-deck.open .tool-pick-label{opacity:1}.tool-pick-name{font-family:var(--font-display);font-size:15px;font-style:italic;line-height:1.1}.tool-pick-use{letter-spacing:.18em;font-size:8.5px}.tool-deck-foot{border-top:1px solid color-mix(in oklab, var(--parchment) 10%, transparent);flex-direction:column;gap:6px;padding:10px 12px 4px;display:flex}.ink-swatch{cursor:pointer;align-items:center;gap:10px;padding:4px 6px;display:flex;position:relative}.ink-swatch input[type=color]{opacity:0;cursor:pointer;position:absolute;inset:0}.ink-swatch-chip{border-radius:50%;flex:0 0 22px;width:22px;height:22px;box-shadow:inset 0 0 0 1px #00000040,inset 0 0 0 2px #ffffff26}.ink-swatch .mono{letter-spacing:.18em;color:color-mix(in oklab, var(--parchment) 50%, transparent);opacity:0;white-space:nowrap;font-size:9px;transition:opacity .3s .1s}.tool-deck.open .ink-swatch .mono{opacity:1}.tool-deck-btn{border:1px solid color-mix(in oklab, var(--parchment) 18%, transparent);color:var(--parchment);cursor:pointer;font:inherit;text-align:left;white-space:nowrap;background:0 0;align-items:center;gap:8px;padding:7px 10px;transition:border-color .25s,color .25s,background .25s;display:flex;overflow:hidden}.tool-deck-btn .mono{letter-spacing:.18em;font-size:9.5px}.tool-deck-btn:hover{border-color:var(--accent);color:var(--accent)}.tool-deck-btn.drop{background:color-mix(in oklab, var(--accent) 90%, transparent);color:var(--ink);border-color:var(--accent)}.tool-deck-btn.drop:hover{background:var(--accent);color:var(--ink)}.tool-deck:not(.open) .tool-deck-btn{display:none}.tool-cursor{pointer-events:none;z-index:9999;will-change:transform;filter:drop-shadow(0 6px 10px #0006);width:60px;height:60px;transition:transform 40ms linear;position:fixed;top:0;left:0}.tool-cursor-svg,.tool-cursor-svg svg{width:100%;height:100%;display:block}.picked-up{z-index:9000;background:color-mix(in oklab, var(--ink) 90%, transparent);border:1px solid color-mix(in oklab, var(--accent) 50%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-family:var(--font-display);color:var(--parchment);pointer-events:none;align-items:center;gap:6px;padding:10px 18px;font-size:16px;font-style:italic;animation:.4s cubic-bezier(.2,.7,.2,1) pickedUpIn;display:flex;position:fixed;bottom:22px;left:50%;transform:translate(-50%)}.picked-up .mono{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--accent);font-size:9.5px;font-style:normal}.picked-up .mono.dim{color:color-mix(in oklab, var(--parchment) 50%, transparent)}@keyframes pickedUpIn{0%{opacity:0;transform:translate(-50%,12px)}to{opacity:1;transform:translate(-50%)}}@media (max-width:720px){.tool-deck{width:48px;max-height:min(80vh,560px)}.tool-deck.open{width:min(220px,78vw)}.tool-deck-head{padding:4px 10px 10px}.tool-pick{gap:10px;padding:8px 10px}.tool-pick-icon{flex:0 0 28px;width:28px;height:24px}.tool-pick-name{font-size:14px}.tool-pick-use{font-size:8px}.tool-deck-foot{padding:8px 10px 4px}.picked-up{padding:8px 14px;font-size:14px;bottom:14px}}
