:root{--paper:#f3f4f1;--ink:#1a1c1a;--ink-2:#4a4c48;--muted:#6f716d;--faint:#8a8c88;--rule:#cfd1cc;--rule-light:#e0e2dd;--grid:#e7e8e4;--accent:#ff5a1f;--stripe:repeating-linear-gradient(135deg, #e4e6e1 0 1px, transparent 1px 9px);--hatch:repeating-linear-gradient(45deg, var(--ink) 0 1px, transparent 1px 4px);--sans:var(--font-geist), var(--font-zen-kaku), sans-serif;--mono:var(--font-geist-mono), var(--font-zen-kaku), monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-height:100vh;font-family:var(--sans);color:var(--ink);background-color:var(--paper);-webkit-font-smoothing:antialiased;margin:0}body:not([data-grid=off]){background-image:linear-gradient(var(--grid) 1px, transparent 1px), linear-gradient(90deg, var(--grid) 1px, transparent 1px);background-size:24px 24px}a{color:var(--ink);text-decoration:none;transition:color .15s}a:hover{color:var(--accent)}button{font:inherit;color:inherit}img{max-width:100%;display:block}.mono{font-family:var(--mono);letter-spacing:.08em;font-weight:400}.faint{color:var(--faint)}.muted{color:var(--muted)}.accent{color:var(--accent)}.container{max-width:1200px;margin:0 auto;padding:0 40px}.nav{z-index:5;-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--ink);background:#f3f4f1eb;position:sticky;top:0}.nav-inner{height:52px;font:400 11px var(--mono);letter-spacing:.04em;align-items:center;gap:28px;display:flex}.nav-brand{letter-spacing:.08em;font-weight:500}.nav-links{flex:1;gap:18px;min-width:0;display:flex}.nav-links a{color:var(--muted);white-space:nowrap;border-bottom:1px solid #0000;padding:2px 0}.nav-links a:hover{color:var(--ink)}.nav-links a[aria-current=page]{color:var(--ink);border-bottom-color:var(--accent)}.lang-toggle{border:1px solid var(--ink);flex:none;display:flex}.lang-toggle button{font:500 10px var(--mono);letter-spacing:.08em;cursor:pointer;color:var(--ink);background:0 0;border:0;padding:5px 10px}.lang-toggle button+button{border-left:1px solid var(--ink)}.lang-toggle button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.resume-btn{background:var(--ink);white-space:nowrap;flex:none;padding:6px 12px;color:var(--paper)!important}.resume-btn:hover{background:var(--accent)}.hero{flex-direction:column;gap:56px;padding:64px 0 88px;display:flex}.hero-head{flex-direction:column;gap:20px;display:flex}.meta-row{font:400 11px var(--mono);letter-spacing:.08em;color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px;display:flex}.meta-row a{color:var(--muted)}.meta-row a:hover{color:var(--accent)}.meta-links{gap:20px;display:flex}.hero h1{letter-spacing:-.05em;margin:0;font-size:clamp(52px,8vw,112px);font-weight:300;line-height:.95}.lead{color:var(--ink-2);max-width:560px;margin:0;font-size:clamp(16px,1.6vw,19px);line-height:1.6}.stack-drawing{position:relative;container-type:inline-size}.stack-drawing svg{width:100%;height:auto;font-family:var(--mono);display:block;overflow:visible}.annot{flex-direction:column;gap:.5cqw;line-height:1.25;display:flex;position:absolute;left:62.14%}.annot-title{font:400 1.16cqw var(--mono)}.annot-text{color:#7a7c78;padding-left:2.14cqw;font-size:1.25cqw}.annot-list{border-top:1px solid var(--rule);margin:0;padding:0;list-style:none;display:none}.annot-list li{border-bottom:1px solid var(--rule);grid-template-columns:28px minmax(0,1fr);gap:4px 8px;padding:10px 0;display:grid}.annot-list .k{font:400 11px var(--mono);color:var(--faint);grid-row:span 2}.annot-list .ti{font:400 12px var(--mono);letter-spacing:.02em}.annot-list .tx{color:var(--muted);font-size:13px}.index{border-top:1px solid var(--ink);flex-direction:column;gap:24px;padding:40px 0 80px;display:flex}.index-head{font:400 11px var(--mono);letter-spacing:.08em;color:var(--muted);justify-content:space-between;display:flex}.sheet-grid{border-top:1px solid var(--ink);border-left:1px solid var(--ink);grid-template-columns:repeat(auto-fill,minmax(250px,1fr));display:grid}.sheet-card{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);background:var(--paper);flex-direction:column;gap:10px;min-height:170px;padding:22px 22px 26px;transition:background .15s;display:flex}.sheet-card:hover{color:var(--ink);background:#fff}.sheet-card .no{font:400 10.5px var(--mono);letter-spacing:.08em;color:var(--faint);justify-content:space-between;display:flex}.sheet-card .title{letter-spacing:-.03em;font-size:26px;font-weight:300}.sheet-card .sub{font:400 10.5px var(--mono);letter-spacing:.06em;color:var(--muted)}.sheet-card .preview{color:var(--muted);margin-top:auto;font-size:13.5px;line-height:1.55}.sheet{border-top:1px solid var(--ink);flex-wrap:wrap;gap:32px 56px;padding:56px 0 72px;display:flex}.sheet-label{flex-direction:column;flex:0 0 220px;gap:10px;display:flex}.sheet-label .no{font:400 11px var(--mono);letter-spacing:.08em;color:var(--faint)}.sheet-label h2{letter-spacing:-.03em;margin:0;font-size:34px;font-weight:300}.sheet-label .sub{font:400 11px var(--mono);letter-spacing:.06em;color:var(--muted)}.sheet-label .sub.accent{color:var(--accent)}.sheet-label .extra{font:400 11px var(--mono);letter-spacing:.06em;margin-top:8px}.sheet-body{flex:560px;min-width:0}.sheet+.sheet{margin-top:0}.prevnext{border-top:1px solid var(--ink);grid-template-columns:1fr 1fr;display:grid}.prevnext a{flex-direction:column;gap:6px;padding:24px 0;display:flex}.prevnext a+a{border-left:1px solid var(--ink);text-align:right;align-items:flex-end}.prevnext .no{font:400 10.5px var(--mono);letter-spacing:.08em;color:var(--faint)}.prevnext .title{letter-spacing:-.02em;font-size:22px;font-weight:300}.prevnext a:first-child .no,.prevnext a:first-child .title{padding-right:16px}.prevnext a+a .no,.prevnext a+a .title{padding-left:16px}.footer{border-top:1px solid var(--ink);font:400 10.5px var(--mono);letter-spacing:.06em;color:var(--faint);flex-wrap:wrap;justify-content:space-between;gap:12px;padding:20px 0 32px;display:flex}.rows{flex-direction:column;display:flex}.row{border-top:1px solid var(--rule);align-items:baseline;gap:16px;padding:20px 0;display:grid}.row .no{font:400 12px var(--mono);color:var(--faint)}.row-now{grid-template-columns:56px minmax(0,1fr)}.row-now .text{text-wrap:pretty;font-size:17px;line-height:1.6}.row-note{grid-template-columns:72px minmax(0,1fr) auto;gap:20px}.row-note .no,.row-note .date{font:400 11px var(--mono);color:var(--faint)}.row-note .title{font-size:17px;line-height:1.5}.row-link{grid-template-columns:120px minmax(0,1fr) auto;gap:20px;padding:18px 0}.row-link .k{font:400 10.5px var(--mono);letter-spacing:.08em;color:var(--faint)}.row-link .v{font-size:17px}.row-link .arrow{font:400 13px var(--mono)}.row-placeholder .title{color:var(--faint)}.elev{flex-direction:column;gap:40px;display:flex}.timeline{border-bottom:1px solid var(--ink);height:96px;position:relative}.timeline .pivot{border-left:1px dashed var(--ink);position:absolute;top:0;bottom:0;left:18.5%}.timeline .pivot-label{font:400 10px var(--mono);letter-spacing:.08em;white-space:nowrap;position:absolute;top:0;left:18.5%;transform:translate(6px)}.timeline .bar{border:1px solid var(--ink);background:var(--paper);height:20px;position:absolute}.timeline .bar.side{background:var(--hatch);top:52px}.timeline .bar.ft,.timeline .bar.sales,.timeline .bar.now{top:24px}.timeline .bar.sales{border-style:dashed}.timeline .bar.now{background:var(--accent)}.timeline .year{font:400 10px var(--mono);color:var(--faint);position:absolute;bottom:-22px;transform:translate(-50%)}.legend{font:400 10px var(--mono);letter-spacing:.06em;color:var(--muted);flex-wrap:wrap;gap:24px;margin-top:4px;display:flex}.legend span{align-items:center;gap:8px;display:flex}.legend i{border:1px solid var(--ink);width:16px;height:9px;display:inline-block}.legend i.side{background:var(--hatch)}.legend i.sales{border-style:dashed}.legend i.now{background:var(--accent);border-color:var(--accent)}.acc{border-top:1px solid var(--rule)}.acc:last-child{border-bottom:1px solid var(--rule)}.acc-btn{all:unset;cursor:pointer;box-sizing:border-box;grid-template-columns:150px minmax(0,1fr) auto 20px;align-items:baseline;gap:8px 20px;width:100%;padding:18px 0;transition:color .15s;display:grid}.acc-btn:hover{color:var(--accent)}.acc-btn:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.acc-btn .date{font:400 11.5px var(--mono);color:var(--muted)}.acc-btn .org{font-size:17px}.acc-btn .role{color:var(--muted);font-size:14px;line-height:1.5}.acc-btn .who{flex-direction:column;gap:4px;display:flex}.acc-btn .tag{font:400 10.5px var(--mono);letter-spacing:.06em;color:var(--faint)}.acc-btn .tag.now{color:var(--accent)}.acc-btn .icon{font:400 14px var(--mono);text-align:right}.acc-panel{grid-template-columns:150px minmax(0,1fr);gap:20px;padding:0 0 28px;display:grid}.acc-panel .label{font:400 10.5px var(--mono);letter-spacing:.06em;color:var(--faint)}.acc-panel .body{flex-direction:column;gap:18px;max-width:640px;display:flex}.acc-panel p{color:var(--ink-2);text-wrap:pretty;margin:0;font-size:15px;line-height:1.75}.duties{border-top:1px solid var(--rule-light);margin:0;padding:0;list-style:none}.duties li{border-bottom:1px solid var(--rule-light);grid-template-columns:28px minmax(0,1fr);padding:9px 0;font-size:14px;line-height:1.6;display:grid}.duties .n{font:400 10.5px var(--mono);color:var(--faint);padding-top:3px}.tags{flex-wrap:wrap;gap:6px;display:flex}.tags span{font:400 10px var(--mono);letter-spacing:.06em;border:1px solid var(--ink);padding:4px 8px}.figures{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:40px 32px;display:grid}.figure{flex-direction:column;gap:14px;margin:0;display:flex}.figure-img{aspect-ratio:4/3;border:1px solid var(--ink);background:var(--stripe);font:400 10.5px var(--mono);letter-spacing:.06em;color:var(--faint);place-items:center;display:grid;overflow:hidden}.figure-img img{object-fit:cover;object-position:top center;width:100%;height:100%;transition:transform .3s}a.figure-img:hover img{transform:scale(1.02)}.figure figcaption{flex-direction:column;gap:6px;display:flex}.figure .fig{font:400 10.5px var(--mono);letter-spacing:.08em;color:var(--faint);justify-content:space-between;gap:12px;display:flex}.figure .title{font-size:17px}.figure .desc{color:var(--muted);text-wrap:pretty;font-size:14px;line-height:1.6}.figure .desc b{color:var(--ink-2);font-weight:400}.figure .desc .arrow{color:var(--accent)}.figure .foot{justify-content:space-between;align-items:center;gap:12px;margin-top:6px;display:flex}.figure .link{font:400 10.5px var(--mono);letter-spacing:.08em;white-space:nowrap}.figure .note{font:400 10.5px var(--mono);letter-spacing:.08em;color:var(--faint)}.figure .tags{margin-top:4px}.shelf{flex-direction:column;gap:40px;display:flex}.shelf-head{border-bottom:1px solid var(--ink);justify-content:space-between;align-items:baseline;padding-bottom:10px;display:flex}.shelf-head .label{font-size:15px}.shelf-head .count{font:400 11px var(--mono);color:var(--faint)}.shelf-list{column-count:2;column-gap:32px}.book-row{border-bottom:1px solid var(--rule);break-inside:avoid;grid-template-columns:40px minmax(0,1fr);align-items:baseline;gap:12px;padding:9px 0;display:grid}.book-row .no{font:400 10.5px var(--mono);color:var(--faint)}.book-row .title{margin-right:10px;font-size:14.5px;line-height:1.5}.book-row .author{max-width:100%;color:var(--faint);font-size:11px;display:inline-block}.details{border-top:1px solid var(--ink);border-left:1px solid var(--ink);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.detail{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);flex-direction:column;gap:16px;padding:22px 22px 24px;display:flex}.detail .head{font:400 10.5px var(--mono);letter-spacing:.08em;color:var(--faint);justify-content:space-between;display:flex}.detail svg{width:100%;height:auto;font-family:var(--mono);display:block}.detail .cap{flex-direction:column;gap:6px;display:flex}.detail .title{letter-spacing:-.02em;font-size:24px;font-weight:300}.specs{border-top:1px solid var(--rule);font:400 10px var(--mono);letter-spacing:.08em;grid-template-columns:1fr 1fr;display:grid}.specs div{flex-direction:column;gap:4px;padding:10px 0 0;display:flex}.specs div+div{border-left:1px solid var(--rule);padding-left:14px}.specs .k{color:var(--faint)}.contact{flex-direction:column;gap:40px;display:flex}.contact-head{flex-direction:column;gap:16px;display:flex}.contact-big{letter-spacing:-.04em;margin:0;font-size:clamp(36px,5vw,56px);font-weight:300;line-height:1.05}.contact-sub{color:var(--muted);max-width:480px;margin:0;font-size:16px;line-height:1.7}.contact .rows{border-bottom:1px solid var(--rule)}@media (max-width:860px){.container{padding:0 20px}.nav-inner{flex-wrap:wrap;gap:10px 16px;height:auto;padding-top:12px}.nav-brand{margin-right:auto}.nav-links{scrollbar-width:none;flex:1 0 100%;order:5;gap:16px;padding:4px 0 12px;overflow-x:auto}.nav-links::-webkit-scrollbar{display:none}.sheet-label{flex-basis:100%}}@media (max-width:700px){.hero{gap:32px;padding:40px 0 56px}.annot{display:none}.annot-list{display:block}.acc-btn{grid-template-columns:minmax(0,1fr) auto 20px}.acc-btn .date{grid-column:1/-1}.acc-panel{grid-template-columns:minmax(0,1fr);gap:10px}.row-note{grid-template-columns:48px minmax(0,1fr)}.row-note .date{grid-column:2}.shelf-list{column-count:1}.row-link{grid-template-columns:90px minmax(0,1fr) auto;gap:12px}.prevnext .title{font-size:18px}.timeline .pivot-label{font-size:8.5px}}
