:root{--paper: oklch(.93 .02 85);--paper-2: oklch(.88 .03 80);--surface-1: var(--paper);--surface-2: oklch(.96 .02 85);--surface-3: oklch(1 0 0);--surface-strong: oklch(.18 .03 40);--surface-strong-fg: var(--paper);--ink: oklch(.18 .03 40);--ink-soft: oklch(.34 .04 40);--ink-faint: oklch(.48 .03 40);--border: oklch(0 0 0 / .2);--border-strong: oklch(0 0 0 / .35);--red: oklch(.58 .22 25);--green: oklch(.44 .14 150);--blue: oklch(.45 .16 250);--yellow: oklch(.86 .17 90);--magenta: oklch(.62 .22 340);--purple: oklch(.46 .22 295);--cyan: oklch(.8 .14 200);--ocean: oklch(.5 .15 225);--shadow: oklch(.2 .04 40 / .22);--shadow-accent: oklch(.5 .1 150 / .25);--card-bg: var(--paper);--card-border: var(--ink);--card-shadow: var(--ink);--serif: "Iowan Old Style", "Georgia", ui-serif, serif;--display: "Bodoni 72", "Didot", "Playfair Display", ui-serif, serif;--mono: ui-monospace, "Courier New", "JetBrains Mono", monospace;--hand: "Marker Felt", "Bradley Hand", "Comic Sans MS", cursive}html.dark{--paper: oklch(.16 .022 50);--paper-2: oklch(.13 .02 50);--surface-1: oklch(.23 .025 50);--surface-2: oklch(.29 .03 50);--surface-3: oklch(.35 .032 50);--surface-strong: oklch(.1 .018 50);--surface-strong-fg: oklch(.96 .02 85);--ink: oklch(.95 .022 85);--ink-soft: oklch(.78 .028 75);--ink-faint: oklch(.58 .025 65);--border: oklch(1 .02 80 / .14);--border-strong: oklch(1 .03 80 / .25);--red: oklch(.74 .17 25);--green: oklch(.82 .17 150);--blue: oklch(.78 .14 240);--yellow: oklch(.88 .16 90);--magenta: oklch(.78 .17 340);--purple: oklch(.76 .17 295);--cyan: oklch(.86 .12 200);--ocean: oklch(.78 .14 220);--shadow: oklch(.05 .025 50 / .65);--shadow-accent: oklch(.5 .12 150 / .3);--card-bg: var(--surface-1);--card-border: var(--ink-faint);--card-shadow: var(--shadow);--band: var(--surface-strong);--band-fg: var(--surface-strong-fg)}html.dark body{background-image:radial-gradient(oklch(.55 .04 60 / .18) 1px,transparent 1px),radial-gradient(oklch(.55 .035 55 / .1) 1px,transparent 1px),linear-gradient(180deg,var(--paper),var(--paper-2))}html.dark .grain{opacity:.32;mix-blend-mode:screen}html.dark .crease{background:#ffffff14;box-shadow:0 -1px 2px #00000080}html.dark ::selection{background:var(--green);color:var(--band)}html.dark .page+.page{border-top-color:var(--border)}html.dark .strip{background:var(--surface-strong);color:var(--surface-strong-fg);border-bottom-color:#ffffff14}html.dark .strip a{color:var(--surface-strong-fg)}html.dark .strip a:hover{background:transparent;color:var(--green)}html.dark .strip .toggle{color:var(--surface-strong-fg)}html.dark .strip .toggle:hover{background:transparent;color:var(--green)}html.dark .enter{background:var(--surface-strong);color:var(--surface-strong-fg);box-shadow:6px 6px 0 var(--green)}html.dark .enter:hover{background:var(--green);color:var(--surface-strong);box-shadow:8px 8px 0 var(--surface-strong-fg)}html.dark .enter:active{box-shadow:2px 2px 0 var(--green)}html.dark .letter input,html.dark .letter textarea{color:var(--ink)}html.dark .letter input{background-image:repeating-linear-gradient(0deg,transparent 0 28px,oklch(1 0 0 / .1) 28px 29px)}html.dark .letter textarea{background-image:repeating-linear-gradient(0deg,transparent 0 28px,oklch(1 0 0 / .14) 28px 29px)}html.dark .letter .send{background:var(--surface-strong);color:var(--surface-strong-fg);box-shadow:6px 6px 0 var(--green)}html.dark .letter .send:hover{background:var(--green);color:var(--surface-strong);box-shadow:6px 6px 0 var(--surface-strong-fg)}html.dark .skill{background:var(--surface-2)}html.dark .clip article{background:var(--surface-1)}html.dark .clip article .head{background:var(--paper)}html.dark .clip article .t{color:var(--ink)}html.dark .clip article .d{color:var(--ink-soft)}html.dark .clip article .lang{color:var(--ink-soft)}html.dark .clip article .go{color:var(--green);border-top-color:var(--border)}html.dark .id-card,html.dark .letter{background:var(--surface-1)}html.dark .letter label{color:var(--ink-soft)}html.dark .lb-panel{background:var(--surface-2)}html.dark .lb-body p,html.dark .lb-tags,html.dark .cols p,html.dark .cols li{color:var(--ink-soft)}html.dark .cols li strong{color:var(--ink)}html.dark .lb-close{color:var(--surface-strong)}html.dark .rule{background:var(--ink-soft)}html.dark .rule:after{background:var(--ink-soft)}html.dark .letter .send,html.dark .enter{color:var(--surface-strong-fg)}html.dark #repos .gh-cta{background:var(--surface-strong)!important;border-color:var(--surface-strong)!important;color:var(--surface-strong-fg)!important}html.dark #repos .gh-cta p{color:var(--surface-strong-fg)!important}html.dark #repos .gh-cta a{background:var(--surface-strong-fg)!important;color:var(--surface-strong)!important;box-shadow:4px 4px 0 var(--green)!important}html.dark #letter a,html.dark #repos .gh-cta,html.dark .id-card,html.dark .letter,html.dark .lb-panel{box-shadow:6px 8px 0 var(--shadow)!important}html.dark #letter a[style*="var(--red)"]{box-shadow:6px 8px 0 var(--red)!important}html.dark #letter a[style*="var(--green)"]{box-shadow:6px 8px 0 var(--green)!important}html.dark #letter a[style*="var(--magenta)"]{box-shadow:6px 8px 0 var(--magenta)!important}html.dark #letter a[style*="var(--yellow)"]{box-shadow:6px 8px 0 var(--yellow)!important}html.dark #letter a[style*="var(--blue)"]{box-shadow:6px 8px 0 var(--blue)!important}html.dark #letter a[style*="var(--purple)"]{box-shadow:6px 8px 0 var(--purple)!important}.theme-btn{font-family:var(--mono);font-size:14px;letter-spacing:.1em;line-height:1;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink);font-family:var(--serif);line-height:1.55}body{overflow-x:hidden;background-image:radial-gradient(oklch(.78 .05 70 / .35) 1px,transparent 1px),radial-gradient(oklch(.78 .05 70 / .22) 1px,transparent 1px),linear-gradient(180deg,var(--paper),var(--paper-2));background-size:3px 3px,7px 7px,100% 100%;background-position:0 0,1px 2px,0 0}::selection{background:var(--yellow);color:var(--ink)}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0}a{color:var(--green);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}a:hover{background:var(--yellow)}:focus-visible{outline:3px solid var(--green);outline-offset:2px}html{scroll-padding-top:60px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:fixed;top:0;left:0;z-index:50;background:var(--ink);color:var(--paper);padding:10px 18px;font-family:var(--mono);font-size:12px;letter-spacing:.12em;text-decoration:none;transform:translateY(-110%);transition:transform .15s ease}.skip-link:focus,.skip-link:focus-visible{transform:translateY(0);outline:3px solid var(--green);outline-offset:2px}main:focus,main:focus-visible{outline:none}@media(prefers-contrast:more){html:not([data-contrast=less]){--ink:oklch(.1 .03 40);--ink-soft:oklch(.2 .03 40);--border:oklch(0 0 0 / .55)}html.dark:not([data-contrast=less]){--ink:oklch(.99 .02 85);--ink-soft:oklch(.92 .025 75);--border:oklch(1 .02 80 / .35);--card-border:oklch(1 .03 80 / .55)}html:not([data-contrast=less]) :focus-visible{outline-width:4px}}html[data-contrast=more]{--ink:oklch(.1 .03 40);--ink-soft:oklch(.2 .03 40);--border:oklch(0 0 0 / .55)}html[data-contrast=more].dark{--ink:oklch(.99 .02 85);--ink-soft:oklch(.92 .025 75);--border:oklch(1 .02 80 / .35);--card-border:oklch(1 .03 80 / .55)}html[data-contrast=more] :focus-visible{outline-width:4px}html{font-size:calc(100% * var(--text-scale, 1))}html[data-readable=true]{--serif: "OpenDyslexic", "Atkinson Hyperlegible", "Verdana", system-ui, sans-serif;--display: "Atkinson Hyperlegible", "Verdana", system-ui, sans-serif;--hand: var(--serif)}html[data-readable=true] body{line-height:1.8}html[data-readable=true] p{margin-bottom:1.3em}.grain{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:40;opacity:.4;mix-blend-mode:multiply}.grain svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.crease{display:none}.boot{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:var(--paper);display:grid;place-items:center;min-height:100svh;padding:6vw;padding-top:max(6vw,env(safe-area-inset-top));padding-bottom:max(6vw,env(safe-area-inset-bottom));transition:opacity .5s,transform .6s ease}.boot.gone{opacity:0;transform:translateY(-24px);pointer-events:none}.cover{max-width:640px;width:100%;position:relative;text-align:center}.cover .tape,.cover .barcode,.issue{display:none}.mast{font-family:var(--display);font-weight:700;line-height:.95;margin:0;font-size:clamp(2.4rem,10vw,7rem);letter-spacing:-.03em}.bmchar{display:inline-block}.mast-phrase{display:block;margin:22px auto 0;font-family:var(--mono);font-style:normal;font-weight:500;font-size:clamp(1.5rem,3.6vw,2.4rem);line-height:1.1;color:var(--ink);letter-spacing:-.01em;text-align:center;white-space:nowrap}.mast-phrase em{font-style:normal;color:var(--green);font-weight:700}.sub{font-family:var(--mono);font-size:clamp(.82rem,1.4vw,.95rem);color:var(--ink-soft);max-width:48ch;letter-spacing:.15em;text-transform:uppercase;margin:26px auto 0}.bullets{display:none}.enter{display:inline-flex;align-items:center;gap:12px;margin-top:44px;font-family:var(--display);font-weight:700;font-size:1.3rem;color:var(--paper);background:var(--ink);padding:16px 32px;border:0;cursor:pointer;box-shadow:6px 6px 0 var(--green);text-decoration:none;letter-spacing:-.01em}.enter:hover,.enter:active{transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.enter:hover{transform:translate(-2px,-2px);background:var(--green);box-shadow:8px 8px 0 var(--ink)}.enter:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--green)}.enter:after{content:"→";font-size:1.4rem;transition:transform .2s ease}.enter:hover:after{transform:translate(4px)}.enter-progress{display:flex;flex-direction:column;align-items:center;gap:8px;margin:24px auto 0;width:min(220px,80%);opacity:1}.enter-progress-track{display:block;width:100%;height:4px;background:#00000024;overflow:hidden;border-radius:2px}.enter-progress-fill{display:block;width:100%;height:100%;background:var(--ink);transform-origin:left center;transform:scaleX(0);will-change:transform}.enter-progress-label{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);font-variant-numeric:tabular-nums}html.dark .enter-progress-track{background:#ffffff2e}@keyframes pulse{0%,to{box-shadow:6px 6px 0 var(--green)}50%{box-shadow:8px 8px 0 var(--green)}}.enter.pulse{animation:pulse 2.2s ease-in-out infinite}.enter[disabled]{cursor:not-allowed;opacity:.55;box-shadow:6px 6px 0 var(--ink-faint);animation:none}.enter[disabled]:hover{transform:none;background:var(--ink);box-shadow:6px 6px 0 var(--ink-faint)}.enter[disabled]:after{transform:none}html.dark .enter[disabled]{box-shadow:6px 6px 0 var(--ink-soft)}.strip{position:sticky;top:0;z-index:30;background:var(--ink);color:var(--paper);display:flex;align-items:center;gap:22px;padding:0 22px;height:44px;padding-top:env(safe-area-inset-top);padding-left:max(22px,env(safe-area-inset-left));padding-right:max(22px,env(safe-area-inset-right));font-family:var(--mono);font-size:12px;letter-spacing:0;text-transform:none;border-bottom:1px solid oklch(1 0 0 / .08)}.strip a{color:var(--paper);text-decoration:none;padding:0 8px;min-height:44px;height:100%;display:inline-flex;align-items:center;border:0;opacity:.72;transition:opacity .15s ease,color .15s ease}.strip a:hover{background:transparent;color:var(--green);opacity:1}.strip .grow{flex:1}.strip .toggle{padding:0 8px;min-width:44px;min-height:44px;height:100%;display:inline-flex;align-items:center;justify-content:center;border:0;opacity:.72;transition:opacity .15s ease,color .15s ease}.strip .toggle:hover{background:transparent;color:var(--green);opacity:1}.strip #a11yBtn{font-size:20px;line-height:1}@media(max-width:820px){.strip a,.strip #skipBtn{display:none}}.tabbar{display:none}@media(max-width:820px){.tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:35;background:var(--ink);color:var(--paper);border-top:1px solid oklch(1 0 0 / .1);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right);box-shadow:0 -6px 20px #00000038;font-family:var(--mono)}.tabbar a,.tabbar a:link,.tabbar a:visited{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:56px;padding:8px 4px;color:var(--paper);text-decoration:none;opacity:.62;font-size:10px;letter-spacing:.14em;text-transform:uppercase;transition:opacity .2s ease,color .2s ease;background:transparent;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.tabbar a:active,.tabbar a:hover{background:transparent}.tabbar a svg{transition:transform .25s cubic-bezier(.2,.8,.2,1)}.tabbar a:focus-visible{opacity:1;color:var(--paper);outline:2px solid var(--green);outline-offset:-4px}@media(hover:hover){.tabbar a:hover{opacity:1;color:var(--paper)}}.tabbar a:focus-visible{outline:1px solid oklch(1 0 0 / .35);outline-offset:-6px;border-radius:8px}.tabbar a[aria-current=true]{opacity:1;color:var(--paper);background:transparent}.tabbar a[aria-current=true] svg{transform:translateY(-1px) scale(1.06)}.tabbar svg{width:20px;height:20px;display:block;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}body{padding-bottom:calc(56px + env(safe-area-inset-bottom))}}html.dark .tabbar{background:var(--surface-strong);color:var(--surface-strong-fg)}html.dark .tabbar a{color:var(--surface-strong-fg)}:target{scroll-margin-top:56px}.page{scroll-margin-top:56px}.page{max-width:1180px;margin:0 auto;padding:clamp(40px,8vw,72px) clamp(18px,6vw,48px);position:relative;contain:layout paint}.page+.page{border-top:1px dashed oklch(0 0 0 / .2)}.folio{position:absolute;top:16px;right:24px;font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--ink-soft);text-transform:uppercase}.folio b{color:var(--green)}.headline{font-family:var(--display);font-weight:700;line-height:.95;margin:0;letter-spacing:-.015em;font-size:clamp(2rem,7vw,5.2rem)}.dek{font-family:var(--serif);font-style:italic;color:var(--ink-soft);font-size:clamp(1.05rem,1.6vw,1.25rem);max-width:58ch;margin:12px 0 0}.rule{display:block;height:6px;background:var(--ink);margin:28px 0;border:0;position:relative}.rule:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:1px;background:var(--ink)}.marker{display:inline-block;font-family:var(--hand);color:var(--green);transform:rotate(-2deg)}.stamp{display:inline-block;font-family:var(--mono);font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--green);border:2px solid var(--green);padding:4px 10px;transform:rotate(-3deg)}#intro{display:grid;grid-template-columns:minmax(220px,320px) 1fr;gap:52px;align-items:start}@media(max-width:820px){#intro{grid-template-columns:1fr;gap:28px}}@media(max-width:480px){.id-card{transform:none;margin-top:0}}.id-card{position:relative;background:var(--paper);border:1.5px solid var(--ink);padding:16px;transform:rotate(-1.5deg);box-shadow:6px 8px 0 var(--ink),6px 8px 0 1px var(--ink);margin-top:10px}.id-card .tape{display:none}.mug{aspect-ratio:4/5;background:linear-gradient(135deg,#005799,#007693,#009298,#006680 75%,#00507a,#0f3778);background:linear-gradient(135deg,color(xyz 0.097 0.09 0.387),color(xyz 0.113 0.153 0.406),color(xyz 0.132 0.238 0.42),color(xyz 0.084 0.113 0.287) 75%,color(xyz 0.065 0.071 0.231),#0f3778);position:relative;overflow:hidden;border:1px solid var(--ink);display:grid;place-items:center;isolation:isolate;contain:layout paint}.mug:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;background:repeating-linear-gradient(45deg,oklch(0 0 0 / .08) 0 2px,transparent 2px 6px);mix-blend-mode:multiply}html.dark .mug:after{mix-blend-mode:screen;background:repeating-linear-gradient(45deg,oklch(1 0 0 / .05) 0 2px,transparent 2px 6px)}.mug .slide{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;z-index:1}.mug.is-transitioning .slide{will-change:opacity,mask-image,filter}.mug .slide.is-active{opacity:1;z-index:2}.mug .slide[data-fx=bloom]{--bloom-x:50%;--bloom-y:50%;--bloom-r:0%;-webkit-mask-image:radial-gradient(circle at var(--bloom-x) var(--bloom-y),oklch(0 0 0) 0%,oklch(0 0 0) var(--bloom-r),oklch(0 0 0 / 0) calc(var(--bloom-r) + 9%));mask-image:radial-gradient(circle at var(--bloom-x) var(--bloom-y),oklch(0 0 0) 0%,oklch(0 0 0) var(--bloom-r),oklch(0 0 0 / 0) calc(var(--bloom-r) + 9%))}.mug .slide[data-fx=brush]{--wipe-p:0%;--wipe-a:95deg;-webkit-mask-image:linear-gradient(var(--wipe-a),oklch(0 0 0) calc(var(--wipe-p) - 4%),oklch(0 0 0) var(--wipe-p),oklch(0 0 0 / .55) calc(var(--wipe-p) + 2%),oklch(0 0 0 / 0) calc(var(--wipe-p) + 7%));mask-image:linear-gradient(var(--wipe-a),oklch(0 0 0) calc(var(--wipe-p) - 4%),oklch(0 0 0) var(--wipe-p),oklch(0 0 0 / .55) calc(var(--wipe-p) + 2%),oklch(0 0 0 / 0) calc(var(--wipe-p) + 7%))}.mug .slide[data-fx=tear]{--tear-p:0%;--tear-a:180deg;-webkit-mask-image:linear-gradient(var(--tear-a),oklch(0 0 0) calc(var(--tear-p) - 2%),oklch(0 0 0) var(--tear-p),oklch(0 0 0 / .4) calc(var(--tear-p) + 1%),oklch(0 0 0 / 0) calc(var(--tear-p) + 3%));mask-image:linear-gradient(var(--tear-a),oklch(0 0 0) calc(var(--tear-p) - 2%),oklch(0 0 0) var(--tear-p),oklch(0 0 0 / .4) calc(var(--tear-p) + 1%),oklch(0 0 0 / 0) calc(var(--tear-p) + 3%))}.mug .slide[data-fx=crumple]{-webkit-mask-image:none;mask-image:none}.mug .slide-caption{position:absolute;left:10px;bottom:10px;z-index:4;font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#f8f8f8eb;background:#0000009e;padding:4px 8px;border:1px solid oklch(1 0 0 / .2);transition:opacity .5s ease,transform .5s ease;opacity:.9}.mug .slide-dots{position:absolute;right:10px;bottom:10px;z-index:4;display:flex;gap:6px}.mug .slide-dots button{width:8px;height:8px;border-radius:50%;border:1px solid oklch(1 0 0 / .7);background:#ffffff40;padding:0;cursor:pointer;transition:all .3s ease}.mug .slide-dots button[aria-current=true]{background:#fffffff2;transform:scale(1.35)}@media(prefers-reduced-motion:reduce){.mug .slide{transition:opacity .3s linear;-webkit-mask-image:none;mask-image:none;filter:none}.mug .slide[data-fx]{-webkit-mask-image:none;mask-image:none;filter:none}}.id-meta{font-family:var(--mono);font-size:12px;letter-spacing:0;text-transform:lowercase;margin-top:12px;border-top:1px solid var(--ink);padding-top:12px;display:grid;grid-template-columns:auto 1fr;gap:6px 14px}.id-meta b{color:var(--green)}.bio .byline{font-family:var(--mono);font-size:12px;letter-spacing:0;text-transform:none;color:var(--ink-soft)}.bio .byline:before{content:"// ";color:var(--green)}.bio h1{font-family:var(--display);font-weight:700;line-height:1;font-size:clamp(2.4rem,6vw,4.4rem);margin:10px 0 0;letter-spacing:-.02em}.bio h1 em{font-style:italic;color:var(--green)}.bio .drop{margin-top:28px}.drop p{font-family:var(--serif);font-size:clamp(1.05rem,1.3vw,1.15rem);line-height:1.65;margin:0;max-width:60ch;color:var(--ink)}.drop p:first-letter{font-size:inherit;color:inherit;float:none;padding:0;font-weight:inherit;font-family:inherit}.bio>p{font-family:var(--serif);font-size:1rem;line-height:1.7;margin:18px 0 0;max-width:60ch;color:var(--ink-soft)}.bio .credo-card{position:relative;align-self:flex-start;margin:28px 0 8px;max-width:min(460px,100%);padding:clamp(20px,2.6vw,32px) clamp(22px,2.8vw,34px);background:var(--paper-2);border:1.5px solid var(--ink);box-shadow:6px 8px 0 var(--ink);transform:rotate(-1.5deg);transform-origin:left center}.bio .credo-card blockquote{margin:0;font-family:var(--mono);font-style:normal;font-weight:600;font-size:clamp(.78rem,2.2vw,1.1rem);line-height:1.35;letter-spacing:-.015em;color:var(--ink);white-space:nowrap;text-align:center}.bio .credo-card .tape{position:absolute;top:-10px;left:clamp(18px,8%,42px);width:clamp(72px,18%,108px);height:18px;background:#fcca21b3;border:1px solid var(--ink-faint);transform:rotate(-3deg);transform-origin:left center}html.dark .bio .credo-card{background:var(--surface-1)}html.dark .bio .credo-card .tape{background:#f7cc4b6b}@media(max-width:820px){.bio .credo-card{margin:24px auto 4px;max-width:100%;transform:rotate(-1deg)}}.skills{margin-top:32px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:18px}.skill{position:relative;padding:14px 16px;background:#f8f1e3;border:1.5px solid var(--ink);transform:rotate(var(--r,-1deg))}.skill:nth-child(2n){transform:rotate(var(--r2,1.2deg))}.skill .k{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft)}.skill .v{font-family:var(--display);font-size:2.4rem;line-height:1;margin-top:4px}.skill .v sup{font-family:var(--mono);font-size:.85rem;color:var(--green);vertical-align:super;margin-left:4px}.skill .note{font-family:var(--hand);color:var(--green);font-size:16px;position:absolute;right:-10px;top:-16px;transform:rotate(8deg)}.toolline{margin-top:28px;font-family:var(--mono);font-size:13px;line-height:1.65;color:var(--ink);max-width:62ch;letter-spacing:0;text-transform:none}.toolline .prompt{color:var(--green);font-weight:700;margin-right:12px;white-space:nowrap}.toolline .args{color:var(--ink)}.toolline .sep{color:var(--green);margin:0 8px;opacity:.9}.toolline .caret{display:inline-block;width:8px;height:1.05em;background:var(--green);vertical-align:text-bottom;margin-left:6px;animation:caret-blink 1.05s steps(2,start) infinite}@keyframes caret-blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.toolline .caret{animation:none;opacity:1}}.zone{margin-top:20px}.zone-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:8px}.zone-head .side{font-family:var(--mono);font-size:12px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft)}.pull{font-family:var(--display);font-style:italic;font-size:clamp(1.4rem,2.6vw,2rem);line-height:1.25;border-left:6px solid var(--green);padding:4px 0 4px 16px;margin:22px 0 32px;max-width:28ch;color:var(--ink)}.clip{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:22px;align-items:stretch}.clip article{position:relative;cursor:pointer;display:flex;flex-direction:column;background:var(--paper);border:1.5px solid var(--ink);transition:transform .32s cubic-bezier(.2,.7,.2,1),box-shadow .32s cubic-bezier(.2,.7,.2,1),border-color .2s ease;will-change:transform;box-shadow:5px 6px 0 var(--ink);container-type:inline-size}@container (max-width: 280px){.clip article .head{flex-wrap:wrap;gap:6px}.clip article .t{font-size:1.15rem}}.clip article:hover,.clip article:focus-within{transform:translate(-3px,-4px);box-shadow:10px 12px 0 var(--green);border-color:var(--green)}.clip article:focus-within{outline:2px solid var(--green);outline-offset:4px}.clip article:active{transform:translate(-1px,-1px);box-shadow:4px 5px 0 var(--green);transition-duration:.08s}.clip article .head{position:relative;overflow:hidden;display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--ink);background:var(--ink);color:var(--paper);font-family:var(--mono);font-size:11px}.clip article .head:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--green);transform:scaleY(0);transform-origin:50% 100%;transition:transform .28s cubic-bezier(.2,.7,.2,1)}.clip article:hover .head:before,.clip article:focus-within .head:before{transform:scaleY(1)}.clip article .dots{display:inline-flex;gap:5px}.clip article .dots i{width:9px;height:9px;border-radius:50%;background:var(--paper);opacity:.55}.clip article .path{letter-spacing:.04em;opacity:.85;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.clip article .body{display:flex;flex-direction:column;gap:10px;padding:16px 18px 18px;flex:1}.clip article .meta{display:flex;align-items:center;gap:10px}.clip article .glyph{font-family:var(--mono);font-weight:700;font-size:13px;color:var(--paper);background:var(--green);padding:4px 8px;border:1.5px solid var(--ink);box-shadow:2px 2px 0 var(--ink)}.clip article .lang{font-family:var(--mono);font-size:10.5px;letter-spacing:.22em;color:var(--ink-soft);text-transform:uppercase}.clip article .t{margin:0;font-family:var(--display);font-weight:700;font-size:1.35rem;line-height:1.1;letter-spacing:-.01em;color:var(--ink);transition:color .25s ease}.clip article:hover .t,.clip article:focus-within .t{color:var(--green)}.card-button{background:none;border:0;padding:0;margin:0;font:inherit;color:inherit;letter-spacing:inherit;text-align:left;cursor:pointer}.card-button:focus{outline:none}.card-button:focus-visible{outline:none}.card-button:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit}.clip article .d{margin:0;font-family:var(--serif);font-size:.95rem;line-height:1.45;color:var(--ink-soft)}.clip article .go{position:relative;margin-top:auto;font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--green);padding-top:8px;border-top:1px dashed var(--ink-soft);transition:color .25s ease,letter-spacing .25s ease}.clip article:hover .go,.clip article:focus-within .go{color:var(--ink);letter-spacing:.24em}.letter{position:relative;background:var(--paper);border:1.5px solid var(--ink);padding:clamp(16px,4vw,32px);max-width:680px;margin:30px auto;transform:rotate(-.6deg);box-shadow:10px 12px 0 var(--ink)}@media(max-width:480px){.letter{transform:none}}.letter:before{display:none}.letter h2{font-family:var(--display);font-size:clamp(2rem,4.6vw,3rem);margin:0 0 8px;line-height:1}.letter p.from{font-family:var(--hand);color:var(--green);font-size:22px;transform:rotate(-2deg);margin:0 0 20px}.letter .lines{display:grid;gap:14px}.letter label{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);display:block}.letter input,.letter textarea{width:100%;font:inherit;font-family:var(--serif);font-size:1.05rem;background:transparent;border:0;border-bottom:2px solid var(--ink);padding:6px 2px;background-image:repeating-linear-gradient(0deg,transparent 0 28px,oklch(0 0 0 / .08) 28px 29px);background-position:0 100%;background-size:100% 0}.letter textarea{min-height:140px;resize:vertical;background-image:repeating-linear-gradient(0deg,transparent 0 28px,oklch(0 0 0 / .12) 28px 29px);background-size:100% 100%;border:0;border-bottom:0;padding:4px 2px}.letter .send{margin-top:18px;display:inline-block;font-family:var(--display);font-weight:700;font-size:1.6rem;background:var(--ink);color:var(--paper);padding:10px 22px;border:0;transform:rotate(-1deg);box-shadow:6px 6px 0 var(--green)}.letter .send:hover{background:var(--green);box-shadow:6px 6px 0 var(--ink)}.letter .stamp-corner{position:absolute;top:14px;right:14px;width:84px;height:104px;border:2px dashed var(--ink);z-index:2;display:grid;place-items:center;transform:rotate(6deg);padding:8px;text-align:center;font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--green);line-height:1.3}.letter .stamp-corner b{font-family:var(--display);font-size:1.4rem;display:block;color:var(--ink);margin-bottom:4px}.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:28px}.cols h3{font-family:var(--mono);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--green);margin:0 0 10px}.cols p,.cols li{font-family:var(--serif);margin:0 0 8px;color:var(--ink-soft);line-height:1.5}.cols li strong{color:var(--ink)}.cols ul{padding-left:18px;margin:0}body[data-modal-open]{overflow:hidden}html:has(body[data-modal-open]){overflow:hidden}body[data-modal-open] .strip,body[data-modal-open] main,body[data-modal-open] .tabbar{pointer-events:none}.lb{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#0009;display:none;place-items:center;padding:5vw}.lb.open{display:grid}.lb-panel{position:relative;max-width:900px;width:100%;background:var(--paper);border:1.5px solid var(--ink);box-shadow:12px 14px 0 var(--ink);transform:rotate(-.6deg)}.lb-panel .tape{display:none}.lb-panel .grid{display:grid;grid-template-columns:1.2fr 1fr;gap:0}@media(max-width:760px){.lb-panel .grid{grid-template-columns:1fr}}.lb-art{aspect-ratio:4/3;border-right:1.5px solid var(--ink);position:relative;overflow:hidden;background:#005798;background:oklch(.45 .16 250);display:flex;align-items:center;justify-content:center;font-family:var(--mono);color:var(--paper);font-size:48px}.lb-art:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,oklch(0 0 0 / .06) 0 1px,transparent 1px 3px);mix-blend-mode:multiply}.lb-body{padding:22px 24px}.lb-body .kicker{font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--green)}.lb-body h3{font-family:var(--display);font-size:1.8rem;margin:4px 0 6px;line-height:1}.lb-body p{margin:6px 0;color:var(--ink-soft)}.lb-body a{color:var(--green)}.lb-close{position:absolute;top:-16px;right:-16px;z-index:2;background:var(--green);color:var(--paper);width:40px;height:40px;border-radius:50%;font-family:var(--display);font-size:22px;box-shadow:3px 3px 0 var(--ink);cursor:pointer;border:0;display:grid;place-items:center;line-height:1;padding:0}.lb-tags{font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--ink-soft);margin-top:10px;line-height:1.6}.ink-wipe{position:fixed;top:0;right:0;bottom:0;left:0;z-index:95;pointer-events:none;opacity:0;background:var(--ink);display:none;clip-path:circle(0% at 50% 50%)}.clip article{position:relative}.ink-taped{position:relative}.ink-taped:after{content:"";position:absolute;top:-10px;left:50%;width:72px;height:20px;margin-left:-36px;background:repeating-linear-gradient(135deg,oklch(0 0 0 / .06) 0 2px,transparent 2px 5px),color-mix(in srgb,var(--tape-color, var(--ink)) 55%,var(--paper));-webkit-mask-image:linear-gradient(to right,transparent 0%,black 12%,black 88%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,black 12%,black 88%,transparent 100%);transform:scaleX(.4);transform-origin:50% 50%;opacity:0;box-shadow:0 1px 2px #0000002e;pointer-events:none;transition:transform .32s cubic-bezier(.34,1.3,.64,1),opacity .24s ease;z-index:4}.ink-taped:hover:after,.ink-taped:focus-visible:after{transform:scaleX(1);opacity:.9}html.dark .ink-taped:after{background:repeating-linear-gradient(135deg,oklch(1 0 0 / .05) 0 2px,transparent 2px 5px),color-mix(in srgb,var(--tape-color, var(--ink)) 65%,var(--surface-2))}@media(prefers-reduced-motion:reduce){.ink-taped:after{transition:opacity .18s ease;transform:rotate(-18deg) scale(1)}}.boot{--ink-r:0%;--ink-x:50%;--ink-y:50%}.boot.ink-exit{mask-image:radial-gradient(circle at var(--ink-x) var(--ink-y),transparent 0%,transparent calc(var(--ink-r) - 3%),black calc(var(--ink-r) + 1%));-webkit-mask-image:radial-gradient(circle at var(--ink-x) var(--ink-y),transparent 0%,transparent calc(var(--ink-r) - 3%),black calc(var(--ink-r) + 1%));transition:none}.lb-art{--spot-x:50%;--spot-y:50%;--spot-size:0px}.lb-art:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:1;background:radial-gradient(var(--spot-size) circle at var(--spot-x) var(--spot-y),oklch(1 0 0 / .16),oklch(1 0 0 / .06) 40%,transparent 70%);mix-blend-mode:screen}.ink-timeline{position:absolute;left:12px;top:0;bottom:0;width:24px;pointer-events:none;z-index:0}.ink-timeline svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible}.ink-timeline path{fill:none;stroke:var(--green);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.ink-timeline circle{fill:var(--green)}@media(max-width:820px){.ink-timeline{left:4px;width:18px}}@media(max-width:640px){.ink-timeline{display:none}}.shake{animation:shake .18s linear}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px,2px)}50%{transform:translate(3px,-2px)}75%{transform:translate(-2px,3px)}}@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;transition:none!important;transform:none!important}.id-card,.letter,.skill,.pull,.clip article{transform:none!important}.enter.pulse{animation:none!important}}@media(max-width:640px){.page{padding:44px 16px}.mast{font-size:clamp(2.2rem,11vw,3.4rem)}.mast-phrase{font-size:clamp(1.15rem,4.8vw,1.65rem)}.headline{font-size:clamp(1.9rem,8.5vw,2.6rem)}.dek{font-size:1rem}.bio h1{font-size:clamp(2rem,8vw,2.8rem)}.id-card,.letter,.lb-panel,.skill,.pull,#background .page>div>div,#background>div>div,#background div[style*=rotate],[style*=rotate]:not(#letter>div>a){transform:none!important}.id-card{box-shadow:4px 5px 0 var(--ink)!important;margin-top:0}.clip article{box-shadow:3px 4px 0 var(--ink)}.letter{box-shadow:6px 8px 0 var(--ink)}.lb-panel{box-shadow:6px 8px 0 var(--ink)!important}.clip{grid-template-columns:1fr!important}#letter>div[style*=grid-template-columns]{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}#letter>div[style*=grid-template-columns]>a{padding:14px 12px!important;gap:6px!important}#letter>div[style*=grid-template-columns]>a h3{font-size:1.05rem}#letter>div[style*=grid-template-columns]>a p{font-size:.82rem;word-break:break-word}#background>div[style*=grid]{grid-template-columns:1fr!important;gap:20px!important}#background>div>div[style*=grid]{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;padding:0!important;box-shadow:none!important;margin-top:6px!important}#background>div>div,#letter>div>a{padding:18px!important;box-shadow:4px 5px 0 var(--ink)!important}#background [data-bg-small]{padding:12px 14px!important;box-shadow:3px 4px 0 var(--ink)!important}#letter>div>a[style*="var(--red)"]{box-shadow:4px 5px 0 var(--red)!important}#letter>div>a[style*="var(--green)"]{box-shadow:4px 5px 0 var(--green)!important}#letter>div>a[style*="var(--magenta)"]{box-shadow:4px 5px 0 var(--magenta)!important}#letter>div>a[style*="var(--yellow)"]{box-shadow:4px 5px 0 var(--yellow)!important}#letter>div>a[style*="var(--blue)"]{box-shadow:4px 5px 0 var(--blue)!important}#letter>div>a[style*="var(--purple)"]{box-shadow:4px 5px 0 var(--purple)!important}#intro{grid-template-columns:1fr;gap:18px;display:flex;flex-direction:column}#intro .bio{order:1}#intro .id-card{order:2;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin:6px 0 0!important;width:100%!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;text-align:center!important}#intro .id-card .tape{display:none}#intro .mug{width:min(220px,60vw);height:auto;aspect-ratio:4/5;border-radius:14px;border:2px solid var(--ink);overflow:hidden;margin:0 auto 14px!important;align-self:center!important;box-shadow:4px 4px 0 var(--green);background:linear-gradient(135deg,#005799,#007693,#009298);background:linear-gradient(135deg,color(xyz 0.097 0.09 0.387),color(xyz 0.113 0.153 0.406),color(xyz 0.132 0.238 0.42))}#intro .mug:after{display:none}#intro .mug .slide{border-radius:14px;filter:blur(6px) saturate(.8)}#intro .mug .slide.is-active{filter:blur(0) saturate(1)}#intro .mug .slide[data-fx],#intro .mug .slide.is-active[data-fx]{clip-path:none!important;transform:none!important}#intro .mug .slide-caption,#intro .mug .slide-dots{display:none}#intro .id-meta{display:grid;grid-template-columns:minmax(68px,auto) 1fr;gap:0;margin:18px auto 0!important;width:100%!important;max-width:420px;align-self:center!important;text-align:left;padding-top:0;font-size:12px;letter-spacing:0;border:1.5px solid var(--ink);background:var(--paper)}#intro .id-meta b{display:flex;align-items:center;background:var(--green);color:var(--paper);padding:8px 10px;font-family:var(--mono);font-weight:700;letter-spacing:.14em;text-transform:uppercase;font-size:10px;line-height:1.3;white-space:nowrap;border-right:1.5px solid var(--ink);border-bottom:1.5px solid var(--ink)}#intro .id-meta span{display:flex;align-items:center;color:var(--ink);font-family:var(--mono);letter-spacing:0;text-transform:none;padding:8px 10px;border-bottom:1.5px solid var(--ink);overflow-wrap:anywhere;word-break:break-word;min-width:0}#intro .id-meta span a{overflow-wrap:anywhere;word-break:break-all}#intro .id-meta>b:nth-last-of-type(1),#intro .id-meta>span:nth-last-of-type(1){border-bottom:0}#intro .id-meta b,#intro .id-meta span{margin:0}html.dark #intro .id-meta{background:#1a2029;border-color:var(--ink-soft)}html.dark #intro .id-meta b,html.dark #intro .id-meta span{border-color:var(--ink-soft)}#intro .bio .byline{display:block;background:transparent;color:var(--ink-soft);padding:0;font-family:var(--serif);font-style:italic;font-size:.95rem;letter-spacing:0;text-transform:none;line-height:1.4;margin-bottom:12px}#intro .bio .byline:before{content:"// ";color:var(--green);font-family:var(--mono);font-style:normal}#intro .bio h1{margin-top:0;line-height:1.02}.toolline{font-size:12.5px;line-height:1.7}.toolline .prompt,.toolline .args{display:inline}.drop p{font-size:1rem;line-height:1.65}.skills{grid-template-columns:1fr}.gh-cta{flex-direction:column;align-items:stretch!important;gap:14px!important;padding:18px!important}.gh-cta a{text-align:center;display:block}.cols{grid-template-columns:1fr;gap:20px}#background>div>div>div:first-child{flex-direction:column;align-items:flex-start!important}.letter .stamp-corner{display:none}.pull{font-size:1.2rem;padding-left:12px;border-left-width:4px}.strip{gap:12px;padding:0 12px}.enter{padding:14px 24px;font-size:1.15rem}.sub{letter-spacing:.1em;font-size:.78rem}.folio{top:10px;right:14px;font-size:10px}}@media(max-width:380px){.mast{font-size:2rem}.headline{font-size:1.7rem}.bio h1{font-size:1.9rem}.page{padding:36px 14px}.tabbar a{font-size:9px;padding:6px 2px;gap:2px}.tabbar svg{width:18px;height:18px}#background>div>div[style*=grid]{grid-template-columns:1fr!important}}.rig{position:relative;display:flex;justify-content:center;align-items:center;aspect-ratio:4/5;max-width:420px;margin:0 auto;filter:drop-shadow(5px 6px 0 var(--ink))}.rig svg{width:100%;height:100%;display:block;overflow:visible}.rig{--anim-state:paused}.rig[data-playing=true][data-audio=on]{--anim-state:running}.rig .disc{transform-origin:108px 120px;animation:vinyl-spin var(--spin-dur,3s) linear infinite;animation-play-state:var(--anim-state)}.rig .tonearm{transform-origin:198px 40px;transform:rotate(var(--arm-rot, 26deg));transition:transform .9s cubic-bezier(.2,.7,.2,1)}.rig[data-playing=true] .tonearm{--arm-rot:2deg}.rig .sk-base{fill:var(--paper-2);stroke:var(--ink);stroke-width:1.5}.rig .sk-hatch path{stroke:var(--ink-soft);stroke-width:1;fill:none;stroke-linecap:round;opacity:.55}.rig .sk-wax{fill:var(--paper-2);stroke:var(--ink);stroke-width:1.6}.rig .sk-rim{fill:none;stroke:var(--ink-soft);stroke-width:.5;stroke-dasharray:2 3;opacity:.55}.rig .sk-groove{fill:none;stroke:var(--ink-soft);stroke-width:.7;stroke-linecap:round;opacity:.58}.rig .sk-groove.bright{stroke:var(--ink);opacity:.4}.rig .sk-label{fill:var(--paper);stroke:var(--ink);stroke-width:1.3}.rig .sk-label-inner{fill:none;stroke:var(--ink-soft);stroke-width:.5;stroke-dasharray:1.5 2;opacity:.65}.rig .sk-label-dot{fill:var(--green);transition:fill .24s ease}.rig[data-side=B] .sk-label-dot{fill:var(--ocean)}.rig .sk-label-text{font-family:var(--hand);font-size:10px;letter-spacing:.06em;fill:var(--ink);text-transform:uppercase;font-weight:700}.rig .sk-witness{fill:var(--ink);opacity:.75}.rig .sk-spindle{fill:var(--ink);stroke:none}.rig .sk-horn-mount{fill:var(--paper-2);stroke:var(--ink);stroke-width:1.2}.rig .sk-horn-neck{fill:var(--paper);stroke:var(--ink);stroke-width:1.2;stroke-linejoin:round}.rig .sk-horn-body{fill:var(--paper);stroke:var(--ink);stroke-width:1.5;stroke-linejoin:round}.rig .sk-horn-rim{fill:var(--ink);stroke:var(--ink);stroke-width:.8;opacity:.85}.rig .sk-horn-hatch path{stroke:var(--ink-soft);stroke-width:.8;fill:none;stroke-linecap:round;opacity:.6}.rig .sk-wave{fill:none;stroke:var(--green);stroke-width:1.3;stroke-linecap:round;stroke-dasharray:30;stroke-dashoffset:30;opacity:0;animation:sk-wave 2.2s cubic-bezier(.3,.6,.3,1) infinite;animation-play-state:var(--anim-state)}.rig .sk-wave.w2{animation-delay:.55s}.rig .sk-wave.w3{animation-delay:1.1s}.rig .sk-arm-base{fill:var(--paper-2);stroke:var(--ink);stroke-width:1}.rig .sk-arm-counterweight{fill:var(--ink);stroke:var(--ink);stroke-width:.8}.rig .sk-arm-joint{fill:var(--paper);stroke:var(--ink);stroke-width:1.2}.rig .sk-arm-shaft{stroke:var(--ink);stroke-width:2.4;stroke-linecap:round;fill:none}.rig .sk-arm-head{fill:var(--ink);stroke:var(--ink);stroke-width:1}.rig .sk-arm-needle{fill:var(--green);stroke:var(--ink);stroke-width:.8}html.dark .rig{filter:drop-shadow(4px 5px 0 oklch(0 0 0 / .6))}html.dark .rig .sk-base{fill:var(--surface-1)}html.dark .rig .sk-wax{fill:var(--surface-2)}html.dark .rig .sk-label,html.dark .rig .sk-horn-mount{fill:var(--surface-1)}html.dark .rig .sk-horn-neck,html.dark .rig .sk-horn-body{fill:var(--surface-2)}html.dark .rig .sk-arm-base{fill:var(--surface-1)}html.dark .rig .sk-arm-joint{fill:var(--surface-2)}@keyframes vinyl-spin{to{transform:rotate(360deg)}}@keyframes sk-wave{0%{stroke-dashoffset:30;opacity:0;transform:translate(0)}20%{opacity:.75}80%{opacity:.2}to{stroke-dashoffset:0;opacity:0;transform:translate(8px)}}.tracklist{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-top:36px}.track{position:relative;display:flex;flex-direction:column;gap:10px;background:var(--paper);border:1.5px solid var(--ink);padding:18px 20px;box-shadow:5px 6px 0 var(--ink);transition:transform .22s ease,box-shadow .22s ease}.track:hover{transform:translate(-2px,-3px);box-shadow:8px 10px 0 var(--green)}.track .n{position:absolute;top:-10px;left:14px;font-family:var(--mono);font-size:10px;letter-spacing:.22em;background:var(--ink);color:var(--paper);padding:3px 8px;text-transform:uppercase}.track .n.side-b{background:var(--ocean)}.track .meta{display:flex;justify-content:space-between;gap:10px;align-items:baseline;font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink-soft);margin-top:4px}.track .meta .track-date{color:var(--ink-faint);font-size:10px}.track h3{margin:0;font-family:var(--display);font-size:1.35rem;line-height:1.1}.track p{margin:0;font-family:var(--serif);color:var(--ink-soft);line-height:1.5;font-size:.96rem}.track .track-link{align-self:flex-start;font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);text-decoration-thickness:1.5px;text-underline-offset:4px}.track .track-link:hover{background:var(--green);color:var(--paper)}.track[data-kind=post] .track-link{color:var(--green)}.track .tags{margin-top:auto;font-family:var(--mono);font-size:10.5px;letter-spacing:.15em;color:var(--ink-faint);text-transform:uppercase}html.dark .track{background:var(--surface-1);box-shadow:6px 8px #0000008c}html.dark .track:hover{box-shadow:8px 10px 0 var(--green)}.track-vinyl{width:min(42%,120px);aspect-ratio:1;margin:10px auto 4px;cursor:pointer;-webkit-tap-highlight-color:transparent;background:none;border:0;padding:0;filter:drop-shadow(0 2px 6px oklch(0 0 0 / .35))}.track-vinyl:focus-visible{outline:2px solid var(--green);outline-offset:6px;border-radius:50%}.track-vinyl:active{transform:scale(.985)}.track-vinyl svg{width:100%;height:100%;display:block;overflow:visible;border-radius:50%}.track-vinyl .disc{transform-origin:100px 100px}.track-vinyl .wax{fill:var(--paper-2);stroke:var(--ink);stroke-width:1.4}.track-vinyl .rim{fill:none;stroke:var(--ink-soft);stroke-width:.45;stroke-dasharray:2 3;opacity:.6}.track-vinyl .groove{fill:none;stroke:var(--ink-soft);stroke-width:.55;opacity:.5}.track-vinyl .groove:nth-of-type(2n){opacity:.35}.track-vinyl .label-ring{fill:none;stroke:var(--ink);stroke-width:1}.track-vinyl .label-inner{fill:none;stroke:var(--ink-soft);stroke-width:.45;stroke-dasharray:1.5 2;opacity:.7}.track-vinyl .spindle{fill:var(--ink)}.track:has(.n.side-b) .track-vinyl .label-ring{stroke:var(--ocean)}html.dark .track-vinyl{filter:drop-shadow(0 2px 6px oklch(0 0 0 / .6))}.music-stage{display:flex;flex-direction:column;align-items:center;margin-top:36px}.rig-controls{display:flex;align-items:center;gap:16px;margin-top:14px;padding:8px 14px;border:1px dashed var(--ink-faint);border-radius:6px;background:color-mix(in oklch,var(--paper) 70%,transparent);max-width:320px;width:100%;box-sizing:border-box}.vinyl-mute{display:inline-flex;align-items:center;gap:6px;background:transparent;border:1px solid var(--ink-soft);border-radius:4px;padding:4px 8px;cursor:pointer;color:var(--ink);font-family:var(--mono);font-size:9px;letter-spacing:.18em;transition:background .2s ease,border-color .2s ease}.vinyl-mute svg{width:16px;height:16px;stroke:var(--ink);stroke-width:1.4;fill:var(--ink);stroke-linecap:round;stroke-linejoin:round}.vinyl-mute:hover{background:var(--paper-2)}.vinyl-mute:focus-visible{outline:2px solid var(--green);outline-offset:2px}.vinyl-mute[data-muted=true]{background:var(--paper-2);border-color:var(--ink)}.vinyl-mute[data-muted=true] svg{fill:var(--ink-soft);stroke:var(--ink-soft)}.vinyl-mute-label{pointer-events:none}.vinyl-volume{display:flex;align-items:center;gap:8px;flex:1;min-width:0;font-family:var(--mono);font-size:9px;letter-spacing:.18em;color:var(--ink-soft)}.vinyl-volume-label{flex:0 0 auto}.vinyl-volume input[type=range]{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:4px;background:var(--ink-faint);border-radius:2px;outline:none;cursor:pointer;min-width:0}.vinyl-volume input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--ink);border:2px solid var(--paper);box-shadow:0 0 0 1px var(--ink);cursor:pointer}.vinyl-volume input[type=range]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--ink);border:2px solid var(--paper);box-shadow:0 0 0 1px var(--ink);cursor:pointer}.vinyl-volume input[type=range]:focus-visible{box-shadow:0 0 0 2px var(--green)}.vinyl-volume-readout{flex:0 0 28px;text-align:right;color:var(--ink);font-weight:700}.vinyl-live{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.placeholder-note{margin-top:14px;font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);border-left:3px solid var(--green);padding:4px 0 4px 10px;max-width:72ch}.rig .sk-divider{stroke:var(--ink-faint);stroke-width:.8;stroke-dasharray:2 3;opacity:.6}.rig .sk-knob{cursor:pointer}.rig .sk-knob-body{fill:var(--paper-2);stroke:var(--ink);stroke-width:1.3}.rig .sk-knob-cap{fill:var(--paper);stroke:var(--ink-soft);stroke-width:.6;stroke-dasharray:1.5 2}.rig .sk-knob-notch{stroke:var(--ink-faint);stroke-width:1.2;stroke-linecap:round;transition:stroke .2s ease,stroke-width .2s ease}.rig .sk-knob-notch[data-active=true]{stroke:var(--ink);stroke-width:1.8}.rig .sk-knob-value{font-family:var(--mono);font-size:8px;font-weight:700;letter-spacing:.02em;fill:var(--ink);text-anchor:middle;pointer-events:none}.rig .sk-knob:focus-visible{outline:none}.rig .sk-knob:focus-visible .sk-knob-body{stroke:var(--green);stroke-width:2}.rig .sk-button{cursor:pointer}.rig .sk-button-rim{fill:var(--paper-2);stroke:var(--ink);stroke-width:1.3}.rig .sk-button-cap{fill:var(--paper);stroke:var(--ink);stroke-width:1;transition:fill .2s ease}.rig .sk-button[data-on=true] .sk-button-cap{fill:var(--green)}.rig .sk-button-glyph{fill:var(--ink);stroke:none;transition:fill .2s ease}.rig .sk-button[data-on=true] .sk-button-glyph{fill:var(--paper)}.rig .sk-button:focus-visible{outline:none}.rig .sk-button:focus-visible .sk-button-rim{stroke:var(--green);stroke-width:2}.rig .sk-button[data-loading=true] .sk-button-cap{fill:var(--paper-2)}.rig .sk-button-spinner{stroke:var(--ink);stroke-width:1.6;stroke-linecap:round;transform-origin:120px 232px;animation:sk-button-spin .9s linear infinite}@keyframes sk-button-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.rig .sk-button-spinner{animation:none;stroke-dasharray:none}}.rig .sk-toggle{cursor:pointer}.rig .sk-toggle-body{fill:var(--paper-2);stroke:var(--ink);stroke-width:1.3}.rig .sk-toggle-cap{fill:var(--green);stroke:var(--ink);stroke-width:1;transition:x .28s cubic-bezier(.2,.7,.2,1),fill .2s ease}.rig .sk-toggle[data-side=B] .sk-toggle-cap{fill:var(--ocean)}.rig .sk-toggle-letter{font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.04em;fill:var(--ink-soft);text-anchor:middle;pointer-events:none;transition:fill .2s ease}.rig .sk-toggle[data-side=A] .sk-toggle-letter:first-of-type,.rig .sk-toggle[data-side=B] .sk-toggle-letter:nth-of-type(2){fill:var(--paper);font-weight:800}.rig .sk-toggle:focus-visible{outline:none}.rig .sk-toggle:focus-visible .sk-toggle-body{stroke:var(--green);stroke-width:2}.rig .sk-ctrl-label{font-family:var(--mono);font-size:6.5px;letter-spacing:.2em;fill:var(--ink-soft);text-anchor:middle;pointer-events:none;text-transform:uppercase}.rig .sk-caption-kicker{font-family:var(--mono);font-size:6.5px;letter-spacing:.26em;fill:var(--ink-soft);text-transform:uppercase}.rig .sk-caption-side{fill:var(--green);font-weight:700}.rig[data-side=B] .sk-caption-side{fill:var(--ocean)}@media(prefers-reduced-motion:reduce){.rig .sk-knob-notch,.rig .sk-toggle-cap{transition:none}}@media(max-width:820px){.rig{max-width:320px;filter:none}html.dark .rig{filter:none}}@media(max-width:640px){.track{box-shadow:4px 5px 0 var(--ink)!important}.track:hover{box-shadow:6px 7px 0 var(--green)!important}}.repos-toggle{display:inline-flex;align-items:center;gap:8px;margin-top:18px;padding:10px 16px;background:var(--paper);color:var(--ink);border:1.5px solid var(--ink);box-shadow:4px 5px 0 var(--green);font-family:var(--mono);font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}.repos-toggle:hover,.repos-toggle:focus-visible{transform:translate(-1px,-2px);box-shadow:6px 8px 0 var(--green);outline:none}.repos-body{overflow:hidden;max-height:8000px;opacity:1;transition:max-height .35s ease,opacity .25s ease}.repos-body[hidden]{display:block;max-height:0;opacity:0;pointer-events:none}@media(prefers-reduced-motion:reduce){.repos-toggle,.repos-body{transition:none}}.a11y-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:24px;padding-top:max(24px,env(safe-area-inset-top));padding-bottom:max(24px,env(safe-area-inset-bottom))}.a11y-panel{position:relative;width:min(440px,100%);background:var(--paper);color:var(--ink);border:1.5px solid var(--ink);box-shadow:8px 10px 0 var(--green);padding:22px 24px;font-family:var(--serif);max-height:90vh;overflow:auto}html.dark .a11y-panel{background:var(--surface-1);box-shadow:8px 10px #0000008c}.a11y-panel h2{margin:0 0 4px;font-family:var(--display);font-weight:700;font-size:1.4rem;letter-spacing:-.01em}.a11y-panel p.dek{margin:0 0 18px;font-size:.85rem;color:var(--ink-soft)}.a11y-panel .a11y-close{position:absolute;top:8px;right:8px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:0;cursor:pointer;color:var(--ink);font-size:22px;line-height:1;font-family:var(--mono)}.a11y-panel fieldset{border:0;padding:0;margin:0 0 16px}.a11y-panel legend{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:8px;padding:0}.a11y-panel .opt-row{display:flex;flex-wrap:wrap;gap:6px}.a11y-panel .opt{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;min-height:40px;background:transparent;border:1.5px solid var(--ink-soft);color:var(--ink);font-family:var(--mono);font-size:12px;letter-spacing:.06em;cursor:pointer;transition:background .15s ease,border-color .15s ease}.a11y-panel .opt:hover{border-color:var(--ink)}.a11y-panel .opt[aria-pressed=true],.a11y-panel .opt[aria-checked=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.a11y-panel .opt[aria-pressed=true]:hover,.a11y-panel .opt[aria-checked=true]:hover{background:var(--ink)}html.dark .a11y-panel .opt{border-color:var(--ink-soft)}html.dark .a11y-panel .opt[aria-pressed=true],html.dark .a11y-panel .opt[aria-checked=true]{background:var(--paper);color:var(--ink);border-color:var(--paper)}.a11y-panel .a11y-toggle{display:flex;align-items:center;gap:10px;cursor:pointer;padding:8px 0;font-family:var(--mono);font-size:12px;letter-spacing:.06em;color:var(--ink)}.a11y-panel .a11y-toggle input[type=checkbox]{width:18px;height:18px;accent-color:var(--green);cursor:pointer}.a11y-panel .a11y-note{margin:14px 0 0;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);border-left:3px solid var(--green);padding:4px 0 4px 10px}.mug{position:relative}.mug-pause{position:absolute;right:8px;bottom:8px;z-index:5;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;background:var(--ink);color:var(--paper);border:0;cursor:pointer;font-family:var(--mono);font-size:14px;line-height:1;opacity:0;transition:opacity .2s ease;box-shadow:2px 2px 0 var(--green)}.mug:hover .mug-pause,.mug-pause:focus-visible,.mug-pause[aria-pressed=true]{opacity:1}@media(prefers-reduced-motion:reduce){.mug-pause{transition:none}}[dir=rtl]{font-family:"Heebo",var(--serif)}[dir=rtl] .headline,[dir=rtl] h1,[dir=rtl] h2,[dir=rtl] h3{font-family:"Frank Ruhl Libre","David Libre",var(--display);letter-spacing:0}[dir=rtl] .dek{font-family:"Heebo",var(--serif);font-style:normal}[dir=rtl] .folio{left:24px;right:auto}[dir=rtl] .enter:after{content:"←"}[dir=rtl] .enter:hover:after{transform:translate(-4px)}[dir=rtl] .strip{overflow-x:auto;scrollbar-width:none}[dir=rtl] .strip::-webkit-scrollbar{display:none}@media(max-width:820px){[dir=rtl] .strip a{display:inline-flex;white-space:nowrap;font-size:11px;padding:0 6px}[dir=rtl] .strip{gap:14px}}[dir=rtl] .service-card,[dir=rtl] .process-strip>li,[dir=rtl] .contact-card{transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s cubic-bezier(.2,.7,.2,1)}[dir=rtl] .service-card:hover,[dir=rtl] .process-strip>li:hover,[dir=rtl] .contact-card:hover{transform:translate(2px,-2px)}[dir=rtl] .contact-card:focus-visible{outline:3px solid var(--green);outline-offset:3px}[dir=rtl] .hero-questions li{border-inline-start:3px solid var(--green);padding-inline-start:14px}[dir=rtl] .hero-pitch .headline em{font-family:inherit}[dir=rtl] .hero-pitch__layout{display:grid;grid-template-columns:minmax(0,1fr) clamp(220px,22vw,320px);gap:clamp(20px,4vw,48px);align-items:start;margin-top:8px}[dir=rtl] .hero-pitch__copy{min-width:0}[dir=rtl] .hero-pitch__slides{position:relative;width:100%;max-inline-size:clamp(220px,22vw,320px);aspect-ratio:1/1;align-self:start;margin-top:8px}@media(max-width:820px){[dir=rtl] .hero-pitch__layout{grid-template-columns:1fr}[dir=rtl] .hero-pitch__slides{max-inline-size:min(60vw,240px);margin:0 auto 8px}}[dir=rtl] .mp-slides{position:relative;width:100%;aspect-ratio:1/1;border:1.5px solid var(--card-border);box-shadow:6px 8px 0 var(--green);overflow:hidden;background:var(--card-bg)}[dir=rtl] .mp-slide{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .45s ease;filter:grayscale(20%) contrast(1.02)}[dir=rtl] .mp-slide.is-active{opacity:1}[dir=rtl] .mp-slides__pause{position:absolute;inset-block-end:8px;inset-inline-end:8px;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;background:transparent;color:transparent;cursor:pointer}[dir=rtl] .mp-slides__pause:focus-visible{width:auto;height:auto;padding:6px 10px;margin:0;overflow:visible;clip:auto;clip-path:none;background:var(--ink);color:var(--paper);font-family:var(--mono);font-size:12px;box-shadow:3px 3px 0 var(--green);outline:3px solid var(--green);outline-offset:2px}[dir=rtl] .enter--ghost{background:transparent;color:var(--ink);box-shadow:6px 6px 0 var(--blue)}[dir=rtl] .enter--ghost:hover{background:var(--blue);color:var(--paper);box-shadow:8px 8px 0 var(--ink)}[dir=rtl] .enter--ghost:active{box-shadow:2px 2px 0 var(--blue)}[dir=rtl] .bm-pill-wrap{position:fixed;inset-block-end:clamp(16px,4vw,28px);inset-inline-end:clamp(16px,4vw,28px);z-index:40;pointer-events:none}[dir=rtl] .bm-pill{pointer-events:auto;display:inline-flex;align-items:center;gap:10px;padding:12px 18px;background:var(--ink);color:var(--paper);font-family:var(--display);font-weight:700;font-size:.95rem;text-decoration:none;border:1.5px solid var(--ink);box-shadow:5px 6px 0 var(--green);min-height:48px;transition:transform .2s,box-shadow .2s}[dir=rtl] .bm-pill:hover{transform:translate(-2px,-2px);box-shadow:7px 8px 0 var(--green)}[dir=rtl] .bm-pill:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--green)}[dir=rtl] .bm-pill__icon{display:inline-flex;color:var(--green)}@media(max-width:560px){[dir=rtl] .bm-pill__label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}[dir=rtl] .bm-pill{width:56px;height:56px;min-height:56px;padding:0;border-radius:50%;justify-content:center}}
