:root{--paper:#f2f1ef;--white:#fdfcfa;--ink:#1d191b;--muted:#777074;--line:#ded9dc;--accent:#e7a329;--accent-soft:#f8ebce;--ease:cubic-bezier(.22,.68,0,1.01)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Helvetica Neue","PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button{color:inherit}button,a{touch-action:manipulation}::selection{background:var(--accent);color:white}a:focus-visible,button:focus-visible,.track:focus-visible{outline:2px solid var(--accent);outline-offset:5px}a,button{transition:color .2s,background .2s,transform .3s var(--ease)}button:active{transform:scale(.96)}.site-header{height:6rem;padding:0 3rem;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:flex;align-items:center;gap:1rem;font-size:1.25rem;font-weight:600}.brand>span{font: .625rem "SFMono-Regular",Consolas,monospace;letter-spacing:.05em}.brand i{height:.4rem;width:.4rem;border-radius:50%;background:var(--accent)}.site-header nav{margin-left:auto;display:flex;gap:2rem;font-size:.75rem}.site-header nav a{padding:.75rem 0}.site-header a:hover{color:var(--accent)}#language{background:none;border:1px solid var(--line);border-radius:50%;width:2.75rem;height:2.75rem;font-size:.6875rem}#language:hover{background:var(--ink);color:white}.track{display:flex;gap:1.5rem;overflow-x:auto;overflow-y:hidden;height:calc(100dvh - 11.5rem);min-height:35rem;padding:0 5rem 0 3rem;scroll-snap-type:x mandatory;scroll-padding-left:3rem;scrollbar-width:none;overscroll-behavior-x:contain}.track::-webkit-scrollbar{display:none}.panel{flex:0 0 calc(100vw - 10rem);max-width:82rem;min-width:0;height:100%;background:var(--white);padding:2rem 2.5rem;scroll-snap-align:start;position:relative;display:flex;flex-direction:column;overflow:hidden}.panel-meta{display:flex;justify-content:space-between;gap:1rem;font: .625rem/1.5 "SFMono-Regular",Consolas,monospace;letter-spacing:.07em;color:var(--muted);position:relative;z-index:1}.micro{font:.625rem/1.8 "SFMono-Regular",Consolas,monospace;letter-spacing:.04em}.intro-name{display:flex;align-items:center;gap:2rem;position:relative;z-index:1;margin-top:1rem}.intro-name h1{font-size:clamp(5rem,11.5vw,12rem);line-height:1.12;letter-spacing:-.08em;font-weight:550;margin:0}.punctuation{color:var(--accent)}.name-roman{font-size:.875rem;line-height:1.5;letter-spacing:.13em;border-left:1px solid var(--line);padding-left:1.5rem;align-self:flex-end;margin-bottom:1.25rem}.intro-main{position:relative;flex:1;display:flex;align-items:center}.intro-main h2{font-size:clamp(2rem,3.5vw,4rem);letter-spacing:-.045em;line-height:1.24;font-weight:450;position:relative;z-index:2;margin:1.5rem 0}.orbit{position:absolute;right:0;top:-25%;width:clamp(12rem,27vw,30rem);aspect-ratio:1;display:grid;place-items:center;pointer-events:none}.orbit div{position:absolute;inset:0;background:var(--accent);border-radius:50%;transform:translate(var(--x,0),var(--y,0));transition:transform 1s var(--ease)}.orbit span{position:relative;font-size:clamp(3rem,7vw,7rem);color:var(--white);font-weight:300;letter-spacing:-.09em;transform:rotate(-12deg);opacity:.95}.intro-bottom{display:flex;align-items:end;justify-content:space-between;gap:1rem;position:relative;z-index:2}.intro-bottom p{font-size:.8125rem;line-height:1.9;margin:0;color:var(--muted)}.round-link{height:3rem;width:3rem;background:var(--ink);color:white;border-radius:50%;display:grid;place-items:center;font-size:1.5rem}.round-link:hover{background:var(--accent);transform:rotate(45deg)}.service-panel{background:var(--accent);color:var(--white)}.service-panel .panel-meta{color:#fff}.service-number{flex:1;display:flex;align-items:center;gap:2rem;min-height:0}.service-number>span{font-size:clamp(8rem,22vw,22rem);font-weight:500;line-height:.85;letter-spacing:-.1em;margin-left:-.07em}.service-number>div{display:flex;flex-direction:column;gap:.5rem;margin-top:3rem}.service-number>div>span{font-size:.875rem}.service-number small{font-size:.625rem;opacity:.75}.service-bottom{display:grid;grid-template-columns:1fr 1fr;gap:4rem;padding-top:1rem}.service-bottom h2{font-size:clamp(1.75rem,3vw,3rem);font-weight:450;letter-spacing:-.045em;line-height:1.18;margin:0 0 1.5rem}.model-labels{display:flex;gap:1rem;font-size:.75rem}.service-description>p{font-size:.8125rem;line-height:1.8;margin:0 0 1rem;max-width:30rem}.service-description>.micro{opacity:.7}.detail-button{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:0;border-bottom:1px solid var(--line);padding:.75rem 0;background:none;width:100%;font-size:.75rem;text-align:left;min-height:2.75rem}.detail-button>span:last-child{font-size:1.25rem;transition:transform .3s var(--ease)}.detail-button:hover{color:var(--accent)}.detail-button:hover>span:last-child{transform:translate(.2rem,-.2rem)}.service-panel .detail-button{border-color:#ffffff60;margin-top:.75rem}.service-panel .detail-button:hover{color:white;background:#ffffff10}.panel-heading{font-size:clamp(2.5rem,5.1vw,5rem);font-weight:450;letter-spacing:-.055em;line-height:1.12;margin:1.5rem 0 2rem}.two-features{display:grid;grid-template-columns:1fr 1fr;gap:3rem;flex:1;min-height:0}.feature{display:flex;flex-direction:column;border-top:1px solid var(--ink);padding-top:1rem;min-width:0}.feature-top{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;align-items:center}.feature .status{font-size:.5625rem;color:var(--muted)}.feature h3{font-size:clamp(1.1rem,1.8vw,1.75rem);font-weight:500;line-height:1.25;letter-spacing:-.04em;margin:1.25rem 0 .75rem}.feature>p{font-size:.8125rem;line-height:1.8;color:var(--muted);margin:0 0 .75rem;max-width:33rem}.feature .detail-button{margin-top:auto}.research-panel{background:#eae7e8}.project-index{flex:1;overflow-y:auto;overscroll-behavior:contain;min-height:0;scrollbar-width:thin;scrollbar-color:#c6bdc1 transparent;padding-right:.5rem}.archive-panel .panel-heading{font-size:clamp(2.25rem,4.5vw,4rem);margin-bottom:1.25rem}.index-row{display:grid;grid-template-columns:2.5rem 1fr 2rem;gap:1rem;align-items:center;width:100%;background:transparent;border:0;border-top:1px solid var(--line);padding:1rem 0;text-align:left;min-height:4.25rem}.index-row:last-child{border-bottom:1px solid var(--line)}.index-row:hover{color:var(--accent);padding-left:.5rem;background:#e7a3290a}.index-number{font:.625rem monospace;color:var(--muted)}.index-title{display:flex;align-items:baseline;justify-content:space-between;gap:1rem}.index-title>span:first-child{font-size:1rem;letter-spacing:-.02em}.index-title .status{font-size:.5625rem;color:var(--muted)}.index-arrow{font-size:1.25rem;text-align:right}.personal-panel{background:var(--ink);color:var(--white)}.personal-panel .panel-meta{color:#b6aeb2}.personal-panel .panel-heading{margin-bottom:2rem}.personal-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2rem;flex:1;min-height:0}.favorite{border-top:1px solid #ffffff30;padding-top:1rem;position:relative;min-height:0}.favorite-label{display:flex;justify-content:space-between;font-size:.625rem;color:#b6aeb2}.favorite h3{font-size:clamp(1.5rem,2.5vw,2.5rem);font-weight:400;line-height:1.1;margin:1.5rem 0 .5rem;letter-spacing:-.05em}.favorite-caption{font:.5625rem monospace;color:#b6aeb2;letter-spacing:.05em}.color-disc{height:clamp(2.5rem,6vh,4.5rem);width:clamp(2.5rem,6vh,4.5rem);border-radius:50%;background:var(--accent);margin:1.25rem 0 0;transition:transform .6s var(--ease)}.color-favorite:hover .color-disc{transform:scale(1.12)}.color-favorite h3{font-size:1.5rem;margin-top:.75rem}.book-preference{margin-top:1.5rem}.book-preference>span{font-size:.625rem;color:#b6aeb2}.book-preference p{font-size:1.125rem;margin:.5rem 0 .25rem}.book-preference small{font-size:.5625rem;color:#b6aeb2}.music-favorite p{font-size:.75rem;margin:0;color:#b6aeb2}.sound-lines{height:3rem;display:flex;align-items:center;gap:.25rem;margin-top:1rem;overflow:hidden}.sound-lines i{height:calc(.5rem + mod(var(--i), 5)*.4rem);min-height:.75rem;width:.1875rem;background:var(--accent);transform:scaleY(1);animation:wave 1.8s ease-in-out infinite alternate;animation-delay:calc(var(--i)*-150ms);animation-play-state:paused}.music-favorite:hover .sound-lines i{animation-play-state:running}.music-favorite h3{margin-top:1rem}.personal-foot{display:flex;gap:4rem;border-top:1px solid #ffffff30;padding-top:1rem;margin-top:1.5rem}.personal-foot>div{display:flex;gap:1.25rem;align-items:baseline}.personal-foot span{font:.625rem monospace;color:#b6aeb2}.personal-foot strong{font-size:.8125rem;font-weight:400}.contact-heading{font-size:clamp(3rem,7vw,7rem);font-weight:450;line-height:1.08;letter-spacing:-.055em;margin:2rem 0}.contact-links{display:flex;align-items:center;flex-wrap:wrap;gap:1rem 1.5rem}.contact-links>a:first-child{font-size:clamp(1rem,1.8vw,1.75rem);letter-spacing:-.04em}.contact-links a:hover{color:var(--accent)}#copy{padding:.75rem 1rem;border:1px solid var(--line);background:none;font-size:.625rem}#copy:hover{background:var(--ink);color:white}.github-contact{flex-basis:100%;font-size:.75rem;color:var(--muted)}#copy-result{min-height:1rem;font-size:.625rem;color:var(--accent);margin:.75rem 0}.next-project{margin-top:auto;display:grid;grid-template-columns:5rem 1fr auto;gap:1.5rem;align-items:center;border-top:1px solid var(--line);padding-top:1.25rem}.next-project h3{font-size:.9375rem;font-weight:500;margin:0 0 .5rem}.next-project p{font-size:.6875rem;line-height:1.6;color:var(--muted);margin:0}.next-project .detail-button{width:auto;border:0}.navigation{height:5.5rem;display:flex;align-items:center;justify-content:space-between;padding:0 3rem;gap:2rem}.navigation-hint{display:flex;align-items:center;gap:1rem;font-size:.5625rem;letter-spacing:.07em;color:var(--muted)}.hint-line{font-size:1.5rem}.chapter-nav{display:flex;gap:.5rem;align-items:center}.chapter{height:2.75rem;min-width:2.25rem;display:flex;gap:.5rem;align-items:center;justify-content:center}.chapter span{font:.5625rem monospace;opacity:0;max-width:0;transition:all .3s}.chapter i{height:.875rem;width:1px;background:#ada5aa;transition:all .3s}.chapter[aria-current=true] span{opacity:1;max-width:2rem;color:var(--accent)}.chapter[aria-current=true] i{height:1.5rem;background:var(--accent)}.chapter:hover i{height:1.5rem;background:var(--ink)}.page-controls{display:flex;gap:.5rem;align-items:center}.page-controls>span{font:.625rem monospace;margin-right:1rem;color:var(--muted)}.page-controls button{border:1px solid var(--line);background:none;border-radius:50%;height:2.75rem;width:2.75rem;font-size:1rem}.page-controls button:hover:not(:disabled){background:var(--ink);color:white}.page-controls button:disabled{opacity:.25;cursor:default}.mobile-hint{display:none}.skip{position:absolute;top:-5rem;left:1rem;z-index:9;background:var(--ink);color:white;padding:1rem}.skip:focus{top:1rem}dialog{padding:2rem;border:1px solid var(--line);background:var(--white);color:var(--ink);max-width:43rem;width:calc(100% - 2rem);max-height:85dvh;overflow:auto;box-shadow:0 2rem 6rem #1d191b20}dialog::backdrop{background:#1d191b60;backdrop-filter:blur(8px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;color:var(--muted)}#close-dialog{border:0;background:transparent;width:2.75rem;height:2.75rem;font-size:2rem;line-height:1}#close-dialog:hover{color:var(--accent)}#dialog-body h3{font-size:2rem;font-weight:450;letter-spacing:-.04em;margin:1rem 0}#dialog-body .status{font:.625rem monospace;color:var(--accent)}#dialog-body p{font-size:.875rem;line-height:1.9;color:#625b60}#dialog-body .tags{display:flex;flex-wrap:wrap;gap:1rem;margin:1.5rem 0;font:.625rem monospace;color:var(--muted)}#dialog-body .repo-link{display:inline-block;color:var(--accent);font-size:.75rem;margin-bottom:.75rem}#dialog-body .detail-content{border-top:1px solid var(--line);margin-top:1.5rem;padding-top:1rem}.panel{animation:arrive .7s var(--ease) both}@keyframes arrive{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes wave{to{transform:scaleY(.35)}}
@media(min-width:1600px){.track{padding-left:calc((100vw - 90rem)/2);scroll-padding-left:calc((100vw - 90rem)/2)}.panel{flex-basis:76rem}.site-header,.navigation{padding-left:calc((100vw - 90rem)/2);padding-right:calc((100vw - 90rem)/2)}}
@media(max-height:760px) and (min-width:761px){.site-header{height:5rem}.track{height:calc(100dvh - 9rem);min-height:31rem}.navigation{height:4rem}.panel{padding:1.5rem 2rem}.intro-name h1{font-size:8rem}.intro-name{margin-top:.75rem}.intro-main h2{font-size:2.5rem}.panel-heading{font-size:3rem;margin:1rem 0 1.5rem}.feature h3{margin:1rem 0 .5rem;font-size:1.3125rem}.feature>p{font-size:.75rem;line-height:1.7}.personal-panel .panel-heading{font-size:2.75rem;margin-bottom:1.5rem}.favorite h3{font-size:1.75rem}.book-preference{margin-top:1rem}.personal-foot{margin-top:1rem}.contact-heading{font-size:4rem;margin:1.5rem 0}.service-number>span{font-size:14rem}.service-bottom h2{font-size:2.25rem}.service-description>p{font-size:.75rem}.archive-panel .panel-heading{font-size:2.75rem}.index-row{padding:.75rem 0;min-height:3.5rem}}
@media(max-width:1050px) and (min-width:761px){.panel{flex-basis:calc(100vw - 7rem);padding:1.5rem}.track{padding-left:2rem;scroll-padding-left:2rem}.site-header,.navigation{padding-left:2rem;padding-right:2rem}.two-features{gap:2rem}.feature-top>.micro{display:none}.feature>p{font-size:.75rem}.personal-grid{gap:1.5rem}.personal-foot{gap:2rem}.personal-foot>div{gap:.5rem}.service-bottom{gap:2rem}.index-title .status{font-size:.5rem}.intro-main h2{font-size:2.5rem}.panel-heading{font-size:3rem}}
@media(max-width:760px){html{scroll-padding-top:1rem}.site-header{height:5rem;padding:0 1.25rem;gap:1rem}.brand>span,.brand i{display:none}.site-header nav{gap:1.25rem;font-size:.6875rem}.track{display:block;height:auto;min-height:0;overflow:visible;padding:0 1rem;scroll-snap-type:none}.panel{max-width:none;min-height:34rem;height:auto;margin-bottom:1rem;padding:1.5rem;scroll-margin-top:1rem;animation:none}.panel-meta{font-size:.5rem}.introduction{min-height:calc(100dvh - 6rem)}.intro-name{margin-top:2rem;gap:1rem}.intro-name h1{font-size:clamp(4rem,25vw,6.5rem)}.name-roman{font-size:.6875rem;padding-left:1rem;margin-bottom:.75rem}.intro-main{min-height:14rem;align-items:flex-start}.intro-main h2{font-size:1.75rem;line-height:1.3;margin-top:2rem;max-width:none}.orbit{width:8rem;right:-.5rem;top:8rem;opacity:.95}.orbit span{font-size:3rem}.intro-bottom p{font-size:.6875rem;max-width:16rem}.round-link{height:2.5rem;width:2.5rem;flex-shrink:0}.service-number{padding:3rem 0 2rem;gap:1.5rem}.service-number>span{font-size:9rem}.service-number>div{margin-top:1rem}.service-number>div>span{font-size:.625rem}.service-number small{font-size:.5rem}.service-bottom{grid-template-columns:1fr;gap:2rem}.service-bottom h2{font-size:2.25rem}.service-description>p{font-size:.8125rem}.two-features{grid-template-columns:1fr;gap:2.5rem}.panel-heading{font-size:2.5rem;margin:2rem 0 2rem}.feature{padding-top:1rem}.feature h3{font-size:1.5rem;margin-top:1rem}.feature>p{font-size:.8125rem;margin-bottom:1rem}.feature-top .micro{font-size:.5rem}.feature .status{font-size:.5rem}.project-index{overflow:visible;padding:0}.archive-panel .panel-heading{font-size:2.5rem}.index-row{grid-template-columns:1.5rem 1fr 1.5rem;gap:.5rem;padding:1.25rem 0}.index-title{display:block}.index-title>span:first-child{display:block;font-size:1rem}.index-title .status{display:block;font-size:.5rem;margin-top:.5rem}.personal-grid{grid-template-columns:1fr}.favorite{padding-top:1rem;min-height:10rem}.favorite h3{font-size:2.25rem}.color-favorite{min-height:9rem}.color-disc{position:absolute;right:1rem;top:2rem;height:5rem;width:5rem}.color-favorite h3{margin-top:2rem}.book-preference{margin:1.5rem 0}.music-favorite{padding-bottom:2rem}.sound-lines{float:right;width:40%;height:5rem}.personal-foot{gap:1.5rem;flex-wrap:wrap;margin-top:0}.personal-foot>div{flex-direction:column;gap:.5rem}.contact-heading{font-size:3rem;margin:2.5rem 0}.contact-links>a:first-child{font-size:.9375rem;word-break:break-word}.contact-panel{min-height:38rem}.next-project{grid-template-columns:1fr;margin-top:3rem;gap:.75rem}.next-project .detail-button{width:100%}.navigation{height:5rem;padding:0 1.5rem}.chapter-nav{display:none}.page-controls button{display:none}.page-controls>span{margin:0}.desktop-hint{display:none}.mobile-hint{display:inline}.hint-line{transform:rotate(90deg)}dialog{padding:1.5rem}#dialog-body h3{font-size:1.75rem}.dialog-top{margin-bottom:1rem}.contact-panel .panel-meta{gap:.5rem}html[lang=en] .intro-main h2{font-size:2.125rem}html[lang=en] .intro-name h1{font-size:clamp(4rem,25vw,6rem)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.orbit div{transform:none!important}}
/* Amber edition: deliberate navigation, tactile cards and an actual listening room. */
html,body{overflow-x:hidden}.track{position:relative;width:100%;scroll-snap-type:none;scroll-behavior:auto;touch-action:pan-x pan-y}.panel{animation:none;transform:scale(.96);transform-origin:center;transition:transform 420ms cubic-bezier(.2,.8,.2,1),opacity 280ms;opacity:.76;scroll-snap-align:none;will-change:transform}.panel.is-current{opacity:1}.panel.is-focused{transform:scale(1);opacity:1}.track.is-moving .panel{transform:scale(.92)}.line-mask{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}.reveal-line{display:block}.is-focused .reveal-line{animation:line-in 480ms cubic-bezier(.16,1,.3,1) var(--delay,0ms) both}.is-focused .reveal-item{animation:content-in 420ms ease-out var(--delay,100ms) both}.reveal-item{opacity:1}.intro-name h1{letter-spacing:-.08em}.is-focused .intro-name{animation:content-in 420ms ease-out both}.service-panel{color:var(--ink)}.service-panel .panel-meta{color:var(--ink)}.service-panel .detail-button{border-color:#1d191b60}.service-panel .detail-button:hover{color:var(--ink);background:#ffffff26}.service-description>.micro{opacity:.9}.orbit span{color:var(--ink)}.punctuation{color:#b57508}.color-disc{background:#c51d64}.research-panel{background:#e9e7e2}a:hover,.detail-button:hover{color:#996000}.archive-link{display:inline-block;text-decoration:underline;text-underline-offset:4px}.project-actions{margin-top:auto;display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.project-actions .detail-button{flex:1;min-width:10rem;margin:0}.notes-button{background:none;border:0;padding:.75rem 0;font-size:.6875rem;color:var(--muted);min-height:44px}.notes-button:hover{color:#996000}.index-row:is(div){display:flex;gap:1rem}.index-main{display:grid;grid-template-columns:2.5rem 1fr 2rem;gap:1rem;align-items:center;flex:1;min-width:0}.index-notes{width:2rem;min-height:2.75rem;padding:0;border:1px solid var(--line);background:transparent;color:var(--muted);flex-shrink:0;font-size:1.25rem}.index-notes:hover{background:var(--ink);color:var(--white)}.personal-foot{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;padding-top:1.25rem;margin-top:1.5rem}.personal-foot>div{display:flex;flex-direction:column;gap:.6rem}.personal-foot strong{font-size:1.5rem;letter-spacing:-.025em}.personal-foot span{font-size:.625rem}.personal-panel .personal-foot strong{color:var(--white)}
.navigation{gap:1rem}.navigation-hint{gap:.7rem;min-width:0}.hint-line{display:none}.chapter-nav{gap:.5rem}.chapter{height:3rem;min-width:3.2rem;position:relative;flex-direction:column;gap:.2rem;justify-content:center;padding:.15rem .4rem}.chapter>span{opacity:.65;max-width:none;color:var(--muted);font-size:.625rem;transition:color 150ms,opacity 150ms}.chapter>i{position:absolute;bottom:-.1rem;width:1px;height:.35rem;background:var(--line);transition:height 200ms,background 200ms}.chapter-label{font-size:.625rem;line-height:1.2;font-weight:400;color:var(--muted);white-space:nowrap}.chapter[aria-current=true]{background:var(--accent-soft)}.chapter[aria-current=true]>span,.chapter[aria-current=true] .chapter-label{color:#865100;opacity:1}.chapter[aria-current=true]>i{height:.5rem;background:var(--accent)}.chapter:hover i{height:.5rem}.chapter:hover{background:var(--white)}.chapter:hover .chapter-label{color:var(--ink)}.page-controls{gap:.4rem}.page-controls>span{margin-right:.5rem}.page-controls button{flex-shrink:0}.navigation-hint .desktop-hint{font-size:.5rem}#sound-toggle{width:2.5rem;height:2.5rem;border-radius:50%;border:1px solid var(--line);background:transparent;font-size:1.125rem;flex-shrink:0}#sound-toggle:hover,#sound-toggle.playing{background:var(--accent);color:var(--ink);border-color:var(--accent)}.music-entry{display:grid;grid-template-columns:1fr auto;gap:.65rem 1rem;align-items:center;width:100%;text-align:left;border:0;border-bottom:1px solid #ffffff35;background:transparent;color:var(--white);padding:.6rem 0;margin:.5rem 0 .75rem}.music-title{font-size:clamp(1.5rem,2.5vw,2.5rem);letter-spacing:-.05em}.music-entry small{font-size:.625rem;color:#b6aeb2;grid-column:1/-1}.play-symbol{display:grid;place-items:center;height:2.5rem;width:2.5rem;border-radius:50%;border:1px solid #ffffff50;font-size:.75rem;color:var(--accent)}.music-entry:hover .play-symbol{background:var(--accent);color:var(--ink);transform:scale(1.08)}.music-entry:hover{color:var(--accent)}.music-favorite.playing .sound-lines i{animation-play-state:running}#music-dialog{text-align:center;width:min(29rem,calc(100% - 2rem));padding:1.5rem 2rem}#music-dialog .dialog-top{margin-bottom:1rem}#close-music{border:0;background:transparent;width:2.75rem;height:2.75rem;font-size:2rem;color:var(--muted)}#music-dialog h2{font-size:3rem;letter-spacing:-.06em;font-weight:400;margin:1.5rem 0 .5rem}#music-dialog>p{font-size:.75rem;color:var(--muted)}#refrain{display:block;width:100%;margin-top:1.5rem;height:44px}#music-status{line-height:1.6;min-height:2.4em}.record-disc{width:11rem;height:11rem;border-radius:50%;margin:0 auto;display:grid;place-items:center;background:repeating-radial-gradient(circle,#252222 0 2px,#383333 3px 4px);border:1px solid #2c2727;animation:record-spin 12s linear infinite;animation-play-state:paused}.record-disc>span{display:grid;place-items:center;width:4.5rem;height:4.5rem;border-radius:50%;background:var(--accent);font-size:1.75rem;font-weight:500}.playing .record-disc{animation-play-state:running}dialog[open]{animation:dialog-in 220ms ease-out both}
@keyframes line-in{from{transform:translateY(110%);opacity:.2}to{transform:translateY(0);opacity:1}}@keyframes content-in{from{transform:translateY(14px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes dialog-in{from{transform:translateY(8px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes record-spin{to{transform:rotate(360deg)}}
@media(max-width:1050px) and (min-width:761px){.navigation{padding:0 2rem;gap:.5rem}.navigation-hint .desktop-hint{display:none}.chapter{min-width:2.6rem;padding:.15rem .25rem}.chapter-nav{gap:.2rem}.page-controls>span{font-size:.5625rem}.personal-grid{gap:1rem}.personal-foot{gap:1rem}.music-title{font-size:1.75rem}.project-actions{gap:.75rem}}
@media(max-height:760px) and (min-width:761px){.personal-foot{margin-top:.75rem;padding-top:1rem}.personal-foot strong{font-size:1.25rem}.personal-grid .favorite h3{margin-top:1rem}.music-entry{margin:0 0 .5rem;padding:.5rem 0}.sound-lines{height:2rem;margin-top:.5rem}.color-disc{margin-top:1rem}.book-preference{margin-top:.75rem}.personal-panel .panel-heading{font-size:2.5rem;margin-bottom:1.25rem}}
@media(max-width:760px){.track{width:100%;touch-action:auto}.panel,.panel.is-focused,.track.is-moving .panel{transform:none;opacity:1;will-change:auto}.navigation{position:sticky;bottom:0;z-index:5;background:#f2f1eff5;backdrop-filter:blur(12px);height:4.5rem;padding:.5rem 1rem;border-top:1px solid var(--line);gap:.5rem}.navigation-hint .mobile-hint{display:none}.chapter-nav{display:flex;flex:1;justify-content:space-around;gap:0;min-width:0}.chapter{min-width:0;padding:.15rem .2rem;height:2.8rem;flex:1}.chapter>span{font-size:.5rem}.chapter-label{font-size:.5rem}.page-controls{display:none}#sound-toggle{width:2rem;height:2rem;font-size:1rem}.index-main{grid-template-columns:1.5rem 1fr 1rem;gap:.5rem}.index-row:is(div){gap:.75rem}.personal-foot{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;padding:1.25rem 0 .5rem;margin-top:0}.personal-foot strong{font-size:1.2rem}.music-entry{max-width:100%;clear:both}.music-favorite .sound-lines{float:none;width:100%;height:3rem}.music-favorite{padding-bottom:1rem}.music-title{font-size:2rem}.favorite.music-favorite p{font-size:.8125rem}.personal-panel .panel-meta>span:last-child{display:none}.project-actions{gap:1rem}.panel{scroll-margin-top:1rem}.color-disc{right:0}.record-disc{width:9rem;height:9rem}.contact-panel{margin-bottom:0}}
@media(prefers-reduced-motion:reduce){.panel,.panel.is-focused,.track.is-moving .panel{transform:none;opacity:1}.reveal-line,.reveal-item{transform:none!important;opacity:1!important;animation:none!important}.record-disc{animation:none!important}}
@media(max-width:760px){body{padding-bottom:4.5rem}.navigation{position:fixed;left:0;right:0;bottom:0}.personal-panel>.panel-meta{order:0}.personal-panel>.panel-heading{order:1}.personal-panel>.personal-foot{order:2;margin:0 0 2rem;padding:1rem 0;border-bottom:1px solid #ffffff30}.personal-panel>.personal-grid{order:3}}
/* Personal page composition: identity above, reading left, color and sound right. */
#personal .personal-header{display:grid;grid-template-columns:1.05fr 1fr;gap:2.5rem;align-items:end;padding:1.5rem 0 2rem;flex-shrink:0}
#personal .personal-header .panel-heading{font-size:clamp(2.5rem,4vw,4.5rem);line-height:1.1;margin:0}
#personal .personal-foot{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem;margin:0;padding:0 0 .25rem;border:0}
#personal .personal-foot>div{gap:.65rem}
#personal .personal-foot strong{font-size:clamp(1rem,1.65vw,1.5rem);white-space:nowrap}
#personal .personal-foot span{font-size:.625rem}
#personal .personal-grid{display:grid;grid-template-columns:1.05fr 1fr;grid-template-rows:1fr 1.15fr;gap:1.75rem 2.5rem;flex:1;min-height:0}
#personal .favorite{margin:0;padding:1rem 0 0;min-height:0;border-top:1px solid #ffffff30}
#personal .favorite-label{font-size:.6875rem}
#personal .reading-favorite{grid-column:1;grid-row:1/3;display:flex;flex-direction:column;padding-right:2.5rem;border-right:1px solid #ffffff20}
#personal .reading-favorite h3{font-size:clamp(2.75rem,5.5vw,5rem);line-height:1.08;margin:1.8rem 0 .6rem;letter-spacing:-.06em}
#personal .reading-favorite .favorite-caption{font-size:.625rem;letter-spacing:.12em}
#personal .book-preference{margin:auto 0 0;padding-top:2rem}
#personal .book-preference>span{font-size:.6875rem}
#personal .book-preference p{font-size:clamp(1.8rem,3.5vw,3.25rem);line-height:1.2;margin:1rem 0 .7rem;letter-spacing:-.045em}
#personal .book-preference small{font-size:.625rem}
#personal .color-favorite{grid-column:2;grid-row:1}
#personal .color-display{display:flex;flex-direction:row-reverse;align-items:center;justify-content:space-between;gap:1rem;height:calc(100% - 1.1rem);padding-top:.75rem}
#personal .color-disc{position:static;width:clamp(4rem,10vw,8rem);height:auto;aspect-ratio:1;flex-shrink:0;margin:0}
#personal .color-favorite h3{font-size:clamp(1.65rem,2.8vw,2.5rem);margin:0 0 .75rem;letter-spacing:-.04em}
#personal .color-favorite .micro{font-size:.625rem;color:#b6aeb2}
#personal .music-favorite{grid-column:2;grid-row:2;display:flex;flex-direction:column}
#personal .sound-lines{float:none;flex:1;min-height:1.5rem;max-height:4.5rem;width:100%;margin:1rem 0 .5rem;gap:.3rem}
#personal .sound-lines i{width:.2rem}
#personal .music-entry{margin:0 0 .6rem;padding:.6rem 0 .75rem}
#personal .music-title{font-size:clamp(2rem,3.5vw,3.25rem);line-height:1.1}
#personal .play-symbol{width:3rem;height:3rem;background:var(--accent);border:0;color:var(--ink)}
#personal .music-entry:hover .play-symbol{background:var(--white)}
#personal .music-entry small{font-size:.6875rem}
#personal .music-favorite>p{font-size:.75rem}
@media(max-height:760px) and (min-width:761px){#personal .personal-header{padding:1rem 0 1.5rem}#personal .personal-header .panel-heading{font-size:2.5rem}#personal .personal-grid{gap:1rem 2.5rem;grid-template-rows:.9fr 1.1fr}#personal .reading-favorite h3{font-size:3.5rem;margin:1rem 0 .5rem}#personal .book-preference{padding-top:1rem}#personal .book-preference p{font-size:2.4rem;margin:.7rem 0 .5rem}#personal .color-disc{width:5rem}#personal .color-favorite h3{font-size:2rem}#personal .sound-lines{margin:.5rem 0 .25rem;max-height:2.5rem}#personal .music-title{font-size:2.5rem}#personal .music-entry{padding:.25rem 0 .5rem;margin-bottom:.4rem;gap:.4rem 1rem}#personal .play-symbol{height:2.5rem;width:2.5rem}}
@media(max-width:1050px) and (min-width:761px){#personal .personal-header{gap:2rem}#personal .personal-header .panel-heading{font-size:2.75rem}#personal .personal-grid{gap:1.5rem 2rem}#personal .reading-favorite{padding-right:2rem}#personal .personal-foot{gap:.75rem}#personal .personal-foot strong{font-size:1.1rem}#personal .personal-foot span{font-size:.5625rem}}
@media(max-width:760px){#personal .personal-header{display:block;order:1;padding:2rem 0 1.75rem}#personal .personal-header .panel-heading{font-size:2.5rem;margin:0 0 1.75rem}#personal .personal-foot{padding:1rem 0 0;border-top:1px solid #ffffff30;margin:0;gap:.75rem}#personal .personal-foot strong{font-size:1.125rem}#personal .personal-grid{display:flex;flex-direction:column;gap:1.75rem;order:2}#personal .reading-favorite{border-right:0;padding-right:0}#personal .reading-favorite h3{font-size:3.5rem;margin:1.5rem 0 .6rem}#personal .book-preference{padding:2rem 0 .25rem;margin:0}#personal .book-preference p{font-size:2.25rem;margin:.75rem 0 .5rem}#personal .color-display{height:auto;padding:1.25rem 0 .25rem;min-height:7rem}#personal .color-disc{width:5.5rem}#personal .color-favorite h3{font-size:2rem}#personal .music-favorite{padding-bottom:.5rem}#personal .sound-lines{min-height:2rem;height:2rem;flex:none;margin:1rem 0 .5rem}#personal .music-title{font-size:2.75rem}#personal .play-symbol{width:2.75rem;height:2.75rem}}
/* Motion v7: compositor-only text/card transitions; independent liquid illustration. */
.panel{will-change:auto;transition:transform 360ms cubic-bezier(.2,.75,.25,1),opacity 220ms;transform:scale(.97);opacity:.85}
.panel.is-focused{transform:scale(1);opacity:1}.track.is-moving .panel{transform:scale(.955)}
.is-focused .reveal-line,.is-focused .reveal-item,.is-focused .intro-name{animation:none!important}
.reveal-line,.reveal-item{opacity:1}.intro-letter{display:inline-block;transform-origin:50% 85%}
.intro-name h1{white-space:nowrap}.line-mask{padding:.08em .08em .13em;margin:-.08em -.08em -.13em}
.orbit{isolation:isolate}.fluid-svg{position:absolute;inset:-10%;width:120%;height:120%;overflow:visible;contain:layout style}
.orbit span{pointer-events:none;position:relative;z-index:1;color:#392809;opacity:.88}
.sound-lines i{animation-play-state:paused!important;transform-origin:center}
.music-favorite.playing .sound-lines i{animation-play-state:running!important}
@media(max-width:760px){.panel,.panel.is-focused,.track.is-moving .panel{transform:none;opacity:1}.intro-letter{letter-spacing:-.09em}}
@media(prefers-reduced-motion:reduce){.panel,.panel.is-focused,.track.is-moving .panel{transform:none}.fluid-svg{transform:none}}

/* Black liquid study and corrected historical operating totals. */
.orbit{width:31vw;height:31vw;max-width:28rem;max-height:28rem;right:0;top:2.5rem;pointer-events:none}
.fluid-svg{inset:0;width:100%;height:100%}
.service-number{flex:0 0 auto;padding:2.2rem 0 .5rem;gap:1.5rem;align-items:flex-end}
.service-number>span{font-size:clamp(5rem,11.5vw,12rem);letter-spacing:-.075em;line-height:1;font-variant-numeric:tabular-nums;white-space:nowrap}
.service-number>span>small{display:inline;font-size:.37em;letter-spacing:-.05em;margin:0 0 0 .08em}
.service-number>div{margin:0 0 .4rem}.service-number>div>span{font-size:.7rem}.service-number>div>small{font-size:.6rem;margin-top:.6rem}
.service-progress{margin:.75rem 0 1.5rem;max-width:38rem}.service-progress>div{display:flex;justify-content:space-between;gap:1rem;font: .65rem var(--mono,monospace)}
.service-progress progress{display:block;appearance:none;border:0;width:100%;height:3px;margin:.75rem 0;background:#1d191b25}.service-progress progress::-webkit-progress-bar{background:#1d191b25}.service-progress progress::-webkit-progress-value{background:#1d191b}.service-progress progress::-moz-progress-bar{background:#1d191b}.service-progress>small{font-size:.6rem;opacity:.7}
.service-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem;max-width:38rem}.service-kpis>div{display:flex;flex-direction:column;gap:.5rem;border-top:1px solid #1d191b35;padding-top:.8rem}.service-kpis strong{font-size:1.8rem;font-weight:400;letter-spacing:-.05em}.service-kpis small{font-size:.7em;margin-left:.1em}.service-kpis span{font-size:.6rem}.service-bottom{margin-top:auto}.service-bottom h2{font-size:clamp(1.5rem,2.7vw,2.8rem)}
.operation-metrics{margin:1.5rem 0;display:grid;grid-template-columns:1fr 1fr;gap:0 2rem}.operation-metrics>div{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid var(--line);padding:.8rem 0;font-size:.75rem}.operation-metrics dt{color:var(--muted)}.operation-metrics dd{margin:0;font-variant-numeric:tabular-nums}.api-project{display:block!important}
@media(max-height:760px) and (min-width:761px){.service-number{padding-top:1rem}.service-number>span{font-size:8vw}.service-progress{margin:.5rem 0 1rem}.service-kpis{margin-bottom:1rem}.service-kpis strong{font-size:1.4rem}.service-bottom h2{font-size:1.75rem}.service-description>p{font-size:.75rem}}
@media(max-width:760px){.orbit{width:10rem;height:10rem;top:6rem;right:-1rem}.service-number{padding:2.5rem 0 .5rem;display:block}.service-number>span{font-size:20vw}.service-number>div{margin:1rem 0}.service-progress{margin:.75rem 0 1.5rem}.service-progress>div{font-size:.55rem}.service-kpis{gap:.75rem;margin-bottom:2.5rem}.service-kpis strong{font-size:1.5rem}.service-kpis span{font-size:.55rem}.service-bottom h2{font-size:2.25rem}.operation-metrics{grid-template-columns:1fr}}
@media(min-width:761px){.introduction .intro-main{position:static}.introduction .orbit{top:3.5rem;right:2.5rem}}

/* Three-dimensional liquid metal. Canvas and static render occupy the same box. */
.orbit{isolation:isolate;overflow:visible}.metal-canvas,.metal-fallback{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:contain;pointer-events:none}.metal-canvas{opacity:0}.metal-ready .metal-canvas{opacity:1}.metal-ready .metal-fallback{visibility:hidden}
@media(min-width:761px){.introduction .orbit{width:34vw;height:34vw;max-width:30rem;max-height:30rem;right:1.5rem;top:3rem}}
