@font-face{font-family:Urbanist;src:url(/fonts/urbanist-400.woff2)format("woff2");font-weight:400;font-display:swap}@font-face{font-family:Urbanist;src:url(/fonts/urbanist-500.woff2)format("woff2");font-weight:500;font-display:swap}@font-face{font-family:Urbanist;src:url(/fonts/urbanist-600.woff2)format("woff2");font-weight:600;font-display:swap}@font-face{font-family:Urbanist;src:url(/fonts/urbanist-700.woff2)format("woff2");font-weight:700;font-display:swap}:root{color-scheme:dark;--bg:oklch(17.685% .015902 261.525);--surface:oklch(20.2949% .020301 258.337);--surface-hover:oklch(25.329% .032577 256.309);--text:oklch(94.5079% .010355 261.789);--muted:oklch(72.4413% .028189 257.048);--accent:oklch(78.3498% .110312 258.732);--accent-strong:oklch(81.0463% .095668 258.316);--line:oklch(31.7503% .027071 255.135);--grid:oklch(31.6717% .039688 254.686);--blue-surface:oklch(24.664% .042502 258.754);--display:Urbanist, sans-serif;--body:"Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;--mono:"SFMono-Regular", Consolas, monospace;--text-caption:.8125rem;--text-ui:.875rem;--text-body:1rem;--text-article:1.125rem;--text-project:clamp(1.5rem, 2.2vw, 1.75rem);--text-section:clamp(1.5rem, 2.6vw, 2rem);--text-page:clamp(2rem, 3.8vw, 3rem);--leading-body:1.6;--leading-heading:1.3}:root[data-theme=light]{color-scheme:light;--bg:oklch(97.0082% .004122 91.4464);--surface:oklch(99.1% .0041 91.4454);--surface-hover:oklch(95.6717% .005156 247.878);--text:oklch(27.4408% .042048 257.313);--muted:oklch(50.175% .033542 254.815);--accent:oklch(53.8923% .159615 258.815);--accent-strong:oklch(45.8233% .132775 258.898);--line:oklch(88.8422% .013355 251.57);--grid:oklch(87.163% .021588 252.513);--blue-surface:oklch(94.9902% .012547 255.506)}*{box-sizing:border-box}html{background:var(--bg);color:var(--text);scroll-behavior:smooth;text-autospace:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-padding-top:100px}body{font-family:var(--body);font-size:var(--text-body);line-height:var(--leading-body);margin:0}html[lang=en] body{font-family:var(--display)}::selection{background:var(--accent);color:var(--bg)}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:5px}img,svg{display:block}img{max-width:100%}svg{flex-shrink:0}h1,h2,h3,p,ul{margin:0}p{text-wrap:pretty}h1,h2,h3{text-wrap:balance}.localized-text{min-width:0;display:grid}.localized-text>span{overflow-wrap:break-word;grid-area:1/1;min-width:0}.localized-text>[lang=ja]{font-family:var(--body)}.localized-text>[lang=en]{font-family:var(--display)}.localized-text .localized-reserve{visibility:hidden;pointer-events:none;user-select:none}.localized-line{display:block}ul{padding:0;list-style:none}[hidden]{display:none!important}.frame{width:calc(100% - 112px);max-width:1264px;margin-inline:auto}.mono,.eyebrow{font-family:var(--mono);font-size:var(--text-caption);letter-spacing:.05em;font-variant-numeric:tabular-nums;font-weight:400;line-height:1.6}.eyebrow{text-transform:uppercase;align-items:center;gap:10px;display:flex}.accent{color:var(--accent)}.text-link{font-size:var(--text-ui);white-space:nowrap;align-items:center;gap:14px;transition:color .2s;display:inline-flex}.text-link:hover{color:var(--accent)}.text-link svg{width:15px;height:15px}.button{min-height:49px;font-size:var(--text-ui);border:1px solid var(--line);justify-content:space-between;align-items:center;gap:34px;padding:12px 21px;line-height:1.5;transition:background .2s,transform .2s;display:inline-flex}.button:hover{transform:translateY(-2px)}.primary{background:var(--accent);color:var(--bg);border-color:var(--accent)}.primary:hover{background:var(--accent-strong)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{background:var(--accent);color:var(--bg);z-index:100;padding:10px 18px;position:fixed;top:-100px;left:20px}.skip-link:focus{top:10px}.site-header{z-index:20;background:var(--bg);border-bottom:1px solid var(--line);position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:20px;min-height:80px;display:flex}.wordmark{font-family:var(--display);letter-spacing:-.035em;align-items:center;font-size:27px;font-weight:600;display:flex}.brand-symbol{color:var(--accent);margin-right:13px;font-size:31px;font-weight:400}.wordmark-domain{color:var(--muted)}.site-header nav{font-size:var(--text-body);gap:28px;line-height:1.5;display:flex}.site-header nav a{white-space:nowrap;text-align:center;padding-block:16px}.site-header nav a:hover{color:var(--accent)}.header-controls{align-items:center;gap:22px;display:flex}.language-switch{color:var(--muted);font-family:var(--mono);font-size:var(--text-ui);align-items:center;gap:8px;line-height:1.5;display:flex}.language-switch a{padding-block:12px}.language-switch a[aria-current]{color:var(--text)}.language-switch a:hover{color:var(--accent)}.theme-switch{color:var(--muted);background:0 0;border:0;place-items:center;margin:-12px;padding:12px;display:grid}.theme-switch:hover{color:var(--accent)}.header-contact{border:1px solid var(--line);font-size:var(--text-ui);align-items:center;gap:14px;padding:7px 14px;line-height:1.5;display:inline-flex}.header-contact>span:last-child{color:var(--accent)}.hero{border-inline:1px solid var(--line)}.hero-body{grid-template-columns:1.28fr 1fr;min-height:618px;display:grid;overflow:hidden}.hero-copy{z-index:2;padding:106px 0 85px 46px;position:relative}.hero-copy .eyebrow{color:var(--muted);font-size:9px}.status-dot{background:var(--accent);border-radius:50%;flex-shrink:0;width:5px;height:5px;box-shadow:0 0 10px oklch(78.3498% .110312 258.732/.313725)}.hero h1{font-family:var(--display);letter-spacing:-.055em;margin:35px 0 26px;font-size:clamp(3rem,5.6vw,4.875rem);font-weight:500;line-height:1.06}.hero h1 span{white-space:nowrap;display:block}.hero-lead{margin-bottom:9px;font-size:17px;font-weight:500}.hero-description{max-width:28rem;font-size:var(--text-body);color:var(--muted);line-height:var(--leading-body)}.hero-actions{align-items:center;gap:27px;margin-top:30px;display:flex}.hero-art{align-self:stretch;min-width:0;margin:36px 22px 28px -12px;position:relative}.art-grid{background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);opacity:.55;background-size:42px 42px;position:absolute;inset:16px 0 12px;mask-image:radial-gradient(oklch(0% 0 0) 30%,#0000 73%)}.orbit{border:1px solid var(--accent);opacity:.23;aspect-ratio:1;border-radius:50%;width:89%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.orbit-two{opacity:.15;border-style:dashed;width:107%}.hero-character{filter:drop-shadow(0 16px 40px oklch(0% 0 0/.2));width:113%;max-width:none;height:auto;position:absolute;top:50%;left:-7%;transform:translateY(-46%)}.art-coordinate{color:var(--muted);font-size:8px;line-height:1.8;position:absolute;top:38px;left:15px}.art-cross{color:var(--accent);font-family:var(--mono);font-size:22px;position:absolute}.cross-one{top:38px;right:16px}.cross-two{bottom:46px;left:3px}.hero-bottom{border-block:1px solid var(--line);color:var(--muted);font-size:var(--text-caption);justify-content:end;gap:20px;padding:20px 29px;display:flex}.hero-bottom a:hover{color:var(--accent)}.section{--section-padding-top:91px;padding-block:var(--section-padding-top) 6px;scroll-margin-top:calc(-1 * var(--section-padding-top))}.section-heading{justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:35px;display:flex}.section-heading>div{flex:1;min-width:0}.section-index{color:var(--accent);margin-bottom:17px}.section-heading h2{font-weight:500;font-size:var(--text-section);letter-spacing:-.02em;line-height:var(--leading-heading)}.section-description{color:var(--muted);max-width:40rem;font-size:var(--text-body);line-height:var(--leading-body);margin-top:10px}.section-heading>.text-link{flex-shrink:0;padding-bottom:4px}.projects{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px;display:grid}.project{border:1px solid var(--line);background:var(--surface);flex-direction:column;display:flex;overflow:hidden}.project-featured{grid-column:1/-1;grid-template-columns:1fr 1.04fr;display:grid}.project-content{flex-direction:column;flex:1;padding:29px 30px 24px;display:flex}.project h3{font-family:var(--display);font-size:var(--text-project);line-height:var(--leading-heading);letter-spacing:-.02em;font-weight:500}.project h3 a{justify-content:space-between;align-items:center;gap:10px;display:flex}.project h3 a:hover{color:var(--accent)}.project h3 svg{width:23px;height:23px;color:var(--accent)}.project-subtitle{font-size:var(--text-body);font-weight:500;line-height:var(--leading-body);margin-top:11px}.project-description{color:var(--muted);font-size:var(--text-body);line-height:var(--leading-body);max-width:40rem;margin-top:14px}.project-facts{border-top:1px solid var(--line);margin:22px 0 0;padding-top:14px}.project-facts div{font-size:var(--text-ui);line-height:var(--leading-body);grid-template-columns:7rem minmax(0,1fr);gap:13px;margin-block:5px;display:grid}.project-facts dt{color:var(--muted)}.project-facts dd{margin:0}.tags{flex-wrap:wrap;gap:6px;margin-top:19px;display:flex}.tags li{border:1px solid var(--line);color:var(--muted);font-family:var(--mono);font-size:var(--text-caption);white-space:nowrap;padding:3px 8px;line-height:1.5}.project-links{border-top:1px solid var(--line);flex-wrap:wrap;gap:13px 23px;margin-top:auto;padding-top:19px;display:flex}.tags+.project-links{margin-top:23px}.project-links a{font-size:var(--text-ui);align-items:center;gap:7px;line-height:1.5;display:inline-flex}.project-links .localized-reserve{display:none}.project-links a:hover{color:var(--accent)}.project-links svg{width:12px;height:12px;color:var(--accent)}.work-visual{background-color:var(--blue-surface);background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);min-width:0;height:246px;color:var(--accent);-webkit-user-select:none;user-select:none;border-bottom:1px solid var(--line);background-size:30px 30px;position:relative;overflow:hidden}.project-featured .work-visual{border-bottom:0;border-right:1px solid var(--line);height:100%;min-height:430px}.voice-diagram{width:calc(100% - 40px);max-width:486px;height:auto;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.diagram-arrow{opacity:.9;width:32px;height:32px}.diagram-arrow-down{width:24px;height:24px;transform:rotate(90deg)}.flow-lines{width:calc(100% - 40px);height:calc(100% - 40px);position:absolute;inset:20px}.web-visual{background-color:var(--surface);background-image:linear-gradient(color-mix(in oklch, var(--accent) 35%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in oklch, var(--accent) 35%, transparent) 1px, transparent 1px), linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-position:50%;background-size:120px 120px,120px 120px,24px 24px,24px 24px}.tags-visual{background-color:var(--surface)}.prompt-diagram{flex-direction:column;justify-content:center;align-items:center;gap:17px;display:flex;position:absolute;inset:40px 25px}.prompt-input{border:1px solid var(--line);background:var(--surface);gap:8px;width:min(75%,250px);padding:18px 22px;display:grid}.prompt-input i{background:var(--accent);opacity:.6;height:2px}.prompt-input i:nth-child(2){width:85%}.prompt-input i:last-child{width:55%}.prompt-tags{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.prompt-tags span{border:1px solid var(--accent);background:var(--blue-surface);width:62px;height:23px}.prompt-tags span:nth-child(2){width:46px}.translation-diagram{justify-content:center;align-items:center;gap:18px;display:flex;position:absolute;inset:40px 22px}.comic-panel{border:1px solid var(--line);background:var(--surface);flex-direction:column;justify-content:center;align-items:center;gap:10px;width:145px;height:140px;padding:12px;display:flex;position:relative}.comic-panel.translated{border-color:var(--accent)}.speech-bubble{border:1px solid var(--line);border-radius:50%;gap:5px;width:72px;max-width:100%;padding:12px 15px;display:grid}.speech-bubble i{opacity:.5;background:currentColor;height:2px}.speech-bubble i:last-child{width:70%}.comic-character{width:56px;height:42px}.writing-section{--section-padding-top:98px}.count{background:var(--surface);border:1px solid var(--line);min-width:2rem;min-height:1.75rem;color:var(--muted);place-items:center;display:grid}.article-info{overflow-wrap:anywhere;min-width:0}.archive-year>.article-list{min-width:0}.article-list{border-top:1px solid var(--line)}.article-row{border-bottom:1px solid var(--line);grid-template-columns:24px 105px minmax(0,1fr) 18px;align-items:center;gap:23px;min-height:102px;padding:23px 21px;transition:background .2s;display:grid}.article-row:hover{background:var(--surface-hover)}.article-row:hover h3{color:var(--accent)}.article-index{color:var(--muted);font-size:var(--text-caption)}.article-row time{color:var(--muted);font-size:var(--text-caption);white-space:nowrap}.article-category{color:var(--accent);font-size:var(--text-caption);margin-bottom:7px;display:block}.article-row h3{font-size:var(--text-article);font-weight:500;line-height:1.5}.article-row>svg{color:var(--muted);width:16px;height:16px}.writing-footnote{color:var(--muted);font-size:var(--text-caption);justify-content:space-between;gap:15px;padding-top:17px;display:flex}.about-section{--section-padding-top:102px;padding-bottom:94px}.about-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:90px;padding-top:14px;display:grid}.about-title h2{font-family:var(--display);font-size:var(--text-section);letter-spacing:-.02em;font-weight:500;line-height:var(--leading-heading)}.about-title h2 span{display:block}html[lang=ja] .about-title h2,html[lang=ja] .connect-body h2{font-family:var(--body);letter-spacing:-.02em}.about-signature{align-items:center;gap:16px;max-width:350px;margin-top:37px;display:flex}.about-signature img{border:1px solid var(--line);object-fit:contain;background:var(--blue-surface);border-radius:50%;width:56px;height:56px;padding:5px}.about-signature strong{font-family:var(--display);font-size:22px;font-weight:500;line-height:1.3;display:block}.about-signature .mono{color:var(--muted);font-size:var(--text-ui)}.about-copy>p{color:var(--muted);font-size:var(--text-body);line-height:var(--leading-body);max-width:40rem;margin-bottom:16px}.focus{margin-top:27px}.focus h3{color:var(--accent);font-family:inherit;font-size:var(--text-body);letter-spacing:0;margin-bottom:12px;font-weight:500}.focus li{border-bottom:1px solid var(--line);font-size:var(--text-body);grid-template-columns:1.5rem minmax(0,1fr);gap:18px;padding-block:8px;display:grid}.focus li .mono{color:var(--muted)}.connect-section{border:1px solid var(--line);background:var(--blue-surface);padding:31px 36px 0}.connect-top{color:var(--accent);justify-content:end;align-items:center;display:flex}.connect-top>span:last-child{font-size:33px;line-height:1}.connect-body{justify-content:space-between;gap:60px;margin-block:23px 34px;display:flex}.connect-body h2{font-family:var(--display);font-weight:500;font-size:var(--text-section);line-height:var(--leading-heading);letter-spacing:-.02em;flex:1;min-width:0}.connect-body h2 span{display:block}.connect-body>div{flex-shrink:0;width:22rem;max-width:45%}.connect-body p{color:var(--muted);font-size:var(--text-body);line-height:var(--leading-body);margin-bottom:0}.social-links{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));margin-inline:-36px;display:grid}.social-links a{border-right:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-content:start;column-gap:12px;padding:18px 25px;transition:background .2s;display:grid}.social-links a:nth-child(3n){border-right:0}.social-links a:nth-child(3n+1):nth-last-child(-n+3),.social-links a:nth-child(3n+1):nth-last-child(-n+3)~a{border-bottom:0}.social-links a:last-child:nth-child(3n+1){border-right:0;grid-column:1/-1}.social-links a>span{overflow-wrap:anywhere}.social-links a>span:first-child{font-family:var(--display);font-size:var(--text-article);min-width:0;line-height:1.4}.social-links .mono{color:var(--muted);font-family:var(--display);font-size:var(--text-ui);letter-spacing:0;grid-area:2/1;margin-top:4px}.social-links svg{width:14px;height:14px;color:var(--accent);grid-area:1/2/span 2;align-self:center}.social-links a:hover{background:var(--surface-hover)}.site-footer{color:var(--muted);font-size:var(--text-caption);justify-content:space-between;align-items:center;gap:24px;padding-block:35px;display:flex}.footer-brand{font-family:var(--display);color:var(--text);font-size:1.25rem;font-weight:500}.site-footer>div{align-items:center;gap:24px;display:flex}.site-footer>div>a{border:1px solid var(--line);place-items:center;width:32px;height:32px;font-size:16px;display:grid}.archive{padding-block:38px 90px}.back-home{width:fit-content;color:var(--muted);margin-bottom:65px;display:flex}.archive>.eyebrow{color:var(--muted)}.archive h1{font-family:var(--display);font-size:var(--text-page);letter-spacing:-.02em;font-weight:500;line-height:var(--leading-heading);margin-block:17px 20px}html[lang=ja] .archive h1{font-family:var(--body)}.archive-description{color:var(--muted);max-width:40rem;font-size:var(--text-body);line-height:var(--leading-body);margin-block:24px 32px}.archive-tools>.mono{align-items:center;gap:.5rem;display:inline-flex}.archive-tools{border-block:1px solid var(--line);justify-content:space-between;align-items:center;gap:24px;margin-top:50px;padding-block:18px;display:flex}.search-box{background:var(--surface);border:1px solid var(--line);max-width:100%;color:var(--muted);align-items:center;gap:13px;padding:9px 14px;display:flex}.search-box input{width:240px;min-width:0;color:var(--text);font-size:var(--text-body);background:0 0;border:0;line-height:1.5}.search-box input::placeholder{color:var(--muted)}.source-filters{border:0;flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;display:flex}.source-filters button{border:1px solid var(--line);background:var(--surface);color:var(--muted);font-size:var(--text-ui);align-items:center;gap:10px;padding:7px 15px;line-height:1.5;display:inline-flex}.source-filters button:hover{color:var(--accent);border-color:var(--accent)}.source-filters button[aria-pressed=true]{border-color:var(--accent);background:var(--blue-surface);color:var(--accent)}.source-filters .mono{font-size:var(--text-caption)}.archive-language{color:var(--muted);font-size:var(--text-ui);margin-top:14px}.archive-results{color:var(--muted);font-size:var(--text-body)}.archive-results p{margin-block:40px}.archive-year{grid-template-columns:125px minmax(0,1fr);gap:25px;margin-top:50px;display:grid}.archive-year>h2{color:var(--accent);padding-top:18px;font-size:1.5rem}.archive-year .article-row{grid-template-columns:60px minmax(0,1fr) 18px;gap:20px;min-height:80px;padding:18px 16px}.archive-year .article-row h3{font-family:var(--body);font-size:var(--text-article);line-height:1.5}@media (width>=1450px){.hero-body{min-height:676px}.hero-copy{padding-top:126px}.hero-art{margin-top:49px}}@media (width<=1100px){.frame{width:calc(100% - 64px)}.hero-copy{padding-left:30px}.hero h1{font-size:clamp(2.25rem,5.8vw,4.875rem)}.hero-body{min-height:570px}.hero-art{margin-right:8px}.hero-character{width:125%;left:-14%}.hero-bottom>span:nth-child(2){display:none}.project-content{padding-inline:24px}.about-grid{gap:50px}.connect-body{gap:30px}.connect-body>div{width:20rem}}@media (width<=780px){.frame{width:calc(100% - 40px)}.header-inner{gap:10px;min-height:70px}.wordmark{font-size:1.5rem}.brand-symbol{margin-right:8px;font-size:27px}.header-controls{gap:16px}.header-contact{display:none}.site-header nav{font-size:var(--text-ui);gap:16px}.hero-body{grid-template-columns:1fr}.hero-copy{padding:57px 30px 25px}.hero h1{margin-top:28px;font-size:clamp(2.625rem,8.4vw,4.0625rem)}.hero-description{max-width:28rem}.hero-art{width:80%;max-width:410px;min-height:360px;margin:0 auto 8px}.hero-character{width:105%;left:-2%;transform:translateY(-50%)}.art-coordinate{top:20px}.orbit{width:77%}.orbit-two{width:92%}.hero-bottom{padding-inline:20px}.hero-bottom>span:first-child{max-width:140px}.section{--section-padding-top:64px}.section-heading{margin-bottom:26px;display:block}.section-heading>.text-link{margin-top:22px}.project-featured{display:flex}.project-featured .work-visual{border-right:0;border-bottom:1px solid var(--line);height:285px;min-height:0}.projects{gap:18px}.project-content{padding:23px 22px}.project-facts div{grid-template-columns:minmax(0,1fr);gap:3px;margin-block:10px}.work-visual{height:226px}.translation-diagram{gap:10px;inset-inline:14px}.comic-panel{width:125px;min-width:0;height:118px;padding:9px}.comic-character{width:45px;height:34px}.article-row{grid-template-columns:83px minmax(0,1fr) 16px;gap:18px;padding-inline:12px}.article-index{display:none}.about-section{padding-bottom:65px}.about-grid{gap:35px}.connect-section{padding-inline:24px}.connect-body{display:block}.connect-body>div{width:auto;max-width:100%;margin-top:24px}.connect-body p{max-width:370px}.social-links{margin-inline:-24px}.social-links a{padding-inline:17px}.site-footer>span{display:none}.archive-year{grid-template-columns:70px minmax(0,1fr);gap:13px}.archive-year .article-row{grid-template-columns:45px minmax(0,1fr) 14px;gap:12px;padding-inline:8px}}@media (width<=520px){html{scroll-padding-top:120px}.frame{width:calc(100% - 32px)}.header-inner{flex-wrap:wrap;align-content:space-between;min-height:101px;padding-top:10px}.site-header nav{border-top:1px solid var(--line);order:3;justify-content:space-between;width:100%;padding-inline:1px}.site-header nav a{padding-block:8px}.header-controls{gap:22px}.wordmark{font-size:1.4375rem}.hero-copy{padding:42px 22px 21px}.hero-copy .eyebrow{letter-spacing:.02em;gap:7px;font-size:7px}.hero h1{margin-block:27px 21px;font-size:clamp(1.875rem,9.8vw,3.3125rem)}.hero-lead{font-size:15px}.hero-actions{gap:22px}.button{gap:24px;padding-inline:16px}.hero-art{width:92%;min-height:318px}.hero-character{width:103%}.art-coordinate{font-size:7px}.cross-one{top:20px}.cross-two{bottom:22px}.hero-bottom{padding:17px 14px}.projects{grid-template-columns:1fr}.project-featured{grid-column:auto}.project-content{padding:25px 22px}.project-featured .work-visual{height:265px}.work-visual{height:242px}.article-row{grid-template-columns:minmax(0,1fr) 18px;gap:6px 15px;padding:22px 9px}.article-row time{grid-row:1}.article-info{grid-area:2/1}.article-row>svg{grid-area:1/2/span 2}.article-category{margin-top:2px}.writing-footnote{flex-wrap:wrap}.about-grid{grid-template-columns:1fr;gap:35px}.about-signature{margin-top:25px}.connect-section{padding:24px 22px 0}.connect-body{margin-top:25px}.social-links{grid-template-columns:repeat(2,1fr);margin-inline:-22px}.social-links a{border-right:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px}.social-links a:nth-child(3n){border-right:1px solid var(--line)}.social-links a:nth-child(2n){border-right:0}.social-links a:nth-child(3n+1):nth-last-child(-n+3),.social-links a:nth-child(3n+1):nth-last-child(-n+3)~a{border-bottom:1px solid var(--line)}.social-links a:nth-child(odd):nth-last-child(-n+2),.social-links a:nth-child(odd):nth-last-child(-n+2)~a{border-bottom:0}.social-links a:last-child:nth-child(odd){border-right:0;grid-column:1/-1}.site-footer{padding-block:28px}.site-footer>div{gap:14px}.back-home{margin-bottom:48px}.archive-tools{flex-direction:column;align-items:flex-start;gap:12px}.search-box,.search-box input{width:100%}.archive-year{grid-template-columns:1fr;gap:15px;margin-top:35px}.archive-year>h2{padding-top:0;font-size:1.5rem}.archive-year .article-row{grid-template-columns:43px minmax(0,1fr) 14px;gap:12px;padding:18px 7px}.archive-year .article-row time{grid-area:1/1}.archive-year .article-row .article-info{grid-area:1/2}.archive-year .article-row>svg{grid-area:1/3}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.project{transition:border-color .2s;position:relative}.project-trigger{width:100%;color:inherit;font:inherit;text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:16px;padding:0;display:flex}.project-trigger:after{content:"";position:absolute;inset:0}.project-trigger:hover{color:var(--accent)}.project:has(.project-trigger:hover),.project:has(.project-trigger:focus-visible){border-color:var(--accent)}.project:has(.project-trigger:focus-visible){outline:2px solid var(--accent);outline-offset:4px}.project-trigger:focus-visible{outline:none}.project>.project-content>.project-links{z-index:1;position:relative}.project-featured .work-visual{min-height:350px}.project-dialog{border:1px solid var(--line);background:var(--surface);width:min(760px,100% - 40px);max-height:calc(100dvh - 64px);color:var(--text);overscroll-behavior:contain;margin:auto;padding:0;overflow:auto}.project-dialog::backdrop{backdrop-filter:blur(4px);background:oklch(12% .015 261/.75)}html:has(.project-dialog[open]){scrollbar-gutter:stable;overflow:hidden}.project-dialog-header{z-index:2;border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;gap:24px;padding:24px 36px;display:flex;position:sticky;top:0}.project-dialog-header h2{overflow-wrap:break-word;min-width:0;font-family:var(--display);font-size:var(--text-project);font-weight:500;line-height:var(--leading-heading);letter-spacing:-.02em}.project-dialog-header form{margin:0}.project-dialog-close{border:1px solid var(--line);width:44px;height:44px;color:var(--muted);background:0 0;place-items:center;padding:10px;display:grid}.project-dialog-close:hover{color:var(--accent);border-color:var(--accent)}.project-dialog-close svg{width:22px;height:22px}.project-dialog>.work-visual{height:clamp(11rem,30vw,15.375rem)}.project-dialog-body{padding:28px 36px 36px}.project-dialog-subtitle{font-size:var(--text-article);font-weight:500;line-height:var(--leading-body);margin-bottom:24px}.project-dialog-description{color:var(--muted);font-size:var(--text-body);line-height:1.8}.project-dialog-description p+p{margin-top:20px}.project-diagram{width:calc(100% - 56px);height:calc(100% - 56px);position:absolute;inset:28px}@media (width<=780px){.project-featured .work-visual{min-height:0}}@media (width<=520px){.project-dialog{width:calc(100% - 24px);max-height:calc(100dvh - 32px)}.project-dialog-header{gap:16px;padding:20px 22px}.project-dialog-body{padding:24px 22px 28px}.project-dialog-subtitle{font-size:var(--text-body)}}
