scramble-text{display:inline-block;position:relative;max-width:100%;vertical-align:baseline}scramble-text>i{font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit}scramble-text[data-scrambling]>.scramble-original{opacity:0}scramble-text>.scramble-visual{position:absolute;inset:0;pointer-events:none;-webkit-user-select:none;user-select:none}.scramble-visual>scramble-glyph{position:absolute;white-space:pre;text-align:center}:root{font-family:Arial,Helvetica,sans-serif;color:#111;background:#fff;font-synthesis:none;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}.ascii-background{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}.header,main,footer{position:relative;z-index:1}button,a{font:inherit}a{color:inherit;text-decoration:none}button{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #111111;outline-offset:4px}::selection{background:#111;color:#fff}.header{height:88px;margin:0 5%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #c9c9c9;font-size:11px;letter-spacing:.08em}.wordmark{font-weight:700}.wordmark span{font-weight:400;color:#555}.header nav{display:flex;align-items:center;gap:38px;letter-spacing:0;font-size:13px}.header nav a{transition:color .2s}.header nav a:hover{color:#555}.console-trigger{border:1px solid #888888;background:transparent;padding:10px 14px;cursor:pointer}.console-trigger span{font-family:monospace;color:#444;padding-right:7px}.hero{--portrait-size: min(60vw,720px, calc(100svh - 176px) );--portrait-shift: calc(var(--portrait-size) * 7 / 110);--speech-x: calc(var(--portrait-size) * 3 / 110);--speech-y: calc(var(--portrait-size) * 3 / 64);position:relative;overflow-x:clip;min-height:calc(100svh - 88px);display:grid;grid-template-columns:44% 56%;padding:0 5% 75px}.hero-copy{align-self:center;position:relative;z-index:1;padding:56px 0 40px 3vw}h1,h2{font-family:Georgia,Times New Roman,serif;font-weight:400;letter-spacing:-.035em;line-height:.95;margin:0}h1{font-size:clamp(62px,7.3vw,112px)}.hero h1{font-size:clamp(38px,4.9vw,72px)}h1 em,h2 em{font-weight:400;color:#555}.intro{max-width:420px;font-size:clamp(14px,1.3vw,18px);line-height:1.6;color:#4b4b4b;margin:32px 0}.hero-keywords{margin:0;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#333}.portrait-stage{position:absolute;z-index:0;right:calc(3% + var(--portrait-shift));top:46%;transform:translateY(-50%);width:var(--portrait-size);aspect-ratio:1;pointer-events:none;opacity:.78}.portrait-stage .ascii-portrait{width:100%}.portrait-speech{--speech-size: clamp(5.8px,.47vw,6px);--speech-menu-x: calc(var(--speech-size) * .5);--speech-menu-y: calc(var(--speech-size) * 3);position:absolute;z-index:1;top:calc(3% + 16px + var(--speech-y));right:calc(32% + 20px + var(--portrait-shift) + var(--speech-x));width:84ch;color:#111;font:var(--speech-size)/1 ui-monospace,SFMono-Regular,Menlo,monospace;pointer-events:none;animation:speech-float 6s ease-in-out infinite}.speech-body{position:relative;display:grid;place-items:center}.speech-body:before{content:"";position:absolute;inset:0;pointer-events:none;transition:opacity .2s ease;background:radial-gradient(ellipse,#fff 55%,#fff0 80%)}.portrait-speech.is-open .speech-body:before{opacity:0}.speech-cipher{position:relative;z-index:2;width:100%;height:30em;margin:0;color:#111;font:inherit;pointer-events:none;text-shadow:0 3px 5px #0003}.speech-glyph{position:absolute;top:0;left:0;line-height:1.25;transform-origin:0 0;transform:translate(var(--from-x),var(--from-y));transition:transform .65s cubic-bezier(.16,1,.3,1)}.portrait-speech.is-open .speech-glyph{transform:translate(calc(var(--to-x) + var(--speech-menu-x)),calc(var(--to-y) + var(--speech-menu-y)))}.speech-trigger{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border:0;background:transparent;color:#111;pointer-events:auto;cursor:pointer;text-align:center;font:12px/1.4 ui-monospace,SFMono-Regular,Menlo,monospace}.speech-trigger[hidden]{display:none}.speech-trigger:focus-visible{outline:1px dashed #111;outline-offset:-17px;border-radius:50%}.speech-message{white-space:pre-line;font-weight:600;transform:translate(.5em)}.speech-hint{font-size:10px;color:#555;transform:translate(.5em)}.speech-trigger:is(:hover,:focus-visible) .speech-hint{color:#111;text-decoration:underline;text-underline-offset:3px}.speech-tail{height:7em}.speech-menu{position:absolute;z-index:1;top:calc(5px + var(--speech-menu-y));left:calc(5px + var(--speech-menu-x));width:calc(100% - 10px);height:calc(var(--speech-size) * 30 - 10px);display:flex;flex-direction:column;background:#fff;pointer-events:auto;scroll-margin:16px;font:11px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace;animation:speech-menu-in .2s .3s ease-out both}.speech-menu[hidden]{display:none}.speech-menu-heading{display:flex;align-items:center;justify-content:space-between;flex:0 0 23px;padding-left:8px;color:#555;font-size:10px;letter-spacing:.06em}.speech-close{align-self:stretch;min-width:32px;border:0;background:transparent;color:#555;cursor:pointer;font:inherit}.speech-question{flex:0 0 32px;display:grid;place-items:center;margin:0;font-weight:600;text-align:center;white-space:pre-line}.speech-menu-options{flex:1;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.speech-menu-options button{display:flex;align-items:center;gap:3px;min-width:0;min-height:0;padding:4px;border:0;border-top:1px solid #ddd;background:transparent;font:inherit;text-align:left;white-space:nowrap;cursor:pointer}.speech-menu-options button span{flex-shrink:0;color:#555;white-space:pre}.speech-menu-options button:is(:hover,:focus-visible),.speech-close:is(:hover,:focus-visible){background:var(--accent);color:var(--on-accent)}.speech-menu-options button:is(:hover,:focus-visible) span{color:inherit}.speech-menu :is(button,a):focus-visible{outline:1px dashed currentColor;outline-offset:-4px}.speech-answer{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:4px 8px;text-align:center;white-space:pre-line}.speech-answer-actions{align-self:stretch;display:flex;justify-content:space-between;align-items:center;gap:8px;white-space:nowrap}.speech-answer-actions button,.speech-answer-actions a{min-height:28px;display:inline-flex;align-items:center;padding:3px 0;border:0;background:transparent;cursor:pointer;font:inherit;text-decoration:underline;text-underline-offset:3px}@keyframes speech-menu-in{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@keyframes speech-float{0%,to{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-6px) rotate(.7deg)}}.hero-bottom{position:absolute;left:5%;right:5%;bottom:27px;display:flex;justify-content:space-between;gap:20px;font-size:9px;letter-spacing:.1em;color:#555}.hero-bottom span:last-child span{font-size:15px;margin-left:9px}.work-section{background:#f2f2f2e0;padding:88px 5% 120px;scroll-margin-top:0}.section-heading{display:flex;justify-content:space-between;border-top:1px solid #a3a3a3;padding-top:16px;font-size:10px;letter-spacing:.1em;color:#555}.work-content{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:95px}h2{font-size:clamp(48px,5.2vw,78px)}.work-content p{max-width:350px;margin:5px 0 55px;color:#444;font-size:15px;line-height:1.7}footer{margin:0 5%;padding:25px 0;border-top:1px solid #c9c9c9;display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.1em;color:#555}.terminal{--terminal-accent: #53f57e;--terminal-prompt: #44d96b;--terminal-error: #ff9b8b;position:fixed;container-type:size;z-index:5;right:24px;bottom:24px;width:min(570px,calc(100vw - 48px));height:min(490px,calc(100dvh - 48px));display:flex;flex-direction:column;background:#111;color:#eee;box-shadow:0 16px 60px #0003;font:12px/1.75 ui-monospace,SFMono-Regular,Menlo,monospace}.terminal-header,.terminal-form{flex:0 0 64px}.terminal-header{display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid #666666;color:#ccc;cursor:move;touch-action:none}.terminal-header button{border:0;background:transparent;color:#ccc;cursor:pointer;font:inherit}.terminal-header .terminal-move{flex:1;text-align:left;color:var(--terminal-accent);cursor:move;touch-action:none}.terminal-header button span{font-size:18px;margin-left:10px}.terminal-output{overflow:auto;flex:1;padding:22px 20px 14px}.line{white-space:pre-wrap;overflow-wrap:anywhere}.line.typing:after{content:"";display:inline-block;width:.6em;height:1em;vertical-align:-.15em;background:currentColor;animation:terminal-cursor 1s step-end infinite}@keyframes terminal-cursor{50%{opacity:0}}.line.command{margin-top:15px;color:#ecefec;font-weight:600}.line.system{color:#b8c4ba}.line.error{color:var(--terminal-error)}.line.success,.terminal-keyword{color:var(--terminal-accent)}.terminal-keyword{font-weight:600}.prompt{color:var(--terminal-prompt);font-weight:400}.line.help{color:#c5d0c7}.line.heading{color:#e5e8e5;font-weight:700}.terminal-resize{position:absolute;right:0;bottom:0;width:28px;height:28px;padding:0;border:0;background:transparent;cursor:nwse-resize;touch-action:none}.terminal-resize:after{content:"";position:absolute;right:7px;bottom:7px;width:10px;height:10px;border-right:2px solid #ccc;border-bottom:2px solid #ccc}.terminal-form{display:flex;align-items:center;gap:10px;padding:0 36px 0 20px;border-top:1px solid #666666;box-shadow:inset 0 -2px #666}.terminal-form label{white-space:nowrap;color:var(--terminal-prompt)}.terminal-form input{width:100%;min-width:0;color:#fff;background:transparent;border:0;font:inherit;caret-color:var(--terminal-accent)}.terminal-form input::placeholder{color:#ccc}.terminal-form input:focus{outline:0}.terminal-form:focus-within label{color:var(--terminal-accent);font-weight:700}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:700px){.header{height:70px;margin:0 20px}.wordmark span{display:none}.header nav{gap:16px;font-size:12px}.console-trigger{padding:8px}.hero{--portrait-size: min(80vw,380px);min-height:calc(100svh - 70px);grid-template-columns:1fr;grid-template-rows:auto 1fr;padding:0 20px calc(70px + min(80vw,380px))}.hero-copy{padding:70px 0 0}.hero h1{font-size:clamp(35px,9.2vw,50px)}.intro{font-size:clamp(14px,4vw,16px)}.portrait-stage{right:var(--portrait-shift);top:auto;bottom:70px;transform:none;opacity:.65}.hero-copy{align-self:start;max-width:330px}.portrait-speech{--speech-size: clamp(5.2px,1.3vw,6.6px);--speech-menu-x: calc(var(--portrait-shift) + var(--speech-x) - 4px);position:relative;top:auto;right:auto;align-self:start;justify-self:start;margin-top:calc(36px + var(--speech-y));margin-left:calc(-8px - var(--portrait-shift) - var(--speech-x));padding-bottom:4px;max-width:100%}.hero-bottom{font-size:8px;left:20px;right:20px}.work-section{padding:60px 20px 80px}.work-content{grid-template-columns:1fr;gap:40px;padding-top:65px}.work-content p{margin:0 0 35px}footer{margin:0 20px}.terminal{right:12px;bottom:12px;width:calc(100vw - 24px);height:min(500px,calc(100dvh - 24px))}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}.line.typing:after{animation:none}.portrait-speech,.speech-menu{animation:none}*,*:before,*:after{transition-duration:0s!important}}.ascii-portrait{display:block;width:100%;aspect-ratio:1/1;max-width:720px;justify-self:center}.gallery-page{min-height:100vh;background:#fff}.gallery-header{display:flex;justify-content:space-between;gap:20px;margin:0 5%;padding:28px 0;border-bottom:1px solid #ccc;font-size:11px;letter-spacing:.06em}.gallery-header a:last-child{letter-spacing:0;font-size:13px}.gallery-main{padding:90px 5% 110px}.gallery-main h1{font-size:clamp(58px,7vw,100px)}.gallery-intro{max-width:380px;color:#555;line-height:1.65;margin:25px 0 85px;font-size:14px}.gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:6%;row-gap:90px}.gallery-item{border-top:1px solid #aaa;padding-top:18px}.gallery-item-header{display:flex;justify-content:space-between;align-items:baseline;gap:20px}.gallery-item-header h2{font-family:Arial,Helvetica,sans-serif;font-size:17px;font-weight:500;letter-spacing:0}.gallery-item-header span{font:11px monospace;color:#666}.gallery-item .ascii-portrait{margin:10px auto;max-width:550px}.gallery-item p{margin:0;color:#555;font-size:13px;line-height:1.5}.gallery-footer{background:#fff}@media(max-width:700px){.gallery-header{margin:0 20px}.gallery-main{padding:65px 20px 80px}.gallery-intro{margin-bottom:55px}.gallery-grid{grid-template-columns:1fr;row-gap:55px}.gallery-item .ascii-portrait{margin:5px auto}}.cursor-bump{position:fixed;left:0;top:0;width:96px;height:96px;z-index:0;pointer-events:none;visibility:hidden}.header{z-index:2}.project-list .section-intro{margin:5px 0 45px}.project{border-top:1px solid #a3a3a3;padding:22px 0 32px}.project:last-child{border-bottom:1px solid #a3a3a3}.project-type{font-size:10px;letter-spacing:.08em;color:#555}.project h3{font-family:Georgia,Times New Roman,serif;font-size:30px;font-weight:400;letter-spacing:-.025em;margin:18px 0 12px}.project p{margin:0;max-width:440px}.project dl{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:28px 0}@media(min-width:701px)and (max-height:1000px){.work-section{padding-bottom:24px}.work-content{padding-top:36px}.project-list .section-intro{margin-bottom:20px}.project{padding:12px 0 16px}.project h3{margin:8px 0}.project dl{margin:12px 0}}.project dt,.profile-details h3{font-size:11px;letter-spacing:.06em;text-transform:uppercase;margin:0 0 8px}.project dd,.profile-details p{margin:0;color:#444;font-size:14px;line-height:1.6}.project .project-note{font-size:12px;color:#555}.profile-section,.contact-section{padding:100px 5%}.profile-content,.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:95px}.profile-lead{font-family:Georgia,Times New Roman,serif;font-size:clamp(24px,2.4vw,36px);line-height:1.3;margin:0;max-width:570px}.profile-details{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:55px}.contact-section{background:#f2f2f2e0}.contact-content>div>p{max-width:400px;font-size:15px;line-height:1.7;color:#444;margin:5px 0 38px}.contact-list{list-style:none;padding:0;margin:0}.contact-list li{display:flex;justify-content:space-between;gap:24px;padding:17px 0;border-top:1px solid #a3a3a3;font-size:13px;color:#555}.contact-list li:last-child{border-bottom:1px solid #a3a3a3}.contact-list li span:first-child{font-size:10px;letter-spacing:.08em}.contact-list li span:last-child{text-align:right}@media(max-width:700px){.header nav{gap:12px}.profile-section,.contact-section{padding:70px 20px}.profile-content,.contact-content{grid-template-columns:1fr;gap:40px;padding-top:65px}.profile-details{margin-top:40px}.project dl{gap:16px}.project-list .section-intro{margin:0 0 35px}}@media(max-width:390px){.header nav{gap:9px;font-size:11px}.console-trigger{font-size:0}.console-trigger span{font-size:13px;padding:0}.project dl,.profile-details{grid-template-columns:1fr;gap:20px}}.header{border-bottom:0}.header:after{content:"";position:absolute;top:100%;left:0;right:0;height:1px;background:#c9c9c9;transform:translateY(var(--line-offset,0px));pointer-events:none}.hero-bottom{z-index:2;bottom:0;height:88px;align-items:center}.hero-bottom:before{content:"";position:absolute;top:var(--line-offset,0px);left:0;right:0;height:1px;background:#c9c9c9}.hero-bottom:after{content:"";position:absolute;top:var(--line-offset,0px);bottom:0;left:-5.556%;right:-5.556%;background:#fff;z-index:-1}@media(max-width:700px){.hero-bottom{height:70px}.hero-bottom:after{left:-20px;right:-20px}}.header:before{content:"";position:absolute;top:0;bottom:calc(0px - var(--line-offset,0px));left:-5.556%;right:-5.556%;background:#fff;z-index:-1}@media(max-width:700px){.header:before{left:-20px;right:-20px}}html:has(.hero){scroll-snap-type:y mandatory}.hero{scroll-snap-align:start;scroll-margin-top:88px}.work-section,.profile-section,.contact-section{min-height:100svh;scroll-snap-align:start}.contact-section{display:flex;flex-direction:column;padding-bottom:0}.contact-content{flex:1}.contact-section footer{margin:80px 0 0}@media(max-width:700px){.hero{scroll-margin-top:70px}}.work-section,.profile-section,.contact-section{padding-top:0}.section-heading{position:relative;z-index:1;height:88px;align-items:center;padding:0;border:0;font-size:11px;letter-spacing:.08em;color:#111;flex-shrink:0}.section-heading span:first-child{font-weight:700}.section-heading:before{content:"";position:absolute;top:0;bottom:calc(0px - var(--line-offset,0px));left:-5.556%;right:-5.556%;background:#fff;z-index:-1}.section-heading:after{content:"";position:absolute;top:100%;left:0;right:0;height:1px;background:#c9c9c9;transform:translateY(var(--line-offset,0px));pointer-events:none}@media(max-width:700px){.section-heading{height:70px}.section-heading:before{left:-20px;right:-20px}}.header,.hero-bottom,.section-heading{padding-inline:3px}.header:after,.hero-bottom:before,.section-heading:after{left:3px;right:3px}.skip-link{position:fixed;z-index:10;top:12px;left:20px;padding:12px 16px;background:#111;color:#fff;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.terminal :focus-visible{outline-color:var(--terminal-accent)}.terminal-output{min-height:0;overscroll-behavior:contain}.header nav a{padding-block:12px}.hero-copy{min-width:0}@media(max-height:600px){.hero-copy{padding-block:28px 40px}}@media(min-width:701px)and (max-width:1100px){.hero{min-height:max(calc(100svh - 88px),600px)}.portrait-stage{top:54%}.portrait-speech{left:calc(38% - 20px - var(--portrait-shift) - var(--speech-x));right:auto}}@media(min-width:701px)and (max-width:1230px)and (max-height:800px){.hero-copy{transition:transform .4s cubic-bezier(.16,1,.3,1)}.hero:has(.portrait-speech.is-open) .hero-copy{transform:translateY(60px)}}.entry-overlay{position:fixed;z-index:20;inset:0;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;padding:0 5%;background:#fff;color:#111;transition:opacity .4s ease,clip-path .4s cubic-bezier(.16,1,.3,1);clip-path:inset(0)}.entry-overlay--leaving{opacity:0;clip-path:inset(0 0 100% 0);pointer-events:none}.entry-top,.entry-bottom{position:relative;height:88px;display:flex;justify-content:space-between;align-items:center;gap:20px;padding-inline:3px;font:400 11px Arial,Helvetica,sans-serif;letter-spacing:.08em;flex-shrink:0}.entry-top:after,.entry-bottom:before{content:"";position:absolute;left:3px;right:3px;height:1px;background:#c9c9c9}.entry-top:after{top:100%;transform:translateY(var(--entry-header-line-offset, 0px))}.entry-bottom:before{top:var(--entry-footer-line-offset, 0px)}.entry-top>span:last-child{color:#111;font-size:13px;letter-spacing:0}.entry-bottom{color:#555;font-size:9px;letter-spacing:.1em}.entry-bottom button{border:1px solid #888;padding:10px 14px;background:transparent;color:#111;cursor:pointer;font:13px Arial,sans-serif;letter-spacing:0}.entry-bottom button span{font-family:monospace;color:#444;padding-right:7px}.entry-panel{width:min(100%,1000px);margin:auto;padding:32px 16px;display:flex;justify-content:center}.entry-art{margin:0;color:#1e2125;font:min(17px,calc((100vw - 72px) / 34)) / 1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;white-space:pre}@media(max-width:700px){.entry-overlay{padding-inline:20px}.entry-top,.entry-bottom{height:70px}.entry-top>span:last-child{font-size:12px}.entry-bottom{font-size:8px}.entry-bottom button{padding:8px;font-size:12px}}@media(max-width:390px){.entry-top>span:last-child{font-size:11px}}.transition-preview{position:fixed;z-index:30;top:100px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:4px;max-width:calc(100vw - 24px);padding:6px;background:#fff;border:1px solid #aaa;font:12px Arial,sans-serif;white-space:nowrap}.transition-preview span{padding:0 8px;color:#555;font-size:9px;letter-spacing:.08em}.transition-preview button{border:0;padding:9px 10px;background:transparent;cursor:pointer}.transition-preview button[aria-pressed=true]{background:#111;color:#fff}@media(max-width:700px){.transition-preview{top:78px;gap:0;font-size:11px}.transition-preview span{padding:0 5px;font-size:8px}.transition-preview button{padding:9px 7px}}[data-edition] ::selection{background:var(--accent);color:var(--on-accent)}.header nav a{position:relative}.header nav a:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:3px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .18s ease-out}.header nav a:is(:hover,:focus-visible){color:var(--accent-ink)}.header nav a:is(:hover,:focus-visible):after{transform:scaleX(1)}.console-trigger{background-image:linear-gradient(var(--accent),var(--accent));background-size:0% 100%;background-position:left;background-repeat:no-repeat;transition:background-size .18s ease-out,color .18s,border-color .18s}.console-trigger:is(:hover,:focus-visible){background-size:100% 100%;color:var(--on-accent);border-color:var(--accent)}.console-trigger:is(:hover,:focus-visible) span{color:inherit}[data-edition]:not([data-edition=mono]) h2 em{color:var(--accent-ink)}[data-edition]:not([data-edition=mono]) .console-trigger{border-color:var(--accent)}.edition-sample{display:flex;align-items:center;gap:12px;padding:4px 0;border:0;background:none;color:#111;text-align:left;cursor:pointer}.edition-swatch{display:block;width:54px;height:40px;flex-shrink:0;background:var(--accent)}.edition-label{display:grid;gap:5px}.edition-label strong{font-size:10px;font-weight:500;letter-spacing:.04em;text-transform:uppercase}.edition-label small{font-size:9px;color:#555;letter-spacing:.05em}.edition-sample:is(:hover,:focus-visible) .edition-label strong{text-decoration:underline;text-underline-offset:3px}footer a:is(:hover,:focus-visible){color:var(--accent-ink)}[data-edition]:not([data-edition=mono]) .wordmark span,[data-edition]:not([data-edition=mono]) #hero-title em{color:var(--accent-ink)}.contact-panel{align-self:start;padding:clamp(24px,3vw,42px);background:var(--accent);color:var(--on-accent)}.contact-content>.contact-panel>p{color:inherit}.contact-panel .contact-list li{color:inherit;border-color:currentColor}.ink-catalog{display:grid;gap:0;margin:14px 0 0}.ink-catalog button{display:flex;align-items:center;gap:12px;width:100%;padding:7px 10px;border:0;border-top:1px solid #555;background:transparent;color:#eee;text-align:left;font:inherit;cursor:pointer}.ink-catalog button>i{display:block;width:44px;height:36px;flex-shrink:0;border:1px solid #888}.ink-catalog button>span:first-of-type{flex:1;display:grid;gap:2px}.ink-catalog strong{font-size:11px;font-weight:500}.ink-catalog small{color:#bbb;font-size:10px}.ink-catalog button:is(:hover,:focus-visible){background:#262626}.ink-catalog button[aria-pressed=true] strong{text-decoration:underline;text-underline-offset:4px}.ink-catalog button[aria-pressed=true]>span:last-child{color:var(--terminal-accent)}@container (max-height: 230px){.terminal-output{padding-block:4px}.ink-catalog{margin-top:8px}.ink-catalog button{padding-block:2px}.ink-catalog button>i{height:28px}}@media(max-width:700px){.edition-sample{gap:9px}.edition-swatch{width:36px;height:36px}.edition-label strong{font-size:9px}.edition-label small{font-size:8px}.hero-bottom{gap:12px}}@property --entry-dot-radius{syntax: "<length>"; inherits: false; initial-value: 0px;}.entry-overlay.entry--dots.entry-overlay--leaving{clip-path:none;transition:none;-webkit-mask-image:radial-gradient(circle,transparent var(--entry-dot-radius),#000 calc(var(--entry-dot-radius) + .8px));mask-image:radial-gradient(circle,transparent var(--entry-dot-radius),#000 calc(var(--entry-dot-radius) + .8px));-webkit-mask-size:9px 9px;mask-size:9px 9px;animation:entry-dots-open 1.5s ease-in-out both}.entry-overlay.entry--dots.entry-overlay--leaving .entry-panel,.entry-overlay.entry--dots.entry-overlay--leaving .entry-top,.entry-overlay.entry--dots.entry-overlay--leaving .entry-bottom{animation:entry-dots-ink .35s ease-out both}.transition-dots.transition-revealing .ascii-background{animation:entry-dots-background 1.1s ease-out both}.transition-dots.transition-revealing .hero-copy{animation:entry-dots-copy .85s .45s cubic-bezier(.16,1,.3,1) both}.transition-dots.transition-revealing .portrait-stage .ascii-portrait{animation:entry-dots-copy 1s .35s cubic-bezier(.16,1,.3,1) both}@keyframes entry-dots-open{0%{--entry-dot-radius: 0px;opacity:1}85%{--entry-dot-radius: 6.5px;opacity:1}to{--entry-dot-radius: 6.5px;opacity:0}}@keyframes entry-dots-ink{to{opacity:0}}@keyframes entry-dots-background{0%{opacity:0}to{opacity:1}}@keyframes entry-dots-copy{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.entry-overlay.entry--dots.entry-overlay--leaving,.entry-overlay.entry--dots.entry-overlay--leaving .entry-panel,.entry-overlay.entry--dots.entry-overlay--leaving .entry-top,.entry-overlay.entry--dots.entry-overlay--leaving .entry-bottom,.transition-dots.transition-revealing .ascii-background,.transition-dots.transition-revealing .hero-copy,.transition-dots.transition-revealing .portrait-stage .ascii-portrait{animation:none}}.entry-overlay.entry--scan{opacity:1;clip-path:inset(0);transition:clip-path 1.5s cubic-bezier(.45,0,.2,1)}.entry-overlay.entry--scan:after{content:"";position:absolute;z-index:2;top:0;left:0;width:100%;height:1px;background:#777;opacity:0;pointer-events:none;transform:translateY(0);transition:transform 1.5s cubic-bezier(.45,0,.2,1),opacity .1s ease}.entry-overlay.entry--scan.entry-overlay--leaving{opacity:1;clip-path:inset(100% 0 0)}.entry-overlay.entry--scan.entry-overlay--leaving:after{opacity:.7;transform:translateY(100dvh)}@media(prefers-reduced-motion:reduce){.entry-overlay.entry--scan{transition:none}.entry-overlay.entry--scan:after{display:none}}.transition-assemble.transition-revealing .entry-overlay.entry--assemble{clip-path:none;transition:none;animation:assemble-overlay 1.5s ease-in-out both;pointer-events:none}.transition-assemble.transition-revealing .entry--assemble .entry-panel{position:relative}.transition-assemble.transition-revealing .entry--assemble .entry-art{animation:assemble-terminal .85s ease-in both}.transition-assemble.transition-revealing .entry--assemble .entry-panel:after{content:" .   :     .  ,    .    :     .  .  ,   .   :  .\a   .  ;   .  . :    .  ,   :   .    .  :  .  ,\a:  .    ,  .   . :   ; .    .  ,   .  :     .\a   . :  .  ,   :  .  .   . ;   :    .  .  ,   .\a.   .   :  . ;   . ,    .  :    .  ;  .    :\a   :  ,   .  .   :   . ;  .    ,   .   :  .  .\a.   .  ;   :   .    . ,   :    .  ;   .   .  :\a   .   : .   .  ;  .   :    .  ,  .  .  :    .\a:    .  ,  .    . :   .  ,   ;   .   :  .   .";position:absolute;left:50%;top:50%;color:#111;font:clamp(7px,1.05vw,13px)/1.45 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre;pointer-events:none;animation:assemble-marks 1.5s ease-out both}.transition-assemble.transition-revealing .portrait-stage{animation:assemble-portrait 1.5s ease-out both}.transition-assemble.transition-revealing .hero-copy{animation:assemble-copy 1.5s ease-out both}@keyframes assemble-overlay{0%,38%{opacity:1}to{opacity:0}}@keyframes assemble-terminal{0%{opacity:1;transform:scale(1);filter:blur(0)}65%{opacity:.28;transform:scale(1.025);filter:blur(1px)}to{opacity:0;transform:scale(1.04);filter:blur(2px)}}@keyframes assemble-marks{0%,15%{opacity:0;transform:translate(-50%,-50%) scale(.6)}42%{opacity:.34}to{opacity:0;transform:translate(-50%,-50%) scale(1.45)}}@keyframes assemble-portrait{0%,35%{opacity:0;filter:blur(3px)}to{filter:blur(0)}}@keyframes assemble-copy{0%,45%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.transition-assemble.transition-revealing .entry-overlay.entry--assemble{animation:none;opacity:0}.transition-assemble.transition-revealing .entry--assemble .entry-art,.transition-assemble.transition-revealing .entry--assemble .entry-panel:after,.transition-assemble.transition-revealing .portrait-stage,.transition-assemble.transition-revealing .hero-copy{animation:none}}
