/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.relative{position:relative}.start{inset-inline-start:var(--spacing)}.table{display:table}}:root{--ink:lab(6.17279% -.567697 -3.32906);--muted:lab(43.1162% -1.31977 -6.53112);--line:lab(86.0595% -.805348 -3.66503);--surface:lab(98.2523% -.330776 -1.47091);--blue:lab(55.5865% 3.84134 -68.2778);--deep:lab(2.42233% -.291199 -5.29685)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:5rem}body{color:var(--ink);background:var(--surface);font-family:var(--font-geist), "PingFang SC", "Microsoft YaHei", sans-serif;-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.scroll-progress{z-index:50;transform-origin:0;background:var(--blue);width:100%;height:3px;animation:linear page-progress;animation-timeline:scroll();position:fixed;inset:0 auto auto 0;transform:scaleX(0)}@keyframes page-progress{to{transform:scaleX(1)}}.site-header{z-index:20;justify-content:space-between;align-items:center;width:100%;padding:2rem clamp(1.25rem,4vw,4rem);display:flex;position:absolute;top:0;left:0}.brand{gap:.7rem;font-weight:650;display:flex}.brand span:last-child{color:var(--muted);font-weight:450}.site-header nav{gap:clamp(1rem,3vw,2.5rem);font-size:.94rem;display:flex}.site-header nav a{position:relative}.site-header nav a:after{content:"";background:currentColor;height:1px;transition:right .35s cubic-bezier(.22,1,.36,1);position:absolute;bottom:-.35rem;left:0;right:100%}.site-header nav a:hover:after{right:0}.site-header nav a:focus-visible:after{right:0}.hero{background:lab(98.2482% -.492543 -2.2043);grid-template-columns:minmax(0,.84fr) minmax(360px,1.16fr);align-items:center;gap:clamp(2rem,5vw,6rem);min-height:100svh;padding:8rem clamp(1.25rem,6vw,7rem) 5rem;display:grid;position:relative;overflow:hidden}.hero:before{content:"";aspect-ratio:1;background:radial-gradient(circle,lab(71.7107% -7.566 -44.2249/.32),#0000 65%);border-radius:50%;width:min(68vw,950px);position:absolute;top:-22vw;right:-18vw}.hero-copy{z-index:2;position:relative}.year{color:var(--muted);margin:0 0 1.4rem;font-size:clamp(.9rem,1.2vw,1.05rem)}h1{letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:clamp(3.5rem,7.2vw,6rem);line-height:.96}h1 span{color:var(--blue);font-weight:450}.intro{color:lab(26.8722% -1.24574 -6.49819);text-wrap:pretty;max-width:39rem;margin:2rem 0;font-size:clamp(1rem,1.45vw,1.18rem);line-height:1.8}.primary-link{border:1px solid var(--ink);border-radius:999px;align-items:center;gap:1rem;padding:.9rem 1.25rem;font-weight:620;transition:color .25s,background .25s,transform .25s;display:inline-flex}.primary-link:hover{color:#fff;background:var(--ink);transform:translateY(-2px)}.hero-art{z-index:1;perspective:1200px;min-height:min(52vw,620px);position:relative}.hero-frame{background:#fff;margin:0;animation:1.15s cubic-bezier(.16,1,.3,1) both frame-in;position:absolute;overflow:hidden;box-shadow:0 8px 8px lab(12.8835% -1.38558 -10.5986/.13)}.hero-frame img{object-fit:cover;width:100%;height:100%}.frame-back{width:72%;animation-delay:.12s;top:4%;right:0;transform:rotate(5deg)}.frame-front{width:84%;bottom:5%;left:0;transform:rotate(-4deg)}@keyframes frame-in{0%{opacity:0;clip-path:inset(0 100% 0 0);translate:0 2rem}to{opacity:1;clip-path:inset(0);translate:0}}.orbit{border:1px solid lab(55.5865% 3.84134 -68.2778/.35);border-radius:50%;position:absolute}.orbit-one{aspect-ratio:1;width:58%;bottom:-2%;right:-5%}.orbit-two{aspect-ratio:1;width:32%;bottom:11%;right:7%}.scroll-note{color:var(--muted);font-size:.8rem;position:absolute;bottom:1.7rem;left:clamp(1.25rem,6vw,7rem)}.about,.work-index{grid-template-columns:minmax(280px,.9fr) minmax(320px,1.1fr);gap:clamp(3rem,9vw,10rem);padding:clamp(6rem,12vw,11rem) clamp(1.25rem,8vw,10rem);display:grid}.about{background:#fff}.section-label{color:var(--blue);margin:0 0 1.5rem;font-weight:620}h2{letter-spacing:-.035em;text-wrap:balance;margin:0;font-size:clamp(2.2rem,4.7vw,4.4rem);line-height:1.12}.about-copy{align-self:end;max-width:43rem}.about-copy>p:first-child{color:lab(24.5441% -1.33115 -7.19838);margin:0;font-size:clamp(1.05rem,1.55vw,1.3rem);line-height:1.85}.skills{border-top:1px solid var(--line);color:var(--muted);margin:2rem 0 0;padding-top:1.25rem}.work-index{color:#fff;background:var(--deep)}.work-index .section-label{color:lab(68.1054% -6.30468 -47.7332)}.chapter-list{flex-direction:column;display:flex}.chapter-list a{border-bottom:1px solid lab(100% 0 0/.16);grid-template-columns:2rem minmax(0,1fr) auto 1.5rem;align-items:center;gap:1rem;padding:1.4rem 0;transition:color .25s,padding .3s cubic-bezier(.22,1,.36,1);display:grid}.chapter-list a:hover{color:lab(73.9364% -6.90875 -47.837);padding-left:.65rem}.chapter-list a>span:first-child,.chapter-list small{color:lab(67.487% -1.16554 -5.47484);font-weight:450}.chapter-list strong{font-size:clamp(1.05rem,1.6vw,1.32rem)}.portfolio{background:lab(1.53425% -.213236 -2.70513);padding:clamp(3rem,6vw,6rem) clamp(.65rem,3vw,3rem) 8rem}.portfolio-heading{color:lab(70.9792% -.799447 -3.66181);justify-content:space-between;padding:0 .25rem 2rem;font-size:.86rem;display:flex}.portfolio-heading p{margin:0}.portfolio-page{max-width:1800px;margin:0 auto clamp(1.5rem,4vw,4rem);scroll-margin-top:1.5rem}.portfolio-page a{background:#fff;display:block;overflow:hidden;box-shadow:0 8px 8px lab(0% 0 0/.24)}.portfolio-page img{width:100%;height:auto;transition:transform .7s cubic-bezier(.16,1,.3,1)}.portfolio-page a:hover img{transform:scale(1.006)}.portfolio-page figcaption{color:lab(55.8939% -.93782 -4.38266);text-align:right;margin-top:.7rem;font-size:.75rem}footer{background:#fff;flex-direction:column;justify-content:center;min-height:68svh;padding:clamp(5rem,10vw,10rem) clamp(1.25rem,8vw,10rem);display:flex}footer>p{color:var(--muted);margin:0 0 1rem;font-size:clamp(1rem,1.4vw,1.2rem)}footer>a{letter-spacing:-.04em;border-bottom:.06em solid;width:fit-content;font-size:clamp(2rem,6vw,5.7rem);font-weight:650}.footer-meta{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:2rem;margin-top:clamp(5rem,10vw,9rem);padding-top:1.4rem;display:flex}:focus-visible{outline:3px solid var(--blue);outline-offset:4px}@media (max-width:820px){.site-header{padding-top:1.25rem}.brand span:last-child{display:none}.hero{grid-template-columns:1fr;align-content:center;padding-top:7rem}.hero-art{min-height:50vw}.frame-back{width:67%}.frame-front{width:80%}.about,.work-index{grid-template-columns:1fr;gap:3.5rem}.chapter-list a{grid-template-columns:1.7rem minmax(0,1fr) 1.2rem}.chapter-list small{display:none}footer>a{font-size:clamp(1.65rem,7vw,3rem)}}@media (max-width:520px){.site-header nav{gap:1rem;font-size:.85rem}.hero{min-height:94svh;padding-bottom:4rem}.hero-art{min-height:56vw}.intro br,.scroll-note{display:none}.about,.work-index{padding-left:1.25rem;padding-right:1.25rem}.portfolio{padding-left:.35rem;padding-right:.35rem}.portfolio-page{margin-bottom:1.35rem}.footer-meta{flex-direction:column}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.scroll-progress{display:none}}
