@import"https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=Noto+Sans+JP:wght@400;500;600;700;800&display=swap";:root{font-family:Arial,Noto Sans JP,sans-serif;color:#161616;background:#fff;font-synthesis:none;font-weight:400;--yellow:#f5ff00;--line:#c9c9c9;--gutter:5.2vw;--display:"Barlow Condensed","Arial Narrow",Impact,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:2px solid #161616;outline-offset:6px}::selection{background:var(--yellow);color:#111}h1,h2,h3,h4,p{margin:0}.skip-link{position:fixed;top:-80px;left:20px;padding:16px;background:var(--yellow);z-index:10}.skip-link:focus{top:12px}.header{height:100px;margin:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #161616}.logo{font-size:36px;font-weight:800;letter-spacing:-3px;display:flex;align-items:center;gap:8px}.logo span{font-size:22px;letter-spacing:0;transform:translateY(-6px)}nav{display:flex;gap:34px}nav a{font-size:13px;font-weight:700;position:relative;padding:10px 0}nav a:after{content:"";position:absolute;bottom:4px;left:0;width:100%;height:3px;background:var(--yellow);transform:scaleX(0);transform-origin:left;transition:transform .25s}nav a:hover:after{transform:scaleX(1)}.hero{padding:29px var(--gutter) 0;min-height:660px;display:flex;flex-direction:column}.hero-eyebrow{display:flex;justify-content:space-between;font-size:11px;letter-spacing:1.3px;font-weight:600}.hero-type{padding-top:68px;padding-bottom:46px}h1{font-family:var(--display);font-size:clamp(70px,10.4vw,180px);font-weight:700;line-height:.94;letter-spacing:-.025em}h1>span{display:block;white-space:nowrap}.second-line{margin-top:8px;display:flex!important;align-items:center;gap:.13em}h1 i{font-style:normal;color:#fff;-webkit-text-stroke:1.5px #161616;font-weight:600}.hero-bottom{display:flex;align-items:flex-end;justify-content:space-between;padding-bottom:67px}.hero-name{font-size:21px;font-weight:600;letter-spacing:.12em}.hero-name>span{display:block;font-size:10px;font-weight:400;letter-spacing:.7px;margin-top:15px}.scroll-link{display:flex;align-items:center;gap:29px;font-size:10px;letter-spacing:1px}.scroll-link span{font-size:28px;transition:transform .3s}.scroll-link:hover span{transform:translateY(6px)}.section{padding:105px var(--gutter);border-top:1px solid #161616}.section-heading{display:flex;align-items:baseline;gap:22px}.section-index{font-size:12px;font-weight:500}.section-heading h2{font-family:var(--display);font-weight:600;font-size:64px;letter-spacing:-1px;line-height:1}.about{display:grid;grid-template-columns:1fr 1.65fr;gap:45px}.about-name{display:flex;align-items:baseline;gap:26px;margin:5px 0 35px}.about-name h3{font-size:25px;letter-spacing:.1em;font-weight:600}.about-name>span{font-size:11px;letter-spacing:1px}.about-copy p{font-size:15px;line-height:2.3;margin-top:22px}.services{padding-top:76px}.service-list{margin-top:49px}.service-row{display:grid;grid-template-columns:100px 1.35fr 1fr;gap:30px;align-items:center;border-top:1px solid var(--line);padding:36px 0}.service-row:last-child{border-bottom:1px solid var(--line)}.service-number{font-family:var(--display);font-weight:600;font-size:68px;line-height:1;color:#161616}.service-row h3{font-family:var(--display);font-size:36px;line-height:1.1;font-weight:600}.service-jp{display:block;font-size:13px;margin-top:13px}.service-row p{font-size:14px;line-height:2.1;max-width:370px}.service-row:hover .service-number{transform:translate(5px)}.service-number{transition:transform .3s}.works{background:#f7f7f7}.works-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:50px}.works-heading>p{font-size:15px;letter-spacing:.12em}.graphic-heading{display:flex;justify-content:space-between;align-items:center;margin:50px 0 25px}.graphic-heading>span{font-size:11px;letter-spacing:1px}.works-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px 28px}.work-visual{aspect-ratio:4/3;overflow:hidden}.work-visual img{width:100%;height:100%;object-fit:cover;display:block}.placeholder{height:100%;display:flex;align-items:center;justify-content:center;position:relative;flex-direction:column;transition:transform .5s}.work-item:hover .placeholder{transform:scale(1.025)}.yellow{background:var(--yellow)}.white{background:#fff;border:1px solid #ddd}.black{background:#191919;color:var(--yellow)}.grid{background-color:var(--yellow);background-image:linear-gradient(#1112 1px,transparent 1px),linear-gradient(90deg,#1112 1px,transparent 1px);background-size:25% 33.333%}.placeholder-top{position:absolute;top:22px;left:25px;font-size:9px;letter-spacing:1px}.placeholder-letter{font-family:var(--display);font-size:clamp(65px,10vw,140px);font-weight:700;line-height:1;white-space:pre-line;letter-spacing:-.03em}.white .placeholder-letter{font-family:Noto Sans JP,sans-serif;font-weight:800;font-size:clamp(35px,4.5vw,70px);line-height:1.25;letter-spacing:-.06em;transform:rotate(-5deg)}.grid .placeholder-letter{font-size:150px}.placeholder-sub{font-size:11px;letter-spacing:2px;margin-top:15px}.placeholder-note{position:absolute;bottom:18px;right:20px;font-size:9px;letter-spacing:1px}.work-caption{display:flex;gap:17px;margin-top:19px}.work-index{font-size:11px;margin-top:4px}.work-caption h4{font-size:15px;line-height:1.5;font-weight:600}.work-caption p{font-size:9px;line-height:1.7;letter-spacing:.3px;margin-top:7px}.contact{display:grid;grid-template-columns:1fr 1.65fr;gap:45px;padding-top:100px;padding-bottom:125px}.contact-content>p{font-size:14px;margin:9px 0 28px}.email-link{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #161616;padding-bottom:17px;gap:15px;font-size:clamp(22px,3vw,46px);letter-spacing:-1px}.email-arrow{font-size:40px;transition:transform .25s}.email-link:hover .email-arrow{transform:translate(4px,-4px)}.footer{position:relative;background:var(--yellow);padding:64px var(--gutter) 25px;isolation:isolate}.footer:before{content:"";position:absolute;background:var(--yellow);inset:-28px 0 auto;height:60px;clip-path:polygon(0 45%,100% 0,100% 100%,0 100%);z-index:-1}.footer-top,.footer-bottom{display:flex;justify-content:space-between;align-items:center}.footer-brand{font-size:35px;font-weight:800;letter-spacing:-2px;display:flex;align-items:center;gap:26px}.footer-brand span{font-size:12px;letter-spacing:1px;font-weight:500}.back-top{font-size:11px;display:flex;align-items:center;gap:30px}.back-top span{font-size:25px}.footer-bottom{border-top:1px solid #161616;margin-top:50px;padding-top:22px;font-size:10px;letter-spacing:.5px}@media(min-width:1600px){:root{--gutter:max(5.2vw, calc((100vw - 1500px)/2) )}.hero{min-height:790px}.hero-type{padding-top:85px}}@media(max-width:1000px){.about,.contact{grid-template-columns:1fr 1.7fr;gap:20px}.section-heading h2{font-size:52px}.section-heading{gap:15px}.service-row{grid-template-columns:65px 1.2fr 1fr;gap:22px}.service-row h3{font-size:29px}.service-number{font-size:58px}.about-name{display:block}.about-name>span{display:block;margin-top:12px}.hero{min-height:600px}.hero-type{padding-top:90px}.hero-bottom{padding-bottom:70px}.hero-name>span{max-width:300px;line-height:1.8}}@media(max-width:640px){:root{--gutter:6vw}html{scroll-padding-top:25px}.header{height:83px;align-items:center}.logo{font-size:29px}.logo span{font-size:17px;transform:translateY(-4px)}nav{gap:13px}nav a{font-size:10px}.hero{padding-top:22px;min-height:560px}.hero-eyebrow{font-size:9px;letter-spacing:.6px}.hero-eyebrow>span:last-child{display:none}.hero-type{padding:88px 0 44px}h1{font-size:10.25vw;letter-spacing:-.03em}.second-line{margin-top:10px}h1 i{-webkit-text-stroke:1px #161616}.hero-bottom{align-items:flex-start;flex-direction:column;gap:37px;padding-bottom:36px}.hero-name{font-size:19px}.hero-name>span{font-size:9px;max-width:280px;margin-top:12px}.scroll-link{font-size:9px;align-self:flex-end;gap:18px}.section{padding-top:62px;padding-bottom:65px}.about,.contact{display:block}.section-heading h2{font-size:52px}.section-index{font-size:11px}.about-content{margin-top:38px}.about-name{display:flex;gap:18px;align-items:center;margin-bottom:25px}.about-name h3{font-size:21px}.about-name>span{font-size:9px;margin:0}.about-copy p{font-size:14px;line-height:2.2}.about-copy br{display:none}.service-list{margin-top:33px}.service-row{grid-template-columns:51px 1fr;gap:14px 20px;padding:27px 0;align-items:start}.service-number{font-size:51px;grid-row:span 2}.service-row h3{font-size:29px}.service-jp{font-size:12px;margin-top:8px}.service-row p{grid-column:2;font-size:13px;line-height:2}.works-heading{margin-bottom:34px;align-items:flex-end}.works-heading>p{font-size:12px;letter-spacing:0}.graphic-heading{margin-top:35px}.graphic-heading>span{font-size:10px}.works-grid{grid-template-columns:1fr;gap:32px}.placeholder-letter{font-size:100px}.white .placeholder-letter{font-size:48px}.grid .placeholder-letter{font-size:140px}.work-caption h4{font-size:14px}.work-caption p{font-size:9px}.contact{padding-bottom:95px}.contact-content{margin-top:35px}.contact-content>p{font-size:13px;line-height:2}.email-link{font-size:clamp(21px,6vw,36px);letter-spacing:-.6px}.email-arrow{font-size:30px}.footer{padding-top:42px}.footer-brand{display:block;font-size:32px}.footer-brand span{display:block;margin-top:12px;font-size:11px}.back-top{gap:15px;font-size:10px}.footer-bottom{margin-top:35px;font-size:9px;gap:15px}.footer-bottom>span:last-child{font-size:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}.hero{min-height:730px}.hero-type{position:relative;padding-top:82px}.hero-bottom{padding-bottom:105px}.growing-plus{position:absolute;left:76%;top:71%;width:100px;height:86px}.plus{position:absolute;width:23px;height:23px;opacity:0;transform:translate(0);transition:transform .85s cubic-bezier(.22,1,.36,1),opacity .65s}.plus:before,.plus:after{content:"";position:absolute;background:var(--yellow)}.plus:before{top:9px;left:0;width:23px;height:5px}.plus:after{top:0;left:9px;width:5px;height:23px}.plus-0{opacity:1}.phase-1 .plus-1{opacity:1;transform:translate(30px,7px)}.phase-2 .plus-0{transform:translate(-5px,3px)}.phase-2 .plus-1{opacity:1;transform:translate(30px,7px)}.phase-2 .plus-2{opacity:1;transform:translate(60px,36px)}.phase-3 .plus-0{transform:translate(5px,-5px)}.phase-3 .plus-1{opacity:1;transform:translate(35px,25px)}.phase-3 .plus-2{transform:translate(65px,40px)}.about{position:relative;padding-top:116px;padding-bottom:153px}.about-signature{position:absolute;left:calc(var(--gutter) + 42px);bottom:52px;display:grid;grid-template-columns:13px auto;align-items:center;gap:9px 13px;font-family:var(--display);font-size:20px;letter-spacing:1.7px;transform:rotate(-90deg);transform-origin:0 50%}.signature-mark{width:11px;height:11px;background:var(--yellow)}.signature-jp{grid-column:2;font-family:Noto Sans JP,sans-serif;font-size:11px;letter-spacing:3px}.services{padding-top:95px;padding-bottom:115px}.service-row{position:relative;padding-top:43px;padding-bottom:43px}.service-row:before{content:"";position:absolute;top:-1px;left:0;height:2px;width:75px;background:var(--yellow);opacity:0}.service-row h3{transition:transform .35s ease}@keyframes service-glint{0%{opacity:0;transform:translate(0)}25%,65%{opacity:1}to{opacity:0;transform:translate(55px)}}.works{padding-top:105px;padding-bottom:130px}.works-heading{margin-bottom:65px}.system-work{display:grid;align-items:center;border-top:1px solid #161616;border-bottom:1px solid #161616;grid-template-columns:1fr auto;column-gap:20px;row-gap:14px;padding:30px 0}.system-work h3,.graphic-heading h3{font-size:15px;font-weight:600;letter-spacing:.3px}.system-work-meta{grid-column:1;font-size:11px;letter-spacing:.7px}.system-work-link{grid-column:2;grid-row:1 / 3;display:flex;align-items:center;gap:24px;font-size:11px;letter-spacing:.7px}.system-work-link>span{font-size:24px;transition:transform .3s ease}.graphic-heading{margin-top:76px;margin-bottom:27px}.works-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:85px 26px;align-items:start}.work-item{grid-column:span 5;min-width:0}.work-item:nth-child(2){grid-column:9 / 13;margin-top:145px}.work-item:nth-child(3){grid-column:2 / 7}.work-item:nth-child(4){grid-column:9 / 13;margin-top:102px}.work-featured{grid-column:1 / 8}.work-overline{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;height:36px;font-size:10px;letter-spacing:1px}.work-featured .work-overline{border-color:#161616}.work-plus{font-size:22px;line-height:1;opacity:0;transform:translate(-5px);transition:opacity .25s,transform .4s}.work-visual{transition:transform .45s cubic-bezier(.22,1,.36,1)}.work-featured .work-visual{aspect-ratio:1.12}.work-featured .placeholder-letter{font-size:clamp(110px,15vw,210px)}.work-item:nth-child(2) .work-visual{aspect-ratio:.86}.work-item:nth-child(3) .work-visual{aspect-ratio:1.28}.work-item:nth-child(4) .work-visual{aspect-ratio:1.03}.work-item:nth-child(2) .placeholder-letter{font-size:clamp(30px,3.3vw,52px)}.work-caption h4{transition:transform .35s ease}.work-caption p{font-size:10px}.work-featured .work-caption h4{font-size:19px}.contact{padding-top:120px;padding-bottom:165px}.footer:before{inset:-45px 0 auto;height:60px;clip-path:polygon(0 72%,100% 0,100% 100%,0 100%)}@media(hover:hover)and (prefers-reduced-motion:no-preference){.service-row:hover:before{animation:service-glint .9s ease both}.service-row:hover h3{transform:translate(3px)}.service-row:hover .service-number{transform:translate(-3px)}.work-item:hover .work-visual{transform:translate(3px,-4px)}.work-item:hover .placeholder{transform:none}.work-item:hover .work-caption h4{transform:translate(4px)}.work-item:hover .work-plus{opacity:1;transform:translate(0)}.system-work:hover .system-work-link>span{transform:translate(5px)}}.system-work:focus-visible .system-work-link{text-decoration:underline;text-underline-offset:5px}@media(max-width:1000px){.hero{min-height:650px}.works-grid{column-gap:20px}.work-item:nth-child(2){grid-column:8 / 13;margin-top:125px}.work-featured{grid-column:1 / 8}.work-item:nth-child(4){grid-column:8 / 13}}@media(max-width:640px){.hero{min-height:620px}.hero-type{padding-top:97px;padding-bottom:67px}.hero-bottom{padding-bottom:78px;gap:51px}.growing-plus{left:74%;top:70%;width:80px;height:70px;transform:scale(.75);transform-origin:top left}.about{padding-top:68px;padding-bottom:139px}.about-signature{left:auto;right:var(--gutter);bottom:47px;transform:none;font-size:18px}.signature-jp{padding-left:27px;font-size:10px}.services{padding-top:68px;padding-bottom:80px}.service-row{padding-top:30px;padding-bottom:30px}.works{padding-top:70px;padding-bottom:90px}.works-heading{margin-bottom:40px}.system-work{grid-template-columns:1fr;gap:12px;padding:26px 0}.system-work h3,.graphic-heading h3{font-size:13px}.system-work-meta{grid-column:1;grid-row:2;font-size:10px;line-height:1.8;letter-spacing:.3px}.system-work-link{grid-column:1;grid-row:3;justify-content:flex-end;margin-top:8px;font-size:11px}.graphic-heading{margin-top:51px}.works-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:43px 8px}.work-featured{grid-column:1 / -1}.work-item:nth-child(2){grid-column:4 / 13;margin-top:0}.work-item:nth-child(3){grid-column:1 / 11}.work-item:nth-child(4){grid-column:4 / 13;margin-top:0}.work-featured .work-visual{aspect-ratio:1.1}.work-featured .placeholder-letter{font-size:125px}.work-item:nth-child(2) .placeholder-letter{font-size:36px}.work-featured .work-caption h4{font-size:16px}.work-caption{gap:10px}.work-caption p{font-size:10px}.placeholder-top{font-size:8px;left:15px}.placeholder-note{font-size:8px;right:12px}.contact{padding-top:75px;padding-bottom:130px}.footer:before{inset:-30px 0 auto;height:40px}}@media(prefers-reduced-motion:reduce){.plus{transition:none}.work-item:hover .placeholder,.service-row:hover .service-number{transform:none}}@media(max-width:360px){.header{height:105px;flex-wrap:wrap;padding-top:12px}.header nav{width:100%;justify-content:space-between;gap:8px}}.code-hero{--mono: "Cascadia Code",Consolas,monospace;min-height:0;padding-top:25px;overflow:clip}.code-hero .hero-eyebrow{font:11px/1.5 var(--mono);letter-spacing:0}.hero-composition{position:relative;padding-top:60px;padding-bottom:65px}.hero-kicker{display:flex;justify-content:space-between;font:10px/1.5 var(--mono);margin-bottom:25px}.code-hero h1{position:relative;z-index:2;font-size:clamp(65px,10.7vw,170px);letter-spacing:-.035em;pointer-events:none}.code-hero .second-line{margin-top:5px}.title-dot{color:var(--yellow);font-family:var(--mono);font-size:.75em;line-height:.6;margin-left:.08em}.hero-story{padding:45px 0 0 5px;width:43%}.hero-story>p{font-size:clamp(22px,2.5vw,36px);line-height:1.7;font-weight:600;letter-spacing:.08em}.hero-story .hero-name{margin-top:36px;font-size:16px}.hero-story .hero-name>span{font-size:12px;letter-spacing:.04em;line-height:2;font-weight:400;margin-top:13px}.profile-stage{position:absolute;width:47%;right:0;top:255px;z-index:3;transform:rotate(-3deg)}.code-sheet{background:var(--yellow);color:#111;border:1px solid #111;box-shadow:10px 12px #161616;transition:transform .5s}.editor-bar{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-bottom:1px solid #111;font:12px/1.5 var(--mono)}.editor-bar>span:last-child{display:flex;align-items:center;gap:25px}.editor-bar b{font-size:23px;line-height:1;font-weight:400}.editor-body{min-height:310px;padding:22px 18px}.source-line{display:flex;gap:15px;min-height:25px;font:clamp(10px,1.03vw,15px)/25px var(--mono)}.source-line code{font:inherit;white-space:pre}.line-number{color:#585b00;font-size:10px;flex:0 0 18px}.comment-line code{color:#5c5e00}.type-caret{display:inline-block;height:1.15em;width:7px;background:#111;vertical-align:-.15em}.editor-actions{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #111;padding-left:20px;font:10px/1.5 var(--mono)}.editor-actions button{font:600 13px/1.5 var(--mono);border:0;border-left:1px solid #111;border-radius:0;padding:15px 22px;color:var(--yellow);background:#111;cursor:pointer;min-height:48px}.editor-actions button:hover{color:#111;background:#fff}.editor-actions button:focus-visible{outline:3px solid #111;outline-offset:5px}.sheet-caption{display:flex;justify-content:space-between;margin-top:25px;font:9px/1.5 var(--mono);letter-spacing:.03em}.profile-output{animation:output-in .5s ease both}.output-label{font:11px/1.5 var(--mono)}.profile-output>p{font-size:clamp(36px,4.8vw,70px);font-weight:800;line-height:1.2;letter-spacing:-.06em;margin:15px 0 20px}.profile-output>p>span{padding-left:35px}.profile-output>div{font:11px/1.9 var(--mono)}.is-running .code-sheet{transform:rotate(3deg)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.code-hero .hero-bottom{margin-top:55px;padding:22px 0 30px;border-top:1px solid #aaa;align-items:center}.hero-location{font:10px/1.5 var(--mono)}@keyframes output-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media(min-width:1600px){.profile-stage{top:300px}}@media(max-width:1000px){.profile-stage{top:215px;width:50%}.editor-body{min-height:285px;padding:18px 12px}.source-line{font-size:10px;gap:8px}.hero-story{padding-top:40px}.hero-composition{padding-bottom:90px}}@media(max-width:700px){.hero-composition{padding-top:39px;padding-bottom:18px;display:flex;flex-direction:column}.hero-kicker{font-size:9px;margin-bottom:23px}.code-hero h1{font-size:10.6vw}.hero-story{width:100%;padding:27px 0 0;display:flex;justify-content:space-between;gap:15px}.hero-story>p{font-size:19px}.hero-story .hero-name{margin-top:3px;font-size:13px}.hero-story .hero-name>span{font-size:10px;margin-top:8px}.profile-stage{position:relative;width:calc(100% - 14px);top:auto;right:auto;margin:43px 7px 0;transform:rotate(-2deg)}.code-sheet{box-shadow:6px 7px #161616}.editor-bar{padding:10px 14px;font-size:11px}.editor-body{min-height:280px;padding:17px 12px}.source-line{font-size:clamp(9px,2.5vw,14px);gap:10px;line-height:24px;min-height:24px}.profile-output>p{font-size:53px}.editor-actions{padding-left:13px;font-size:9px}.editor-actions button{padding:12px 19px}.sheet-caption{font-size:8px;margin-top:19px}.code-hero .hero-bottom{margin-top:26px;padding-bottom:24px;flex-direction:row;gap:15px}.hero-location{font-size:8px;max-width:140px}.code-hero .scroll-link{font-size:8px;align-self:auto;gap:10px}}@media(prefers-reduced-motion:reduce){.profile-output{animation:none}.code-sheet{transition:none}}:root{--code-font: "Cascadia Code", Consolas, monospace}.header nav{font-family:var(--code-font)}.workspace-hero{margin:20px 20px 0;padding:0 calc(var(--gutter) - 20px);background:var(--yellow);border:1px solid #161616;position:relative}.workspace-tab{margin:0 calc(20px - var(--gutter));padding:16px calc(var(--gutter) - 20px);background:#161616;color:#fff;display:flex;justify-content:space-between;align-items:center;font:12px/1.5 var(--code-font)}.workspace-tab strong{color:var(--yellow);font-weight:400}.workspace-tab>span:last-child{display:flex;align-items:center;gap:25px}.workspace-tab>span:last-child>span{color:var(--yellow);font-size:22px;line-height:1}.workspace-hero .hero-eyebrow{padding-top:22px}.workspace-hero .hero-composition{padding-top:53px;padding-bottom:32px}.workspace-hero .hero-kicker{margin-bottom:25px}.workspace-hero h1{font-size:clamp(65px,10.5vw,170px)}.workspace-hero h1 i{color:transparent}.workspace-hero .title-dot{color:#161616}.workspace-hero .profile-stage{top:285px;width:44%;transform:none;border-left:1px solid #161616;padding-left:28px}.workspace-hero .code-sheet{border:0;box-shadow:none;background:transparent;transform:none}.workspace-hero .editor-bar{padding:0 0 14px;font-size:12px}.workspace-hero .editor-body{padding:20px 0 14px;min-height:285px}.workspace-hero .source-line{font-size:clamp(10px,1.02vw,15px)}.workspace-hero .editor-actions{padding-left:0;border-bottom:1px solid #161616}.workspace-hero .editor-actions button{min-width:110px}.workspace-hero .sheet-caption{margin-top:14px}.workspace-hero .hero-story{padding-top:47px;padding-bottom:45px}.workspace-hero .hero-story>p{font-weight:500}.workspace-hero .hero-bottom{margin-top:95px;border-color:#161616}.workspace-output .profile-output{animation:output-in .45s ease both}.section{position:relative}.section:before{position:absolute;top:24px;left:var(--gutter);font:11px/1.5 var(--code-font);letter-spacing:.02em;color:#666}.about:before{content:"// 01 — about.md"}.services:before{content:"// 02 — services.ts"}.works:before{content:"// 03 — selected-works.json"}.contact:before{content:"// 04 — contact.send()"}.section-braces{font-family:var(--code-font);font-size:.54em;font-weight:400;color:#a0a0a0;letter-spacing:-.09em;margin-left:7px;vertical-align:.1em}.section-index,.service-number,.work-overline,.graphic-heading,.work-caption p,.system-work-meta,.system-work-link,.footer-bottom{font-family:var(--code-font)}.service-number{font-size:44px;letter-spacing:-.06em}.service-row h3:after{content:" /";color:#aaa;font-family:var(--code-font);font-size:.6em}.works{background-color:#fafafa;background-image:linear-gradient(to right,transparent calc(100% - 1px),#16161608 1px);background-size:25% 100%}.work-overline{height:40px}.work-featured .work-overline>span:first-child:before{content:"* "}.about-signature{font-family:var(--code-font);font-size:16px}.email-link{font-family:var(--code-font);font-size:clamp(20px,2.8vw,42px)}@media(hover:hover)and (pointer:fine){html,body,body *{cursor:url(/cursor-arrow.svg) 3 2,auto}a,a *,button,button *{cursor:url(/cursor-link.svg) 3 2,pointer}input,textarea,[contenteditable=true]{cursor:text}}@media(min-width:1600px){.workspace-hero .profile-stage{top:330px}}@media(min-width:701px)and (max-width:1000px){.workspace-hero .profile-stage{top:220px;width:48%;padding-left:18px}.workspace-hero .source-line{font-size:9px;gap:7px}.workspace-hero .hero-bottom{margin-top:110px}}@media(max-width:700px){.workspace-hero{margin:12px 10px 0;padding:0 18px}.workspace-tab{margin:0 -18px;padding:13px 18px;font-size:10px}.workspace-hero .hero-eyebrow{font-size:9px;padding-top:18px}.workspace-hero .hero-composition{padding-top:35px;padding-bottom:0}.workspace-hero .hero-kicker{font-size:8px;gap:15px}.workspace-hero .hero-kicker>span:last-child{display:none}.workspace-hero h1{font-size:10vw}.workspace-hero .hero-story{padding-top:24px;padding-bottom:0}.workspace-hero .hero-story>p{font-size:17px}.workspace-hero .hero-name{font-size:12px}.workspace-hero .profile-stage{width:100%;top:auto;margin:30px 0 0;padding:0;border-left:0}.workspace-hero .editor-bar{padding-top:13px;border-top:1px solid #161616}.workspace-hero .editor-body{min-height:274px;padding-top:17px}.workspace-hero .source-line{font-size:clamp(8px,2.45vw,14px);gap:8px}.workspace-hero .sheet-caption{font-size:8px}.workspace-hero .hero-bottom{margin-top:30px}.section:before{top:20px;font-size:10px}.section-braces{font-size:.42em}.service-number{font-size:35px}.email-link{font-size:clamp(17px,5.5vw,30px)}}@media(max-width:450px){.workspace-hero .hero-story{display:block}.workspace-hero .hero-name{margin-top:20px}}:root{background:#eeede7;--paper: #eeede7}body{background:var(--paper)}.header{height:88px}.portrait-hero.workspace-hero{background:transparent;border:0;margin:0;padding:45px var(--gutter) 0;overflow:clip}.portrait-hero .hero-composition{padding:0;display:block}.portrait-hero .profile-stage{position:relative;top:auto;right:auto;width:100%;margin:0;padding-left:30px;border-left:1px solid #161616;transform:none}.portrait-hero .code-sheet{background:transparent}.portrait-hero .editor-bar{padding:0 0 17px;font-size:12px;border-top:0}.portrait-hero .editor-bar b{background:var(--yellow);padding:2px 3px}.portrait-hero .editor-body{padding:32px 0 38px;min-height:420px;display:grid;grid-template-columns:1.5fr 1fr;gap:35px;align-items:start}.portrait-hero .source-code{grid-column:1;grid-row:1;padding:15px 0}.portrait-hero .profile-output{grid-column:2;grid-row:1;padding:25px;margin:13px 0 0;background:transparent;transform:none;position:relative;isolation:isolate;animation:none}.yellow-fragments{position:absolute;inset:0;z-index:-1;pointer-events:none}.yellow-fragments>span{position:absolute;left:calc(var(--column) * 100% / 6);top:calc(var(--row) * 25%);width:calc(100% / 6 + .5px);height:calc(25% + .5px);background:var(--yellow)}.is-shattering>span{animation:yellow-fall 1.75s cubic-bezier(.35,.05,.55,1) var(--delay) both}@keyframes yellow-fall{0%,8%{transform:translate(0) rotate(0);opacity:1}24%{transform:translate(calc(var(--fall-x) * .2),-4px) rotate(calc(var(--turn) * .2));opacity:1}52%{transform:translate(var(--fall-x),var(--fall-y)) rotate(var(--turn));opacity:0}65%{transform:translateY(12px) rotate(0);opacity:0}to{transform:translate(0) rotate(0);opacity:1}}.portrait-hero .profile-output>p>span{background:transparent}.yellow-powder{position:absolute;left:-85px;top:-85px;z-index:-1;pointer-events:none}.portrait-hero .profile-output{overflow:visible}.portrait-hero .profile-output>p{position:relative}.portrait-hero .profile-output.has-shattered>p{animation:name-tremor .52s ease-out both}@keyframes name-tremor{0%,to{transform:translate(0) rotate(0)}18%{transform:translate(-2px,1px) rotate(-.8deg)}34%{transform:translate(2px,-1px) rotate(.7deg)}51%{transform:translate(-1.5px,1px) rotate(-.4deg)}70%{transform:translate(1px) rotate(.2deg)}}.portrait-hero .output-label{display:block;min-height:36px}.portrait-hero .editor-actions button:disabled{opacity:.65}.portrait-hero .output-label{font-size:12px}.portrait-hero .profile-output>p{font-family:Noto Sans JP,sans-serif;font-size:clamp(30px,3.7vw,58px);font-weight:800;line-height:1.3;letter-spacing:-.05em;margin:22px 0 29px}.portrait-hero .profile-output>p>span{display:inline-block;color:#161616;background:var(--yellow);font-family:Arial,sans-serif;font-size:.75em;line-height:.95;padding:0 .12em;margin-left:.32em;vertical-align:.06em}.portrait-hero .profile-output>div{font-size:12px;line-height:1.9}.portrait-hero .editor-actions{border-bottom:0;background:var(--yellow);padding-left:15px}.portrait-hero .editor-actions button{min-width:180px;padding:17px 24px}.portrait-hero .editor-actions button:hover{background:var(--yellow)}.portrait-hero .sheet-caption{padding-bottom:0;font-size:10px}.portrait-hero .hero-bottom{margin-top:38px;border-top:0;padding:0 0 35px 30px}.portrait-hero .source-line{font-size:clamp(10px,1.2vw,18px);line-height:32px;min-height:32px}.portrait-hero .line-number{color:#777}.portrait-hero .comment-line code{color:#666}.works{background-color:#e7e6df}.white{background:#f7f6f0}.section{border-top-color:#b7b5ae}.section-heading h2{position:relative;isolation:isolate}.section-heading h2:before{content:"";position:absolute;inset:55% -9px 1% -5px;background:var(--yellow);z-index:-1;transform:scaleX(0);transform-origin:left;transition:transform .8s cubic-bezier(.2,.7,.2,1) .1s}.section-heading.reveal-visible h2:before{transform:scaleX(1)}.graphic-heading{border-left:5px solid var(--yellow);padding-left:14px}.system-work{background:var(--yellow);padding-left:18px;padding-right:18px}.contact .email-arrow{background:var(--yellow);padding:0 8px}.reveal-pending{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .9s cubic-bezier(.2,.7,.2,1)}.reveal-pending.reveal-visible{opacity:1;transform:translateY(0)}.about-signature.reveal-pending{transform:rotate(-90deg) translate(-15px)}.about-signature.reveal-visible{transform:rotate(-90deg)}@keyframes code-caret{0%,45%{opacity:1}46%,to{opacity:0}}.type-caret{animation:code-caret 1s steps(1) infinite}.editor-bar b{animation:plus-turn 8s ease-in-out infinite}@keyframes plus-turn{0%,75%,to{transform:rotate(0)}85%{transform:rotate(90deg)}}@media(hover:hover)and (pointer:fine){html,body,body *{cursor:url(/cursor-circle.svg) 14 14,auto}a,a *,button,button *{cursor:url(/cursor-circle-link.svg) 18 18,pointer}input,textarea,[contenteditable=true]{cursor:text}}@media(max-width:700px){.portrait-hero.workspace-hero{padding-top:28px}.portrait-hero .profile-stage{padding-left:15px}.portrait-hero .editor-body{padding:12px 0 28px;min-height:340px;grid-template-columns:1fr;gap:18px}.portrait-hero .profile-output{grid-column:1;grid-row:2;padding:22px;margin:0 5px 5px 0}.portrait-hero .profile-output>p{font-size:34px;margin-top:16px;margin-bottom:18px}.about-signature.reveal-pending{transform:translateY(15px)}.about-signature.reveal-visible{transform:none}.portrait-hero .editor-bar{font-size:11px}.portrait-hero .profile-output>div{font-size:10px}.portrait-hero .editor-actions button{min-width:125px;padding:15px}.portrait-hero .sheet-caption{font-size:8px}.portrait-hero .source-line{font-size:clamp(8px,2.45vw,13px);line-height:27px;min-height:27px}.portrait-hero .hero-bottom{padding-left:15px}}@media(max-width:360px){.header{height:105px}}@media(prefers-reduced-motion:reduce){.portrait-hero .profile-output{animation:none}}@media(prefers-reduced-motion:reduce){.reveal-pending{opacity:1;transform:none;transition:none}.section-heading h2:before{transform:scaleX(1);transition:none}.type-caret,.editor-bar b{animation:none}.is-shattering>span{animation:none}.portrait-hero .profile-output.has-shattered>p{animation:none}}.work-caption h4,.gallery-header h3{white-space:pre-line}.work-image-button{position:relative;display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;text-align:left}.work-image-button .work-visual{display:flex;width:100%;background:#deddd5;padding:18px;align-items:center;justify-content:center}.work-image-button .work-visual img{width:100%;height:100%;object-fit:contain}.work-featured .work-image-button .work-visual{aspect-ratio:1.16;padding:24px;background:#dad9d1}.work-item:nth-child(2) .work-image-button .work-visual,.work-item:nth-child(3) .work-image-button .work-visual,.work-item:nth-child(4) .work-image-button .work-visual{aspect-ratio:.77}.work-open-hint{position:absolute;bottom:0;right:0;background:var(--yellow);color:#111;padding:10px 13px;font:10px/1.5 var(--code-font);display:flex;align-items:center;gap:15px}.work-open-hint>span{font-size:20px;line-height:1}.work-image-button:focus-visible{outline:2px solid #161616;outline-offset:5px}.work-dialog{padding:0;border:1px solid #161616;background:var(--paper);color:#161616;width:min(1150px,94vw);max-width:94vw;max-height:94dvh;overflow-y:auto;overscroll-behavior:contain}.work-dialog::backdrop{background:#161616b8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.gallery-shell{padding:20px 25px}.gallery-header{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #aaa;padding-bottom:14px;position:sticky;top:0;z-index:2;background:var(--paper)}.gallery-header h3{font-size:14px;line-height:1.5}.gallery-header button{padding:12px;background:#161616;color:var(--yellow);border:0;font:11px/1.5 var(--code-font);white-space:nowrap;min-height:44px}.gallery-image{height:65dvh;padding:20px 0}.gallery-project-description{margin:18px 0 0;font-size:14px;line-height:2}.gallery-image img{display:block;width:100%;height:100%;object-fit:contain}.gallery-controls{display:flex;align-items:center;gap:18px;border-top:1px solid #aaa;padding-top:10px;font:11px/1.7 var(--code-font)}.gallery-controls>span:first-child{white-space:nowrap}.gallery-description{flex:1}.gallery-controls>div{display:flex;gap:8px;margin-left:auto}.gallery-controls button{font-size:21px;width:44px;height:44px;background:var(--yellow);color:#111;border:1px solid #111}.gallery-thumbs{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:9px;padding-top:16px}.gallery-thumbs button{padding:4px;border:1px solid transparent;background:transparent;color:inherit}.gallery-thumbs button[aria-pressed=true]{background:var(--yellow);border-color:#161616}.gallery-thumbs img{width:100%;aspect-ratio:1.414;object-fit:contain;display:block}.gallery-thumbs span{font:9px/1.8 var(--code-font)}.gallery-shell button:focus-visible{outline:2px solid #161616;outline-offset:3px}@media(max-width:700px){.gallery-shell{padding:13px}.gallery-header{gap:10px}.gallery-header h3{font-size:11px}.gallery-image{height:57dvh}.gallery-description{display:none}.gallery-thumbs{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.work-image-button .work-visual,.work-featured .work-image-button .work-visual{padding:14px}}body:after,.work-dialog:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:1000;background-image:url(/grain.svg);background-size:145px 145px;opacity:.23;mix-blend-mode:multiply}.development-page{padding:37px var(--gutter) 85px}.development-meta{display:flex;justify-content:space-between;font:11px/1.7 var(--code-font)}.development-meta a{text-underline-offset:5px}.development-meta a:hover{text-decoration:underline}.development-intro>h1{font:700 clamp(70px,10vw,145px)/.94 var(--display);letter-spacing:-.025em;margin:65px 0}.development-intro>h1>span{color:transparent;background:var(--yellow);display:inline-block;width:.11em;height:.7em;line-height:1;padding:0;margin-left:.08em;vertical-align:.02em;overflow:hidden}.development-lead{display:grid;grid-template-columns:1fr 2fr;gap:35px;padding:35px 0 75px;border-top:1px solid #161616}.development-side-label{font:11px/1.7 var(--code-font);padding-top:8px}.development-lead h2{font-size:clamp(21px,2.4vw,34px);line-height:1.8;font-weight:600;letter-spacing:.05em}.development-lead p{font-size:15px;line-height:2.2;margin-top:28px;max-width:710px}.development-section{border-top:1px solid #aaa89e;padding:55px 0 75px}.development-section-heading{display:flex;align-items:baseline;gap:22px;margin-bottom:40px}.development-section-heading>span{font:11px/1.5 var(--code-font)}.development-section-heading h2{font:600 clamp(42px,5vw,64px)/1 var(--display)}.development-section-heading>p{font-size:12px;margin-left:auto}.experience-row{display:grid;grid-template-columns:60px 1fr 1.4fr;gap:25px;padding:32px 0;border-top:1px solid #c6c4bb}.experience-index{font:13px/1.7 var(--code-font)}.experience-row h3{font-size:20px;font-weight:600;line-height:1.8}.experience-row p{font-size:14px;line-height:2.2}.experience-row ul{display:flex;gap:10px 20px;flex-wrap:wrap;list-style:none;margin:22px 0 0;padding:0}.experience-row li{font-size:11px;padding-left:12px;position:relative}.experience-row li:before{content:"";position:absolute;width:5px;height:5px;background:#161616;top:.5em;left:0}.skill-group{display:grid;grid-template-columns:1fr 2fr;gap:35px;padding:29px 0;border-top:1px solid #c6c4bb}.skill-group>div>span{font:10px/1.7 var(--code-font)}.skill-group h3{font-size:15px;font-weight:500;margin-top:11px}.skill-group ul{display:flex;flex-wrap:wrap;align-content:flex-start;gap:12px 22px;padding:0;margin:0;list-style:none}.skill-group li{font:16px/1.8 var(--code-font);border-bottom:2px solid var(--yellow);padding-bottom:2px}.current-work{display:grid;grid-template-columns:1fr 2fr auto;gap:35px;padding:34px 26px;background:var(--yellow);align-items:start}.current-date{font:13px/1.8 var(--code-font)}.current-work h3{font-size:clamp(21px,2.5vw,35px);letter-spacing:-.03em;font-weight:500}.current-work p{font-size:14px;line-height:2;margin-top:18px}.current-plus{font:38px/1 var(--code-font)}.development-return{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #161616;padding-top:25px;font:11px/1.8 var(--code-font)}.development-return a:hover{text-decoration:underline;text-underline-offset:5px}@media(max-width:700px){.development-page{padding-top:25px;padding-bottom:65px}.development-meta{font-size:9px}.development-intro>h1{font-size:12.5vw;margin:50px 0 40px}.development-lead{grid-template-columns:1fr;gap:20px;padding-bottom:50px}.development-lead h2{font-size:20px}.development-lead p{font-size:14px}.development-lead p br{display:none}.development-section{padding:40px 0 45px}.development-section-heading{flex-wrap:wrap;gap:12px}.development-section-heading>p{font-size:10px}.experience-row{grid-template-columns:30px 1fr;gap:12px;padding:25px 0}.experience-row>div{grid-column:2}.experience-row h3{font-size:17px}.experience-row p{font-size:13px}.skill-group{grid-template-columns:1fr;gap:22px}.skill-group li{font-size:14px}.current-work{grid-template-columns:1fr auto;gap:17px;padding:24px 20px}.current-work>div{grid-column:1 / -1;grid-row:2}.current-work p{font-size:13px}.current-plus{grid-column:2;grid-row:1;font-size:25px}.development-return{font-size:10px;flex-direction:column;gap:10px}}:root{--header-height: 88px}html{scroll-padding-top:calc(var(--header-height) + 24px)}.pinned-header{position:sticky;top:0;z-index:100;margin:0;padding:0 var(--gutter);background:var(--paper);border-bottom:1px solid #b7b5ae}.pinned-header nav a{isolation:isolate}.pinned-header nav a:before{content:"";position:absolute;inset:6px -6px;background:var(--yellow);z-index:-1;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}.pinned-header nav a[aria-current=location]:before{transform:scaleX(1)}.pinned-header nav a[aria-current=location]:after{transform:scaleX(0)}.reading-progress{position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--yellow);transform-origin:left;transform:scaleX(var(--scroll-progress, 0));pointer-events:none}.skip-link{z-index:101}@media(max-width:700px){.pinned-header{height:80px}.pinned-header nav{gap:13px}.pinned-header nav a{font-size:10px}.detail-header{height:110px;flex-wrap:wrap;padding-top:10px;padding-bottom:8px}.detail-header nav{width:100%;justify-content:space-between}}@media(max-width:360px){.pinned-header{height:105px;padding-top:10px;padding-bottom:6px;flex-wrap:wrap}.pinned-header nav{width:100%;justify-content:space-between}}@media(prefers-reduced-motion:reduce){.pinned-header nav a:before{transition:none}}
