*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }
/* ! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com */*,:after,:before{border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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{text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--font-mono),"Fira Code","Fira Mono",Menlo,Consolas,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.sr-only{padding:0;margin:-1px;clip:rect(0,0,0,0);border-width:0}.\!visible{visibility:visible!important}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.block{display:block}.inline{display:inline}.flex{display:flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.grow{flex-grow:1}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-width:1px}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 1px 2px -1px rgba(0,0,0,.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px)}.blur,.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in{transition-timing-function:cubic-bezier(.4,0,1,1)}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}:root{--panel-w:340px;--card-radius:10px;--ease-spring:cubic-bezier(0.16,1,0.3,1);--ease-out:cubic-bezier(0.0,0.0,0.2,1);--ease-bounce:cubic-bezier(0.5,0,0.25,1.12);--font-serif:var(--font-junicode),"Junicode",serif;--font:var(--font-serif),"Instrument Serif",serif;--font-display:var(--font-serif),"Instrument Serif",serif;--font-heading:var(--font-serif),"Instrument Serif",serif}:root,:root[data-theme=light]{color-scheme:light;--bg:#fff;--surface:#fff;--surface-muted:#f2f2f2;--text:#1a1a18;--text-soft:#55554f;--text-muted:#666;--text-subtle:#6b6b6b;--border:rgba(0,0,0,.08);--border-strong:rgba(0,0,0,.14);--line:#e2ddd5;--accent:#355a4b;--accent-soft:rgba(53,90,75,.18);--on-accent:#fff;--shadow:0 4px 18px rgba(0,0,0,.08);--texture-base:transparent;--texture-image:url(/textures/paper-grain.webp);--texture-size:900px;--texture-opacity:0.055;--texture-blend:normal;--texture-filter:brightness(1.9);--cursor:var(--accent);--cursor-pill-bg:var(--accent);--cursor-pill-text:#fff;--cursor-blend:multiply;--cursor-glow:none;--accent-bright:#4b7362;--accent-hover:#29473b;--accent-light:#d0ded8;--accent-faint:#ebf2ef;--panel-bg:#f2f2f2;--panel-inset:#e8e8e8;--panel-border:#dcdcdc;--nav-bg:hsla(0,0%,100%,.88);--shadow-card:0 1px 3px rgba(26,26,24,.05),0 4px 16px rgba(26,26,24,.04);--shadow-hover:0 12px 40px rgba(26,26,24,.13),0 4px 12px rgba(26,26,24,.08)}:root[data-theme=dark]{color-scheme:dark;--bg:#121211;--surface:#1a1a19;--surface-muted:#232322;--text:#ecebe7;--text-soft:#c2c1bb;--text-muted:#9a9993;--text-subtle:#8a8984;--border:hsla(0,0%,100%,.08);--border-strong:hsla(0,0%,100%,.14);--line:#2e2e2b;--accent:#7fbfa6;--accent-soft:rgba(127,191,166,.2);--on-accent:#121211;--shadow:0 4px 18px rgba(0,0,0,.4);--texture-base:transparent;--texture-image:url(/textures/paper-grain-dark.webp);--texture-size:900px;--texture-opacity:0.36;--texture-blend:soft-light;--texture-filter:none;--cursor:#cfe8dd;--cursor-pill-bg:#cfe8dd;--cursor-pill-text:#121211;--cursor-blend:normal;--cursor-glow:0 0 12px rgba(207,232,221,.35);--accent-bright:#93cdb6;--accent-hover:#a3d6c2;--accent-light:#26362f;--accent-faint:#1a2420;--panel-bg:#181817;--panel-inset:#20201f;--panel-border:#2e2e2b;--nav-bg:rgba(18,18,17,.88);--shadow-card:0 1px 3px rgba(0,0,0,.3),0 4px 16px rgba(0,0,0,.25);--shadow-hover:0 12px 40px rgba(0,0,0,.5),0 4px 12px rgba(0,0,0,.35)}:root{--background:var(--bg);--background-accent:var(--surface-muted);--ink:var(--text);--color-text:var(--text);--ink-60:color-mix(in srgb,var(--text) 60%,transparent);--ink-40:color-mix(in srgb,var(--text) 40%,transparent);--ink-12:color-mix(in srgb,var(--text) 12%,transparent);--ink-06:color-mix(in srgb,var(--text) 6%,transparent);--ink-muted:var(--text-muted);--ink-soft:var(--text-soft);--green:var(--accent);--color-green:var(--accent);--green-hover:var(--accent-hover);--green-bright:var(--accent-bright);--green-light:var(--accent-light);--green-faint:var(--accent-faint);--green-border:color-mix(in srgb,var(--accent) 25%,transparent)}html.theme-fading,html.theme-fading :not(svg *,.slot-row *){transition:background-color .2s ease,color .2s ease,border-color .2s ease!important}body:before{position:fixed;background-color:var(--texture-base)}.side-panel:before,body:before{content:"";inset:0;z-index:-1;pointer-events:none;background-image:var(--texture-image);background-repeat:repeat;background-size:var(--texture-size);opacity:var(--texture-opacity);mix-blend-mode:var(--texture-blend);filter:var(--texture-filter)}.side-panel:before{position:absolute}*,:after,:before{box-sizing:border-box}*{margin:0;padding:0}html{scroll-behavior:smooth;overflow-x:hidden;max-width:100vw}body{background-color:var(--bg);color:var(--ink);font-family:var(--font-sans);font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;cursor:none;overflow-x:clip}blockquote,dd,figcaption,h1,h2,h3,h4,li,p{text-wrap:pretty}a,body,button,caption,footer,input,label,li,nav,p,select,span,textarea{font-family:var(--font-sans)}li,p,span{font-weight:400}a,button,nav,nav a,nav button{font-weight:500}footer,footer *{font-family:var(--font-sans);font-weight:300}.badge,.section-label,.tag{font-family:var(--font-sans);font-weight:500;letter-spacing:.08em}a,input,select,textarea{font-weight:400}a{color:inherit;text-decoration:none;font-family:var(--font-sans)}a,button,input,select,textarea{cursor:none}.font-serif,.heading-serif,h1,h2,h3,h4,h5,h6{font-family:var(--font-serif),"Instrument Serif",serif;letter-spacing:-.01em;font-weight:400;font-synthesis:none}.about-greeting-hi,.about-greeting-name,.case-heading,.case-title,.cs-headline,.cs-hero-title,.cs-next-title,.dict-headword,.hero-name,.hero-name-large,.section-title,h1{filter:url(#rough-edge)}:root[data-theme=dark] :is(h1,.hero-name-large,.hero-name,.dict-headword,.section-title,.about-greeting-hi,.about-greeting-name,.case-heading,.cs-headline,.cs-hero-title,.case-title,.cs-next-title){filter:url(#rough-edge-dark)}:is(.cs-phone,.sf-phone,.mockup-section) :is(h1,h2,h3){filter:none!important}:root{--selection-text:#000}:root[data-theme=dark]{--selection-text:#fff}::-moz-selection{background:transparent;color:var(--selection-text)}::selection{background:transparent;color:var(--selection-text)}[contenteditable=true]::-moz-selection,input::-moz-selection,textarea::-moz-selection{background:color-mix(in srgb,var(--accent) 18%,transparent);color:inherit}[contenteditable=true]::selection,input::selection,textarea::selection{background:color-mix(in srgb,var(--accent) 18%,transparent);color:inherit}.selection-layer{position:fixed;inset:0;z-index:9998;pointer-events:none;opacity:0;transition:opacity .26s ease;mix-blend-mode:multiply}:root[data-theme=dark] .selection-layer{mix-blend-mode:screen}.selection-layer.is-shown{opacity:1;transition-duration:.12s}.selection-box{position:absolute;top:0;left:0;border-radius:6px;background:color-mix(in srgb,var(--accent) 18%,transparent);transition:transform .14s cubic-bezier(.22,1,.36,1),width .14s cubic-bezier(.22,1,.36,1),height .14s cubic-bezier(.22,1,.36,1)}.selection-layer.is-instant .selection-box{transition:none}@media (prefers-reduced-motion:reduce){.selection-box,.selection-layer{transition:none}}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--ink-12);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--ink-40)}:focus-visible{outline:2px solid var(--green);outline-offset:3px}.label{font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-40)}.label,.tag{font-weight:500;font-family:var(--font-sans)}.tag{display:inline-flex;align-items:center;padding:.2rem .6rem;border-radius:999px;border:1px solid var(--ink-12);font-size:.65rem;letter-spacing:.01em;color:var(--ink-60);background:var(--ink-06);white-space:nowrap}.tag-green{border-color:var(--green-border);color:var(--green);background:var(--green-faint)}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.7rem 1.5rem;border-radius:6px;font-size:.82rem;font-weight:500;font-family:var(--font-sans);transition:transform .25s var(--ease-spring),background .2s,color .2s,border-color .2s,box-shadow .25s;letter-spacing:.02em}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn-primary{background:var(--ink);color:var(--bg)}.btn-primary:hover{background:var(--green);box-shadow:0 4px 16px rgba(53,94,59,.25)}.btn-outline{border:1px solid var(--ink-12);color:var(--ink)}.btn-outline:hover{border-color:var(--green);color:var(--green)}@keyframes pulse-dot{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.6}}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);animation:pulse-dot 2.4s ease-in-out infinite;flex-shrink:0}.location-badge{display:inline-flex;align-items:center;gap:6px;margin-top:.3rem}.location-text{font-family:var(--font-sans);font-size:.78rem;font-weight:300;color:var(--text-soft);letter-spacing:.04em}.hero-grid{display:grid;grid-template-columns:.7fr 2.3fr;min-height:100vh}.hero-left{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;justify-content:flex-end;padding:5rem 1.75rem 3.5rem 2.75rem;border-right:1px solid var(--ink-12);overflow:hidden}.hero-right{padding:8rem 4rem 5rem 3rem}.hero-name-large{font-family:var(--font);font-size:clamp(5.75rem,12vw,9.7rem);font-weight:400;font-style:normal;letter-spacing:-.01em;color:var(--text);line-height:1;margin-bottom:1.25rem;font-synthesis:none}.dict-block{margin-bottom:0}.dict-header{display:flex;align-items:baseline;gap:.5rem;margin-bottom:.3rem;flex-wrap:wrap}.dict-headword{font-family:var(--font-display);font-size:1.75rem;font-weight:400;font-style:normal;color:var(--ink);letter-spacing:-.01em;font-synthesis:none}.dict-headword .accent{font-family:inherit;font-size:inherit;font-weight:inherit;letter-spacing:inherit;color:var(--green-bright)}.dict-meta{font-family:var(--font-sans);font-size:.95rem;font-weight:400;font-style:normal;color:var(--text-muted)}.dict-list{list-style:none;padding:0;margin:0;counter-reset:dict-counter}.dict-list li{counter-increment:dict-counter;font-family:var(--font-display);font-size:.95rem;font-weight:400;color:var(--text);line-height:1.65;display:grid;grid-template-columns:1.6rem 1fr;font-synthesis:none}.dict-list li:before{content:counter(dict-counter) ".";font-family:var(--font-sans);font-size:.95rem;font-weight:400;color:var(--text-muted)}.definition-line{cursor:none}.def-icon{display:inline;margin-left:.4rem;opacity:0;font-size:.85em;transition:opacity .22s ease,transform .22s ease;transform:translateY(2px);pointer-events:none}.definition-line:hover .def-icon{opacity:1;transform:translateY(0)}.status-line{display:flex;align-items:center;gap:6px;margin:.5rem 0;min-height:1.4em}.status-dot{font-size:.45rem;color:var(--accent);flex-shrink:0;line-height:1}.status-text{font-family:var(--font-sans);font-size:.8rem;color:var(--ink-soft);transition:opacity .3s ease}.status-text.fade{opacity:0}.dict-list .dict-bio{position:relative;margin-top:.9rem}.dict-list .dict-bio:after{content:"";position:absolute;top:-.5rem;left:0;width:32px;height:1px;background:var(--line)}.bio-body{font-family:var(--font-sans);font-weight:400;color:inherit}@keyframes locationBlink{0%,to{opacity:1}50%{opacity:.25}}.hero-name{font-family:var(--font);font-size:clamp(2.4rem,3.7vw,3.2rem);font-weight:400;font-style:normal;color:var(--ink);letter-spacing:-.01em;line-height:1.05;margin-top:1.25rem;margin-bottom:1rem;font-synthesis:none}.hero-bio{font-family:var(--font-sans);font-size:.9rem;font-weight:300;line-height:1.75;color:var(--ink-60);max-width:34ch}.hero-scroll-hint{margin-top:auto;padding-top:2rem;font-size:.72rem;color:var(--ink-40);display:flex;align-items:center;gap:.5rem;letter-spacing:.06em}.work-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:2rem}.work-count{font-size:.72rem;color:var(--ink-40);font-family:var(--font-sans);letter-spacing:.05em}.masonry-grid{-moz-columns:2;column-count:2;-moz-column-gap:1.25rem;column-gap:1.25rem}.masonry-grid>*{-moz-column-break-inside:avoid;break-inside:avoid;margin-bottom:1.25rem}.card{border-radius:var(--card-radius);border:1px solid var(--border);box-shadow:0 1px 4px rgba(0,0,0,.06);background:var(--surface);overflow:hidden;position:relative;display:flex;flex-direction:column}.card:hover .card-image-inner{transform:scale(1.03)}.card-img{overflow:hidden;position:relative}.card-img-inner{width:100%;height:100%;transition:transform .6s var(--ease-spring)}.card-body{padding:1.1rem 1.3rem 1.3rem}.card-meta{display:flex;align-items:center;justify-content:space-between;margin-bottom:.6rem}.card-title{font-family:var(--font-display);font-size:1.5rem;font-weight:400;line-height:1.35;margin-bottom:.4rem;font-synthesis:none}.card-desc{font-size:.8rem;line-height:1.65;color:var(--ink-60);margin-bottom:.9rem;font-family:var(--font-sans)}.card-tags{gap:.35rem}.card-footer{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.3rem;border-top:1px solid var(--ink-06);background:color-mix(in srgb,var(--surface) 50%,transparent)}.card-org{font-size:.72rem;font-weight:500;color:var(--ink-60)}.card-period{font-size:.68rem;color:var(--ink-40)}.card-arrow{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--ink-12);color:var(--ink-60);font-size:.8rem;transition:background .2s,color .2s,border-color .2s,transform .2s}.card:hover .card-arrow{background:var(--green);color:var(--on-accent);border-color:var(--green);transform:rotate(45deg)}.page-wrap{padding-top:6rem}.section{padding:5rem 0}.section-flow{margin-top:var(--space-section)}.container{max-width:1200px;margin:0 auto;padding:0 3rem}.container-narrow{max-width:760px;margin:0 auto;padding:0 3rem}.section-eyebrow{font-size:.65rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--green);margin-bottom:.75rem;font-family:var(--font-sans)}.section-title{font-family:var(--font-display);font-size:var(--about-heading);font-weight:400;letter-spacing:-.01em;line-height:1.15;text-wrap:balance;font-synthesis:none}.section-title em{font-style:italic;color:var(--green-bright)}.timeline{position:relative;padding-left:2rem}.timeline:before{content:"";position:absolute;left:7px;top:8px;bottom:0;width:1px;background:linear-gradient(to bottom,var(--green-border),transparent)}.timeline-item{position:relative;margin-bottom:2.5rem;opacity:0;transform:translateY(20px);transition:opacity .6s var(--ease-spring),transform .6s var(--ease-spring)}.timeline-item:last-child{margin-bottom:0}.timeline-item.visible{opacity:1;transform:translateY(0)}.timeline-dot{position:absolute;left:-2rem;top:6px;width:15px;height:15px;border-radius:50%;background:var(--green-faint);border:2px solid var(--green);z-index:1;transition:transform .3s,background .3s}.timeline-item:hover .timeline-dot{background:var(--green);transform:scale(1.2)}.timeline-period{font-size:.68rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--green);margin-bottom:.3rem;font-family:var(--font-sans)}.timeline-role{font-family:var(--font-serif),"Instrument Serif",serif;font-size:1.5rem;font-weight:400;margin-bottom:.15rem;font-synthesis:none}.timeline-org{font-family:var(--font-sans);font-size:.8rem;font-weight:400;color:var(--ink-60);margin-bottom:.5rem}.timeline-desc{font-size:.82rem;line-height:1.7;color:var(--ink-60);max-width:52ch}.skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem}.skill-tags{display:flex;flex-wrap:wrap;gap:.4rem}.fun-facts-panel{background:var(--ink);border-radius:16px;padding:2.5rem;color:var(--bg)}.fun-fact-item{display:flex;align-items:flex-start;gap:1rem;padding:1rem 0;border-bottom:1px solid hsla(0,0%,100%,.08)}.fun-fact-item:last-child{border-bottom:none}.fun-fact-icon{font-size:1.5rem;flex-shrink:0;width:2.5rem;text-align:center}.fun-fact-text h4{font-family:var(--font);font-size:1.15rem;font-weight:400;margin-bottom:.2rem;color:#fff;font-synthesis:none}.fun-fact-text p{font-size:.78rem;color:hsla(0,0%,100%,.55);line-height:1.5}.gallery-masonry{-moz-columns:3;column-count:3;-moz-column-gap:1.25rem;column-gap:1.25rem}.gallery-masonry>*{-moz-column-break-inside:avoid;break-inside:avoid;margin-bottom:1.25rem}.design-grid{-moz-columns:3;column-count:3;-moz-column-gap:1rem;column-gap:1rem}.carousel-img{width:100%;height:auto;display:block;transition:transform .3s cubic-bezier(.16,1,.3,1),opacity .3s ease}.carousel-img.sliding-left{transform:translateX(-8px);opacity:0}.carousel-img.sliding-right{transform:translateX(8px);opacity:0}.gallery-item{border-radius:var(--card-radius);overflow:hidden;border:1px solid var(--ink-12);cursor:none;transition:transform .4s var(--ease-spring),box-shadow .4s var(--ease-spring)}.gallery-item:hover{transform:translateY(-5px);box-shadow:var(--shadow-hover)}.gallery-item:hover .gallery-img{transform:scale(1.04)}.gallery-img-wrap{overflow:hidden}.gallery-img{width:100%;display:block;transition:transform .6s var(--ease-spring)}.gallery-caption{padding:.8rem 1rem 1rem;background:var(--surface)}.gallery-caption-title{font-family:var(--font-display);font-size:1.35rem;font-weight:400;letter-spacing:-.01em;margin-bottom:.2rem;font-synthesis:none}.mockup-section{margin-bottom:5rem}.mockup-section:last-child{margin-bottom:0}.mockup-section-label{font-family:var(--font-sans);font-weight:500;font-size:.65rem;letter-spacing:.08em;text-transform:uppercase;color:var(--green);margin-bottom:1.5rem}.mockup-stack-web{display:flex;flex-direction:column;gap:4rem}.mockup-stack-web>*{width:100%}.mockup-link{display:block;cursor:none}.mockup-meta{padding:.9rem .2rem 0}.mockup-title{font-family:var(--font-serif),"Instrument Serif",serif;font-size:1.5rem;color:var(--text);margin-bottom:.2rem;font-weight:400;font-synthesis:none}.mockup-label{font-family:var(--font-sans);font-size:.65rem;text-transform:uppercase;font-weight:500;letter-spacing:.08em;color:var(--text-muted)}.browser-frame{border:1px solid var(--border);border-radius:12px;overflow:hidden}.browser-bar,.browser-frame{background:var(--background-accent)}.browser-bar{height:32px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 10px;gap:8px}.browser-dots{display:flex;gap:6px}.browser-dots span{width:8px;height:8px;border-radius:50%;background:var(--line)}.browser-url{justify-self:center;background:var(--surface);border-radius:999px;padding:2px 14px;font-family:var(--font-sans);font-weight:400;font-size:11px;color:var(--text-subtle);white-space:nowrap}.browser-shot{aspect-ratio:16/10;overflow:hidden;background:#fff}.browser-shot img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:50% 0;object-position:50% 0;display:block;transition:object-position 4s ease;transition:object-position 4s ease,-o-object-position 4s ease}.browser-frame:hover .browser-shot img{-o-object-position:50% 100%;object-position:50% 100%}.sf-wrap{display:flex;justify-content:center}.sf-phone{position:relative;width:min(340px,100%);aspect-ratio:393/852;background:#1a1a1a;border-radius:56px;padding:10px;box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.08),0 8px 30px rgba(0,0,0,.08)}.sf-side{position:absolute;width:3px;background:#1a1a1a}.sf-side-action,.sf-side-vol-down,.sf-side-vol-up{left:-3px;border-radius:2px 0 0 2px}.sf-side-action{top:16%;height:4%}.sf-side-vol-up{top:23.5%;height:7.5%}.sf-side-vol-down{top:33%;height:7.5%}.sf-side-power{right:-3px;top:27%;height:12%;border-radius:0 2px 2px 0}.sf-screen{--sf-bg:#fff;--sf-ink:#1a1a18;--sf-muted:#737373;--sf-line:rgba(0,0,0,.08);--sf-soft:#efefef;--sf-seen:#dbdbdb;position:relative;height:100%;display:flex;flex-direction:column;overflow:hidden;background:var(--sf-bg);color:var(--sf-ink);border-radius:46px}.sf-island{position:absolute;top:10px;left:50%;transform:translateX(-50%);width:104px;height:30px;border-radius:999px;background:#000;z-index:30}.sf-status{position:relative;z-index:20;flex:0 0 46px;display:grid;grid-template-columns:1fr 104px 1fr;align-items:center;padding:4px 8px 0;color:var(--sf-ink);transition:color .2s ease}.sf-clock{justify-self:center;font-family:var(--font-sans);font-weight:600;font-size:15px;letter-spacing:-.01em;font-variant-numeric:tabular-nums}.sf-status-icons{justify-self:center;display:flex;align-items:center;gap:5px}.sf-screen-story .sf-status{color:#fff}.sf-appbar{flex:0 0 44px;display:flex;align-items:center;padding:0 14px}.sf-appbar-handle{font-family:var(--font-sans);font-weight:600;font-size:18px;letter-spacing:-.01em}.sf-appbar-icons{margin-left:auto;display:flex;gap:18px}.sf-scroll{flex:1;min-height:0;overflow:hidden auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.sf-scroll::-webkit-scrollbar{display:none}.sf-scroll-locked{overflow:hidden}.sf-tray{display:flex;gap:12px;padding:10px 12px;border-bottom:1px solid var(--sf-line);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;list-style:none}.sf-tray::-webkit-scrollbar{display:none}.sf-tray-item{flex:0 0 70px;display:flex;flex-direction:column;align-items:center;gap:4px}.sf-tray-btn{display:contents;color:inherit}.sf-tray-ring{display:block;width:70px;height:70px;padding:2px;border-radius:50%;background:linear-gradient(45deg,#feda75,#fa7e1e,#d62976,#962fbf,#4f5bd5);transition:background .3s ease}.sf-tray-seen{background:var(--sf-seen)}.sf-tray-gap{padding:2px;background:var(--sf-bg)}.sf-tray-avatar,.sf-tray-gap{display:block;width:100%;height:100%;border-radius:50%}.sf-tray-avatar{overflow:hidden;background:var(--sf-soft)}.sf-story-avatar img,.sf-story-avatar video,.sf-tray-avatar img,.sf-tray-avatar video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.sf-tray-btn:focus-visible{outline:none}.sf-tray-btn:focus-visible .sf-tray-ring{outline:2px solid var(--accent);outline-offset:2px}.sf-tray-me{position:relative;display:block;width:70px;height:70px;padding:4px}.sf-tray-plus{position:absolute;right:2px;bottom:2px;width:22px;height:22px;display:grid;place-items:center;border-radius:50%;background:#0095f6;border:2px solid var(--sf-bg)}.sf-tray-name{max-width:70px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-sans);font-size:12px;color:var(--sf-ink)}.sf-tabbar{flex:0 0 auto;display:flex;align-items:center;justify-content:space-around;padding:10px 8px 26px;border-top:1px solid var(--sf-line);background:var(--sf-bg)}.sf-tab-me{display:block;width:24px;height:24px}.sf-tab-me .sf-avatar-xs{padding:2px;box-shadow:0 0 0 1px var(--sf-line)}.sf-home-indicator{position:absolute;bottom:8px;left:50%;transform:translateX(-50%);width:134px;height:5px;border-radius:999px;background:var(--sf-ink);opacity:.85;z-index:20;transition:background .2s ease}.sf-avatar,.sf-screen-story .sf-home-indicator{background:#fff}.sf-avatar{display:block;width:100%;height:100%;padding:8px;border-radius:50%;overflow:hidden}.sf-avatar-sm,.sf-avatar-xs{padding:3px}.sf-avatar img{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block}.sf-avatar-sm,.sf-avatar-xs{flex-shrink:0}.sf-post{border-bottom:1px solid var(--sf-line)}.sf-post:last-child{border-bottom:none}.sf-post-head{display:flex;align-items:center;gap:8px;padding:9px 12px}.sf-post-head .sf-avatar-sm{width:28px;height:28px}.sf-post-handle{font-family:var(--font-sans);font-weight:600;font-size:12px}.sf-post-more{margin-left:auto;font-size:12px}.sf-media{position:relative;aspect-ratio:4/5;overflow:hidden;background:#000;touch-action:pan-y}.sf-track{display:flex;height:100%;will-change:transform}.sf-slide{flex:0 0 100%;height:100%}.sf-slide img,.sf-slide video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.sf-arrow{position:absolute;top:50%;transform:translateY(-50%);width:26px;height:26px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:hsla(0,0%,100%,.75);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding:0;z-index:2;opacity:0;transition:opacity .15s ease}.sf-arrow-l{left:10px}.sf-arrow-r{right:10px}.sf-media:hover .sf-arrow{opacity:1}@media (hover:none){.sf-arrow{opacity:1}}.sf-burst{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;animation:sf-burst .9s ease forwards}@keyframes sf-burst{0%{opacity:0;transform:scale(0)}15%{opacity:1;transform:scale(1.2)}30%{opacity:1;transform:scale(.95)}45%{opacity:1;transform:scale(1)}80%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.1)}}.sf-burst svg{filter:drop-shadow(0 2px 8px rgba(0,0,0,.25))}.sf-dots{display:flex;justify-content:center;gap:4px;padding:8px 0 0}.sf-dot{width:5px;height:5px;border-radius:50%;background:#d4d4d4;transition:background .2s ease}.sf-dot-on{background:var(--green)}.sf-actions{display:flex;align-items:center;gap:12px;padding:9px 12px 2px}.sf-icon{display:inline-flex;padding:0;border:none;background:none;color:inherit;line-height:0}.sf-save{margin-left:auto}.sf-heart svg path{transition:fill .3s cubic-bezier(.34,1.56,.64,1),stroke .3s cubic-bezier(.34,1.56,.64,1)}.sf-liked svg path{fill:#ed4956;stroke:#ed4956}.sf-pop{animation:sf-heart-pop .3s cubic-bezier(.34,1.56,.64,1)}@keyframes sf-heart-pop{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.sf-likes{padding:4px 12px 0}.sf-likes,.sf-num,.sf-num-in,.sf-num-out{font-family:var(--font-sans);font-weight:600;font-size:12px}.sf-num{position:relative;overflow:hidden;vertical-align:bottom;line-height:1.35}.sf-num,.sf-num-in{display:inline-block}.sf-num-in{animation:sf-num-in .2s ease forwards}.sf-num-out{position:absolute;left:0;top:0;display:inline-block;animation:sf-num-out .2s ease forwards}@keyframes sf-num-in{0%{transform:translateY(100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes sf-num-out{0%{transform:translateY(0);opacity:1}to{transform:translateY(-100%);opacity:0}}.sf-caption{font-family:var(--font-sans);font-weight:400;font-size:12px;line-height:1.5;padding:3px 12px 0}.sf-caption strong{font-weight:600}.sf-time{font-family:var(--font-sans);font-weight:400;font-size:11px;color:var(--sf-muted);padding:2px 12px 12px}.sf-story{position:absolute;inset:0;z-index:10;padding-top:46px;background:#000;border-radius:inherit;overflow:hidden;overscroll-behavior:contain;display:flex;flex-direction:column;animation:sf-story-in cubic-bezier(.22,1,.36,1) forwards}.sf-story-closing{animation-name:sf-story-out}@keyframes sf-story-in{0%{transform:scale(.15);opacity:0;border-radius:50%}to{transform:scale(1);opacity:1;border-radius:inherit}}@keyframes sf-story-out{0%{transform:scale(1);opacity:1;border-radius:inherit}to{transform:scale(.15);opacity:0;border-radius:50%}}.sf-story-bars{position:absolute;top:52px;left:14px;right:14px;display:flex;gap:3px;z-index:3}.sf-bar{flex:1;height:2px;border-radius:2px;background:hsla(0,0%,100%,.35);overflow:hidden}.sf-bar-fill{display:block;height:100%;width:0;background:#fff}.sf-bar-done{width:100%}.sf-bar-run{animation:sf-fill linear forwards}@keyframes sf-fill{0%{width:0}to{width:100%}}.sf-story-head{position:absolute;top:62px;left:12px;right:12px;display:flex;align-items:center;gap:6px;z-index:4;color:#fff;font-family:var(--font-sans);font-size:11px;text-shadow:0 1px 3px rgba(0,0,0,.45)}.sf-story-avatar{flex-shrink:0;width:26px;height:26px;margin-right:2px;border-radius:50%;overflow:hidden;background:#333}.sf-story-handle{font-weight:600}.sf-story-time{font-weight:400;opacity:.7;margin-right:auto}.sf-story-close,.sf-story-sound{position:relative;z-index:5;display:inline-flex;align-items:center;background:none;border:none;color:#fff;padding:0 2px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.sf-story-close{font-size:20px;line-height:1}.sf-story-sound+.sf-story-close{margin-left:4px}.sf-story-media{position:relative;flex:1;min-height:0;background:#000}.sf-story-slide{position:absolute;inset:0;opacity:0;transition:opacity .2s ease}.sf-story-on{opacity:1}.sf-story-slide img,.sf-story-slide video{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center;display:block}.sf-story-half{position:absolute;top:96px;bottom:84px;width:50%;border:none;background:none;padding:0;z-index:2}.sf-story-prev{left:0}.sf-story-next{right:0}.sf-story-bar{position:relative;z-index:4;flex:0 0 84px;height:84px;background:#000;padding:8px 12px 30px;display:flex;align-items:center;gap:12px}.sf-reply{flex:1;min-width:0;height:38px;padding:0 14px;border-radius:999px;border:1px solid hsla(0,0%,100%,.5);background:transparent;color:#fff;font-family:var(--font-sans);font-weight:400;font-size:13px;outline:none}.sf-reply::-moz-placeholder{color:hsla(0,0%,100%,.7)}.sf-reply::placeholder{color:hsla(0,0%,100%,.7)}.sf-reply:focus{border-color:hsla(0,0%,100%,.85)}.sf-bar-icon{display:inline-flex;flex-shrink:0;padding:0;border:none;background:none;line-height:0}.sf-bar-icon svg path{transition:fill .3s cubic-bezier(.34,1.56,.64,1),stroke .3s cubic-bezier(.34,1.56,.64,1)}.sf-bar-liked svg path{fill:#ed4956;stroke:#ed4956}.sf-sent{position:absolute;left:50%;bottom:96px;transform:translateX(-50%);z-index:6;background:hsla(0,0%,100%,.92);color:#1a1a1a;font-family:var(--font-sans);font-weight:500;font-size:12px;padding:6px 14px;border-radius:999px;animation:sf-sent 1.2s ease forwards;pointer-events:none}@keyframes sf-sent{0%{opacity:0;transform:translateX(-50%) translateY(6px)}12%{opacity:1;transform:translateX(-50%) translateY(0)}70%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.sf-story,.sf-story-closing{animation:none}.sf-burst,.sf-num-in,.sf-num-out,.sf-pop{animation-duration:1ms}}.book-comment{position:absolute;bottom:calc(100% + 16px);left:50%;transform:translateX(-50%) translateY(4px);background:var(--text);color:var(--bg);font-family:var(--font-sans);font-weight:400;font-size:.75rem;padding:.4rem .75rem;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;z-index:20}.book-cover-wrap.comment-visible .book-comment,.book-cover-wrap:hover .book-comment{opacity:1;transform:translateX(-50%) translateY(0)}.book-covers-row{display:flex;flex-direction:row;gap:16px;align-items:flex-end;overflow:visible;padding-bottom:2rem}.book-cover-wrap{flex-shrink:0;cursor:none;position:relative}.book-cover{width:150px;height:210px;border-radius:4px;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:1rem;box-shadow:4px 6px 20px rgba(26,26,24,.18),1px 2px 4px rgba(26,26,24,.12);transition:transform .3s ease,box-shadow .3s ease;position:relative}.book-cover:hover{transform:translateY(-8px);box-shadow:6px 16px 32px rgba(26,26,24,.28),2px 4px 8px rgba(26,26,24,.15)}.book-cover-title{font-family:var(--font-display);font-style:italic;font-size:1rem;color:hsla(0,0%,100%,.9);text-align:center;line-height:1.4;font-weight:400;font-synthesis:none}.games-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.game-card{background:var(--surface);border:1px solid var(--line);border-radius:0;overflow:hidden;position:relative}.game-card-dot{width:8px;height:8px;border-radius:50%;margin-bottom:.9rem}.game-card-name{font-family:var(--font-sans);font-size:.88rem;font-weight:600;color:var(--ink);margin-bottom:.4rem}.game-card-desc{font-family:var(--font-sans);font-weight:400;font-size:.85rem;color:var(--text-soft);line-height:1.55}.site-foot{padding:1.5rem 2rem}.site-foot-row{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.5rem 1.5rem;font-family:var(--font-sans);font-size:13px;font-weight:400;color:var(--text-subtle)}.site-foot-time{display:inline-flex;align-items:center}.site-foot-dot{width:6px;height:6px;border-radius:50%;background:var(--green);margin-right:.55rem;flex-shrink:0}.site-foot-links{display:flex;align-items:center;gap:.5rem}.site-foot-links a{font-family:var(--font-sans);font-size:13px;font-weight:400;color:var(--text-subtle);text-decoration:none;transition:color .18s ease}.site-foot-links a:hover{color:var(--text)}.site-foot-sep{color:var(--text-subtle)}@media (max-width:560px){.site-foot{padding:1.5rem}.site-foot-row{justify-content:flex-start}}.cursor{--cursor-spring:cubic-bezier(0.22,1.2,0.36,1);position:fixed;top:0;left:0;pointer-events:none;z-index:100000;will-change:transform;transition:opacity .2s ease}.cursor.is-handoff{transition:none}.cursor-body{position:absolute;top:0;left:0;translate:-50% -50%;overflow:hidden;border-radius:999px;background-color:var(--cursor);mix-blend-mode:var(--cursor-blend);box-shadow:var(--cursor-glow);color:var(--cursor-pill-text);transition:width .38s var(--cursor-spring),height .38s var(--cursor-spring),border-radius .38s var(--cursor-spring),background-color .2s ease,box-shadow .2s ease,scale .15s ease}.cursor.is-pill .cursor-body{background-color:var(--cursor-pill-bg);mix-blend-mode:normal;box-shadow:none}.cursor.is-handoff .cursor-body{transition:none}.cursor-label{position:absolute;top:50%;left:50%;translate:-50% -50%;display:flex;width:-moz-max-content;width:max-content;align-items:center;gap:8px;padding:0 18px;font-family:var(--font-sans);font-weight:600;font-size:.85rem;letter-spacing:.04em;white-space:nowrap;opacity:0;scale:.85;transition:opacity .12s ease,scale .12s ease}.cursor-label svg{flex:none}.cursor-label.is-shown{opacity:1;scale:1;transition:opacity .18s ease .14s,scale .18s var(--cursor-spring) .14s}.cursor.is-switching .cursor-label.is-shown{transition-delay:40ms}.cursor-measure{position:fixed;top:-200px;left:0;translate:none;visibility:hidden;opacity:1;scale:1}.brand-home{display:block;width:-moz-fit-content;width:fit-content;margin-bottom:.3rem;cursor:none;transform-origin:50% 100%;will-change:transform}.brand-home:focus-visible,.brand-home:hover{animation:brand-squish .62s var(--ease-out)}@keyframes brand-squish{0%{transform:scale(1) translateY(0)}28%{transform:scale(1.14,.86) translateY(0)}52%{transform:scale(.93,1.1) translateY(-4px)}74%{transform:scale(1.05,.96) translateY(0)}88%{transform:scale(.98,1.02) translateY(0)}to{transform:scale(1) translateY(0)}}@media (prefers-reduced-motion:reduce){.brand-home:focus-visible,.brand-home:hover{animation:none;opacity:.75}}.panel-top{display:flex;align-items:center;gap:.5rem;margin-bottom:.3rem}.panel-top .brand-home{margin-bottom:0}.theme-toggle{position:relative;width:32px;height:32px;flex-shrink:0;border:0;border-radius:50%;background:transparent;color:var(--text);cursor:none;transition:background-color .15s ease}.theme-toggle:hover{background:var(--surface-muted)}.theme-toggle:disabled{cursor:none}.theme-wash{position:fixed;inset:0;z-index:-1;pointer-events:none;transition:opacity .3s ease}.theme-wash.is-fading{opacity:0}.theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.theme-icon{position:absolute;top:50%;left:50%;margin:-9px 0 0 -9px;transition:opacity .25s ease,transform .25s var(--ease-spring)}.theme-icon-moon{opacity:0;transform:rotate(-90deg)}:root[data-theme=light] .theme-icon-sun{opacity:0;transform:rotate(90deg)}:root[data-theme=light] .theme-icon-moon{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.theme-icon{transition:none}}.nav-pill{position:fixed;top:1.25rem;left:50%;transform:translateX(-50%);z-index:1000;display:flex;align-items:center;gap:.25rem;padding:.45rem .55rem;background:var(--nav-bg);backdrop-filter:blur(16px) saturate(1.8);-webkit-backdrop-filter:blur(16px) saturate(1.8);border:1px solid var(--ink-12);border-radius:999px;box-shadow:0 2px 20px rgba(26,26,24,.08),0 1px 4px rgba(26,26,24,.05)}.nav-home,.nav-logo{font-family:var(--font-display);font-style:italic;font-weight:400;font-size:1.2rem;padding:.28rem .8rem;margin-right:.2rem;color:var(--text);transition:color .2s ease;position:relative;letter-spacing:.01em;font-synthesis:none}.nav-home:after,.nav-logo:after{content:"";position:absolute;bottom:0;left:.8rem;width:0;height:1px;background:var(--accent);transition:width .3s var(--ease-spring)}.nav-home:hover,.nav-logo:hover{color:var(--accent)}.nav-home:hover:after,.nav-logo:hover:after{width:calc(100% - 1.6rem)}.nav-divider{width:1px;height:16px;background:var(--ink-12);margin-right:.4rem}.nav-link{padding:.28rem .8rem;font-size:.78rem;font-weight:500;color:var(--text-soft);transition:color .2s;letter-spacing:.02em;font-family:var(--font-sans);position:relative}.nav-link:after{content:"";position:absolute;bottom:0;left:.8rem;width:0;height:1px;background:var(--accent);transition:width .3s var(--ease-spring)}.nav-link:hover{color:var(--accent)}.nav-link:hover:after{width:calc(100% - 1.6rem)}.nav-link.active{color:var(--ink)}.nav-link.active:after{width:calc(100% - 1.6rem);background:var(--ink)}.nav-resume{padding:.28rem .8rem;font-size:.78rem;font-weight:500;color:var(--green);font-family:var(--font-sans);letter-spacing:.02em;transition:color .2s}.nav-resume:hover{color:var(--green-hover)}.loader-root{position:fixed;inset:0;z-index:99999;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.1rem;padding-bottom:6vh;transition:opacity .42s ease}.loader-root.is-leaving{opacity:0;transition-delay:.18s}.loader-hint,.loader-name{transition:transform .42s var(--ease-spring),opacity .3s ease}.loader-root.is-leaving .loader-hint,.loader-root.is-leaving .loader-name{transform:translateY(-14px)}.loader-stage{display:flex;flex-direction:column;align-items:center}.loader-lean{position:relative;transform-origin:50% 100%;transform:translateX(var(--shift,0)) rotate(var(--lean,0deg));transition:transform .45s cubic-bezier(.22,1,.36,1)}.loader-icon{transform-origin:50% 100%;animation:loader-hop .9s cubic-bezier(.33,0,.67,1) infinite}.loader-root.is-leaving .loader-icon{animation:loader-leap .6s cubic-bezier(.3,0,.2,1) forwards}.loader-poke{display:block;padding:6px;margin:-6px;border:0;background:none;-webkit-tap-highlight-color:transparent}.loader-squish{transform-origin:50% 100%}.loader-boing{position:absolute;left:50%;bottom:100%;font-family:var(--font-hand);font-size:1.35rem;line-height:1;color:var(--accent);white-space:nowrap;pointer-events:none;animation:loader-boing .9s cubic-bezier(.22,1,.36,1) forwards}.loader-root{isolation:isolate}.loader-root:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background-color:var(--texture-base);background-image:var(--texture-image);background-repeat:repeat;background-size:var(--texture-size);opacity:calc(var(--texture-opacity) * 1.7);mix-blend-mode:var(--texture-blend);filter:var(--texture-filter)}.loader-paper{touch-action:none}.loader-sketch-canvas{position:absolute;inset:0;width:100%;height:100%}:root:not([data-theme=dark]) .loader-sketch-canvas{mix-blend-mode:multiply}.loader-sketch-name{position:relative;width:min(320px,70vw);height:auto;overflow:visible;pointer-events:none}.loader-sketch-name text{font-family:var(--font-hand);font-size:64px;fill:transparent;stroke:var(--ink);stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:900;stroke-dashoffset:900;animation:loader-write var(--write) cubic-bezier(.45,0,.25,1) .15s forwards,loader-ink .4s ease calc(var(--write) - .1s) forwards}.loader-sketch-name .loader-sketch-accent{stroke:var(--accent)}@keyframes loader-write{to{stroke-dashoffset:0}}@keyframes loader-ink{to{fill:var(--ink)}}.loader-sketch-name .loader-sketch-accent{animation:loader-ink-accent .4s ease calc(var(--write) - .1s) forwards}@keyframes loader-ink-accent{to{fill:var(--accent)}}.loader-paint{padding:0}.loader-paint-ring{position:absolute;top:calc(50% - 48px);left:calc(50% - 48px);width:96px;height:96px;overflow:visible;transition:transform .3s cubic-bezier(.22,1,.36,1)}.loader-paint.is-holding .loader-paint-ring{transform:scale(1.1)}.loader-paint-track{fill:none;stroke:var(--line);stroke-width:2px}.loader-paint-progress{fill:none;stroke:var(--accent);stroke-width:3px;stroke-linecap:round;stroke-dasharray:1 1;stroke-dashoffset:calc(1 - var(--fill, 0));transform:rotate(-90deg);transform-origin:40px 40px}.loader-paint-pool{fill:var(--accent);opacity:.8;filter:url(#loader-wash-pool);transform-box:fill-box;transform-origin:center;transform:scale(var(--fill,0))}.loader-paint-label{position:absolute;top:calc(50% + 68px);left:0;right:0;text-align:center;font-family:var(--font-hand);font-size:1.6rem;line-height:1;color:var(--text-soft);transition:opacity .2s ease}.loader-paint.is-leaving .loader-paint-label{opacity:0}.loader-paint-bloom{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.loader-paint-wash{fill:var(--accent);filter:url(#loader-wash-bloom);transform-box:fill-box;transform-origin:center;transform:scale(0)}.loader-paint-wash-light{opacity:.35}.loader-paint.is-leaving .loader-paint-wash{animation:loader-bloom var(--bloom) cubic-bezier(.3,.7,.3,1) 90ms forwards}.loader-paint.is-leaving .loader-paint-wash-light{animation-delay:0ms}.loader-paint.is-leaving{transition-delay:var(--bloom)}@keyframes loader-bloom{0%{transform:scale(.025)}to{transform:scale(1)}}.loader-hint{margin-top:-.4rem;font-family:var(--font-hand);font-size:1.1rem;color:var(--text-subtle);opacity:0}.loader-hint.is-shown{opacity:1}.loader-shadow{translate:var(--shift,0) 0;transition:translate .45s cubic-bezier(.22,1,.36,1);width:44px;height:7px;margin-top:4px;border-radius:50%;background:color-mix(in srgb,var(--text) 12%,transparent);animation:loader-shadow .9s cubic-bezier(.33,0,.67,1) infinite}.loader-name{font-family:var(--font-display);font-size:1.4rem;letter-spacing:-.01em;line-height:1;color:var(--ink-soft);animation:loader-name-in .6s var(--ease-spring) .15s both;font-weight:400;font-synthesis:none}.loader-dot,.loader-dots{font-family:inherit}.loader-dot{opacity:0}.loader-dot:first-child{animation:loader-dot-1 1s steps(1) infinite}.loader-dot:nth-child(2){animation:loader-dot-2 1s steps(1) infinite}.loader-dot:nth-child(3){animation:loader-dot-3 1s steps(1) infinite}@keyframes loader-hop{0%{transform:translateY(0) scale(1.14,.86)}18%{transform:translateY(-6px) scale(.94,1.08)}50%{transform:translateY(-30px) scale(1)}82%{transform:translateY(-6px) scale(.96,1.05)}to{transform:translateY(0) scale(1.14,.86)}}@keyframes loader-leap{0%{transform:translateY(0) scale(1.2,.8)}25%{transform:translateY(-20px) scale(.85,1.2)}to{transform:translateY(-46vh) scale(.9,1.1);opacity:0}}@keyframes loader-boing{0%{opacity:0;transform:translate(calc(-50% + var(--bx) * .3),10px) rotate(var(--btilt)) scale(.6)}20%{opacity:1;transform:translate(calc(-50% + var(--bx) * .8),-18px) rotate(var(--btilt)) scale(1.1)}to{opacity:0;transform:translate(calc(-50% + var(--bx)),-52px) rotate(var(--btilt)) scale(1)}}@keyframes loader-shadow{0%,to{transform:scaleX(1.1);opacity:1}50%{transform:scaleX(.55);opacity:.45}}@keyframes loader-dot-1{0%{opacity:0}15%,to{opacity:1}}@keyframes loader-dot-2{0%{opacity:0}40%,to{opacity:1}}@keyframes loader-dot-3{0%{opacity:0}65%,to{opacity:1}}@keyframes loader-name-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.cursor-none,html[data-custom-cursor],html[data-custom-cursor] *,html[data-custom-cursor] :after,html[data-custom-cursor] :before{cursor:none!important}html[data-custom-cursor] video:not([controls]){pointer-events:none}html[data-custom-cursor] video::-webkit-media-controls,html[data-custom-cursor] video::-webkit-media-controls-enclosure,html[data-custom-cursor] video::-webkit-media-controls-panel{cursor:none!important}.art-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1.5rem}.art-frame-wrap{cursor:none}.art-frame{background:var(--ink);border-radius:4px;padding:10px;box-shadow:0 8px 32px rgba(26,26,24,.18),0 2px 8px rgba(26,26,24,.1);transition:transform .4s var(--ease-spring),box-shadow .4s var(--ease-spring)}.art-frame-wrap:hover .art-frame{transform:translateY(-6px) rotate(-.5deg);box-shadow:0 20px 60px rgba(26,26,24,.22),0 4px 16px rgba(26,26,24,.12)}.art-mat{background:#fafaf8;padding:14px 14px 28px;display:flex;align-items:center;justify-content:center}.art-piece-canvas{width:100%;display:block}.art-label-card{margin-top:.75rem;padding:0 2px}.art-label-title{font-family:var(--font-sans);font-size:.78rem;font-weight:600;color:var(--ink);letter-spacing:-.01em}.art-label-meta{font-size:.68rem;color:var(--ink-40);margin-top:.15rem;font-style:italic}.sketch-gallery-grid img{cursor:none!important}.bookshelf-wrap{position:relative;padding-bottom:1rem}.bookshelf-surface{display:flex;align-items:flex-end;gap:.2rem;padding:1.5rem 1.5rem 0;background:linear-gradient(180deg,#f2f2f2,#e8e2d8);border-radius:8px 8px 0 0;border:1px solid var(--ink-12);border-bottom:none;min-height:180px;overflow-x:auto;overflow-y:visible}.book-spine{flex-shrink:0;display:flex;align-items:center;justify-content:center;position:relative;cursor:none;transition:transform .3s var(--ease-spring),box-shadow .3s;box-shadow:2px 0 6px rgba(26,26,24,.2),inset -2px 0 4px rgba(0,0,0,.15)}.book-spine:hover{transform:translateY(-8px);box-shadow:4px 0 16px rgba(26,26,24,.3),inset -2px 0 4px rgba(0,0,0,.15);z-index:2}.book-title-text{writing-mode:vertical-rl;transform:rotate(180deg);font-family:var(--font-sans);font-size:.62rem;font-weight:600;letter-spacing:.04em;color:hsla(0,0%,100%,.85);padding:.5rem 0;text-overflow:ellipsis;overflow:hidden;max-height:120px;white-space:nowrap}.shelf-plank{height:16px;background:linear-gradient(180deg,#c4a882,#a08060 50%,#8b6b45);border:1px solid rgba(139,107,69,.5);border-top:none;box-shadow:0 4px 12px rgba(26,26,24,.2)}.book-tooltip{bottom:calc(100% + 12px);background:var(--ink);color:var(--bg);padding:.75rem 1rem;border-radius:8px;font-size:.75rem;line-height:1.5;white-space:nowrap;max-width:220px;white-space:normal;z-index:10;pointer-events:none;box-shadow:0 8px 24px rgba(26,26,24,.3)}.book-tooltip,.book-tooltip:after{position:absolute;left:50%;transform:translateX(-50%)}.book-tooltip:after{content:"";top:100%;border:6px solid transparent;border-top:6px solid var(--ink)}.book-tooltip-title{font-weight:600;font-size:.78rem;margin-bottom:.2rem}.book-tooltip-author{color:var(--green);font-size:.7rem;margin-bottom:.4rem}.book-tooltip-note{color:hsla(0,0%,100%,.6);font-size:.7rem;font-style:italic}.cinema-wrap{border:1px solid var(--ink-12);border-radius:12px;overflow:hidden;background:var(--ink)}.cinema-marquee{background:var(--ink);padding:1.25rem 1.75rem;display:flex;align-items:center;justify-content:space-between;border-bottom:2px dashed hsla(0,0%,100%,.1)}.cinema-marquee-title{font-family:var(--font-sans);font-size:.7rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--green)}.cinema-bulbs{display:flex;gap:.4rem}.cinema-bulb{width:8px;height:8px;border-radius:50%;background:var(--green)}.cinema-bulb:nth-child(2){opacity:.5}.cinema-bulb:nth-child(3){opacity:.25}.cinema-body{padding:1.5rem 1.75rem;background:var(--surface);overflow:visible;color:var(--text)}.cinema-tickets{flex-direction:column;max-height:280px;overflow-y:auto;overflow-x:visible;margin-bottom:1.5rem}.cinema-row,.cinema-tickets{display:flex;width:100%;box-sizing:border-box}.cinema-row{align-items:baseline;gap:1rem;padding:.6rem 0;border-bottom:1px solid var(--line);overflow:visible}.cinema-row:last-child{border-bottom:none}.cinema-row-num{font-family:var(--font-sans);font-size:.65rem;color:var(--text-subtle);letter-spacing:.1em;flex-shrink:0}.cinema-row-title{font-weight:600;font-size:.85rem;color:var(--text);min-width:0;line-height:1.3}.cinema-row-from,.cinema-row-title{font-family:var(--font-sans);white-space:normal;word-break:break-word}.cinema-row-from{font-size:.75rem}.cinema-row-from,.cinema-row-note{font-weight:400;color:var(--text-soft);margin-top:.1rem}.cinema-row-note{font-family:var(--font-sans);font-size:.72rem;white-space:normal;word-break:break-word}.cinema-form{border-top:1px solid var(--ink-06);padding-top:1.25rem;display:flex;flex-direction:column;gap:.6rem}.cinema-input{padding:.6rem .9rem;border:1px solid var(--text-subtle)!important;border-radius:6px;font-size:.8rem;font-family:var(--font-sans);background:var(--surface)!important;color:var(--text)!important;outline:none;transition:border-color .2s;box-sizing:border-box;min-width:0;width:100%;max-width:100%}.cinema-input::-moz-placeholder{color:var(--text-muted)!important}.cinema-input::placeholder{color:var(--text-muted)!important}.cinema-input:focus{border-color:var(--green)!important}.cinema-form-row{display:flex;gap:.6rem;min-width:0}.guestbook{border:1px solid var(--ink-12);border-radius:12px;overflow:hidden;background:var(--surface)}.guestbook-entries{max-height:320px;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.guestbook-entry{padding:1rem 1.25rem;background:var(--bg);border-radius:8px;border:1px solid var(--ink-06)}.guestbook-entry-name{font-size:.75rem;font-weight:600;color:var(--green);margin-bottom:.25rem;font-family:var(--font-sans)}.guestbook-entry-msg{font-size:.82rem;line-height:1.55;color:var(--ink-60)}.guestbook-form{padding:1.25rem 1.5rem;border-top:1px solid var(--ink-06);display:flex;gap:.75rem;align-items:flex-end;background:color-mix(in srgb,var(--surface) 50%,transparent)}.guestbook-input{flex:1;padding:.65rem 1rem;border:1px solid var(--ink-12);border-radius:8px;font-size:.82rem;font-family:var(--font-sans);background:var(--surface);color:var(--ink);outline:none;transition:border-color .2s;resize:none}.guestbook-input:focus{border-color:var(--green)}.fun-hero{text-align:center;padding:3rem 2rem 4rem}.fun-hero h1{font-size:clamp(2.5rem,5.3vw,4.25rem);line-height:1.1;letter-spacing:-.025em}.fun-page h1{font-size:2.65rem}.fun-page h2{font-size:2.15rem}.fun-page h3{font-size:1.7rem}.fun-page .section-title{font-size:2.15rem}@media (max-width:900px){.hero-grid{grid-template-columns:1fr;min-height:auto}.hero-left{position:relative;height:auto;padding:7rem 2rem 3rem;border-right:none;border-bottom:1px solid var(--ink-12)}.hero-right{padding:3rem 2rem}.about-hero{grid-template-columns:1fr;gap:2.5rem;padding:7rem 2rem 3rem}.gallery-masonry{-moz-columns:2;column-count:2}.masonry-grid{-moz-columns:1;column-count:1}.container,.container-narrow{padding:0 1.5rem}.art-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}}@media (max-width:1024px){.design-grid{-moz-columns:2;column-count:2}}@media (max-width:768px){.design-grid{-moz-columns:1;column-count:1}}@media (max-width:600px){.gallery-masonry{-moz-columns:1;column-count:1}.nav-pill{padding:.35rem .45rem}.nav-link{padding:.22rem .6rem;font-size:.73rem}.nav-logo{font-size:.82rem;padding:.22rem .65rem}.hero-name{font-size:clamp(2.4rem,10vw,3.5rem)}.bookshelf-surface{min-height:140px}.art-gallery-grid{grid-template-columns:1fr 1fr}.cinema-form-row{flex-direction:column}.games-grid{grid-template-columns:1fr}}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.fade-up{animation:fadeUp .7s var(--ease-spring) both}.fade-up-1{animation-delay:.1s}.fade-up-2{animation-delay:.2s}.fade-up-3{animation-delay:.35s}.fade-up-4{animation-delay:.5s}.fade-up-5{animation-delay:.65s}.stagger-1{animation:fadeUp .5s ease-out both;animation-delay:0ms}.stagger-2{animation:fadeUp .5s ease-out both;animation-delay:.15s}.stagger-3{animation:fadeUp .5s ease-out both;animation-delay:.3s}.stagger-4{animation:fadeUp .5s ease-out both;animation-delay:.45s}.stagger-5{animation:fadeUp .5s ease-out both;animation-delay:.6s}.hero-location{display:flex;align-items:center;gap:.5rem;font-family:var(--font-sans);font-size:.8rem;color:var(--text-soft);margin-top:.75rem}.location-dot{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;flex-shrink:0;animation:locationBlink 2s ease-in-out infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.blink{animation:blink .9s step-start infinite}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}.typewriter-cursor{display:inline-block;width:1px;height:1em;background:var(--text);margin-left:1px;vertical-align:text-bottom;animation:cursorBlink .6s step-end infinite}.easter-toast{position:fixed;bottom:2rem;left:50%;transform:translateX(-50%) translateY(8px);background:var(--ink);color:var(--bg);padding:.85rem 1.5rem;border-radius:10px;font-size:.8rem;font-weight:500;font-family:var(--font-sans);box-shadow:0 8px 32px rgba(26,26,24,.3);z-index:9000;display:flex;align-items:center;gap:.75rem;max-width:min(400px,calc(100vw - 3rem));border:1px solid hsla(0,0%,100%,.08)}.easter-toast span.emoji{font-size:1.2rem;flex-shrink:0}.design-tabs{display:flex;gap:.25rem;padding:.35rem;background:var(--ink-06);border-radius:999px;border:1px solid var(--ink-12);width:-moz-fit-content;width:fit-content}.design-tab{padding:.4rem 1.1rem;border-radius:999px;font-size:.75rem;font-weight:500;font-family:var(--font-sans);letter-spacing:.04em;background:none;border:none;color:var(--ink-60);transition:background .25s,color .2s}.design-tab.active{background:var(--ink);color:var(--bg)}.design-tab:hover:not(.active){color:var(--ink)}html.is-navigating body{pointer-events:none}::view-transition-new(root),::view-transition-old(root){animation-duration:.25s}::view-transition-group(*){animation-duration:.45s;animation-timing-function:cubic-bezier(.22,1,.36,1)}.home-grid{display:grid;grid-template-columns:320px 1fr;gap:3rem;align-items:start;max-width:1300px;margin:0 auto;padding:5rem 3rem 6rem}.home-left{position:sticky;top:3rem}.explore-panel{background:var(--surface-muted);border:1px solid var(--line);border-radius:8px;padding:.75rem 1rem;margin-top:0}.explore-label{font-family:var(--font-sans);font-size:.65rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:.4rem}.explore-link{display:flex;align-items:center;padding:.45rem .6rem;border-radius:6px;font-family:var(--font-sans);font-size:.9rem;font-weight:400;color:var(--text);transition:background .2s ease,color .2s ease;animation:fadeUp .4s ease-out both}.explore-link>span,.toc-link>span{font-weight:inherit}.explore-link-num{color:var(--text-muted);margin-right:.5rem;font-variant-numeric:tabular-nums;font-size:.8rem}.explore-link-num,.toc-link{font-family:var(--font-sans);font-weight:400}.toc-link{display:flex;align-items:center;padding:.45rem .6rem;border-radius:6px;font-size:.9rem;color:var(--text);text-decoration:none;transition:background .2s ease,color .2s ease;cursor:none}.explore-link:hover,.toc-link:hover{background:none;color:var(--green)}.explore-link.active,.toc-link.active{background:none;font-weight:500}.explore-link.active .explore-link-num,.explore-link:hover .explore-link-num,.toc-link.active .explore-link-num,.toc-link:hover .explore-link-num{color:var(--green-bright)}.explore-link.active,.toc-link.active{color:var(--green)}.explore-panel,.toc-panel{position:relative}.explore-panel>:not(.nav-indicator),.toc-panel>:not(.nav-indicator){position:relative;z-index:1}.nav-indicator{position:absolute;top:0;left:0;z-index:0;border-radius:6px;background:color-mix(in srgb,var(--text) 6%,transparent);opacity:0;pointer-events:none;transition:transform .48s var(--ease-bounce),width .48s var(--ease-bounce),height .48s var(--ease-bounce),opacity .18s ease}.nav-indicator.is-on{opacity:1}.nav-indicator.is-snap{transition:opacity .18s ease}.nav-link-inner{display:inline-flex;align-items:center;transition:transform .45s var(--ease-bounce)}.explore-link.active .nav-link-inner,.explore-link:focus-visible .nav-link-inner,.explore-link:hover .nav-link-inner,.toc-link.active .nav-link-inner,.toc-link:focus-visible .nav-link-inner,.toc-link:hover .nav-link-inner{transform:translateX(6px)}@media (prefers-reduced-motion:reduce){.nav-indicator{transition:opacity .12s ease}.nav-link-inner{transition:none}}.explore-link-num{transition:color .2s ease}.cards-grid{display:grid;grid-template-columns:1fr 1fr;-moz-column-gap:2rem;column-gap:2rem;align-items:start}.cards-col{display:flex;flex-direction:column;gap:2.5rem}.card-thumb{overflow:hidden;border-radius:10px 10px 0 0;background-color:var(--surface-muted)}.card-thumb img,.card-thumb video{width:100%;height:auto;display:block;transition:transform .4s ease}.card:hover .card-thumb img,.card:hover .card-thumb video{transform:scale(1.03)}@media (max-width:768px){.cards-grid{grid-template-columns:1fr;row-gap:2.5rem}}.work-card{width:100%;aspect-ratio:1/1;display:flex;flex-direction:column;overflow:hidden;position:relative;border:1px solid var(--line);border-radius:0;cursor:none;background:var(--surface)}.work-card-visual{flex:1;min-height:0}.work-card-info{padding:.85rem 1.1rem .95rem;background:var(--bg);border-top:1px solid var(--line);flex-shrink:0}.work-card-title-text{font-family:var(--font-display);font-size:1.55rem;font-weight:400;color:var(--text);line-height:1.25;margin-bottom:.2rem;font-synthesis:none}.work-card-meta-text{font-family:var(--font-sans);font-size:.62rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.work-card-overlay{position:absolute;inset:0;background:rgba(26,26,24,.93);transform:translateY(100%);transition:transform .4s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;justify-content:space-between;padding:1.5rem;z-index:2}.work-card:hover .work-card-overlay{transform:translateY(0)}.work-card-overlay-title{font-family:var(--font-display);font-style:italic;font-size:1.6rem;font-weight:400;color:#fff;margin-bottom:.45rem;line-height:1.3;font-synthesis:none}.work-card-overlay-desc{font-family:var(--font-sans);font-size:.8rem;color:#aaa;line-height:1.6;margin-bottom:.85rem}.work-card-overlay-tags{display:flex;flex-wrap:wrap;gap:.35rem}.work-card-tag{font-family:var(--font-sans);font-size:.6rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;border:1px solid #555;color:#ccc;padding:.2rem .55rem;border-radius:0}.work-card-overlay-bottom{display:flex;flex-direction:column;gap:.3rem}.work-card-meta-row{display:flex;gap:.75rem;align-items:baseline;font-family:var(--font-sans);font-size:.65rem}.work-card-meta-label{color:#666;min-width:2.8rem;text-transform:uppercase;font-weight:500;letter-spacing:.08em;flex-shrink:0}.work-card-meta-value{color:#fff}@media (max-width:900px){.home-grid{grid-template-columns:1fr;padding:5rem 1.5rem 3rem;gap:2rem}.home-left{position:relative;top:0}.explore-panel{margin-top:1.5rem}}.side-panel{position:fixed;left:0;top:0;height:100vh;width:var(--panel-w);padding:1.5rem 1.75rem;background:var(--panel-bg);overflow-y:auto;display:flex;flex-direction:column;gap:1rem;z-index:50}.content-area{margin-left:var(--panel-w);min-height:100vh}.home-main{padding:2.5rem 3rem 4rem;width:100%}.card-image{position:relative;aspect-ratio:4/3;overflow:hidden;flex-shrink:0;border-radius:10px 10px 0 0;background-color:var(--surface-muted)}.card-image-inner{width:100%;height:100%;transition:transform .4s ease}.card-number{position:absolute;top:.75rem;right:.75rem;font-family:var(--font-sans);font-size:.65rem;letter-spacing:.15em;color:hsla(0,0%,100%,.7)}.card-info{background:var(--bg);display:flex;flex-direction:column}.card-info-default{padding:1rem 1.25rem .75rem;flex-shrink:0}.card-tags{display:flex;flex-wrap:wrap;gap:.3rem}.card-info-default .card-tags{margin:.45rem 0 .55rem}.card-tag{display:inline-flex;align-items:center;padding:.22rem .65rem;font-family:var(--font-sans);font-size:.72rem;font-weight:500;color:var(--ink-soft);background:var(--background-accent);border:1px solid var(--border);border-radius:999px;white-space:nowrap}.card-description{font-size:.8rem;line-height:1.6;color:var(--ink-60);margin-top:.35rem}.card-info-expanded{display:grid;grid-template-rows:0fr;opacity:0;padding:0 1.25rem;transition:grid-template-rows .42s cubic-bezier(.16,1,.3,1),opacity .3s ease,padding-bottom .3s ease}.card-info-inner{overflow:hidden;min-height:0}.card:hover .card-info-expanded{grid-template-rows:1fr;opacity:1;padding-bottom:1rem}.card-meta-row{display:flex;gap:1.5rem;padding:.3rem 0;border-top:1px solid var(--line)}.meta-label{font-size:.6rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--text-subtle);width:60px;flex-shrink:0}.meta-label,.meta-value{font-family:var(--font-sans)}.meta-value{font-size:.85rem;color:var(--text)}.game-card-image{aspect-ratio:16/9;overflow:hidden;position:relative}.game-card-image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .3s ease}.game-card:hover .game-card-image img{transform:scale(1.04)}.game-card-body{padding:.85rem 1rem;background:var(--surface)}@media (max-width:768px){.toc-panel{display:none}.persona-grid{grid-template-columns:1fr!important}.sketch-gallery-grid{grid-template-columns:repeat(3,1fr)!important}.sketch-gallery-grid img{cursor:none!important}.side-panel{position:static;width:100%;height:auto;padding:1.5rem}.content-area{margin-left:0;width:100%;overflow-x:clip}.home-main{padding:1.5rem 1.5rem 3rem}.case-content-pad{padding:1.25rem 1.25rem 3rem!important}.metadata-row{display:grid!important;grid-template-columns:1fr 1fr!important;gap:1rem!important;padding:1rem 0!important}.metadata-item{padding-right:0!important;margin-right:0!important;border-right:none!important}.comparison-row{grid-template-columns:1fr!important}.comparison-row,.comparison-row-ratios{height:auto!important}.design-system-grid,.design-system-typo,.pain-points-grid{grid-template-columns:1fr!important}.hotspot{display:none!important}img{max-width:100%;height:auto}.book-covers-row{overflow-x:scroll;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;padding-left:1.25rem;padding-right:1.5rem;gap:1rem;width:100%;margin-left:-1.25rem;scrollbar-width:none}.book-covers-row::-webkit-scrollbar{display:none}.book-cover-wrap{scroll-snap-align:start;flex-shrink:0;width:60vw;max-width:220px}.book-cover{width:100%;height:auto;aspect-ratio:5/7}}:root{--about-heading:1.75rem;--space-section:6rem;--space-chapter:10rem;--space-label:1.5rem}.about-grid{display:grid;grid-template-columns:6fr 5fr;gap:4rem;max-width:1200px;margin:0 auto;padding:4rem 3rem 0;align-items:start}.about-aside,.about-col{min-width:0}.about-aside .about-label:first-child{margin-top:.35rem}.about-greeting{margin-bottom:1.5rem}.about-greeting-hi{color:var(--green-bright)}.about-greeting-hi,.about-greeting-name{font-family:var(--font-serif),"Instrument Serif",serif;font-weight:400;font-size:var(--about-heading);letter-spacing:-.01em;font-synthesis:none}.about-greeting-name{color:var(--text)}.about-body p{font-family:var(--font-sans);font-weight:400;font-size:15px;line-height:1.65;color:var(--text-soft);margin-bottom:1rem;max-width:none}.about-body p:last-child{margin-bottom:0}.about-body em{font-family:var(--font-sans);font-style:italic;font-size:inherit;font-weight:inherit;color:inherit}.about-body a{color:inherit}.about-body a:hover{color:var(--green)}.about-label{font-family:var(--font-display);font-weight:400;font-size:1.5rem;line-height:1.2;color:var(--text);letter-spacing:-.01em;margin:2.5rem 0 .25rem;font-synthesis:none}.about-rows{display:flex;flex-direction:column}.about-row{display:flex;align-items:baseline;justify-content:space-between;gap:.25rem 1.5rem;padding:.8rem 0;border-bottom:1px solid var(--border)}.about-role{font-family:var(--font-sans);font-weight:400;font-size:15px;line-height:1.35;color:var(--text);min-width:0}.about-org,.about-sep,.about-years{color:var(--text-subtle)}.about-years{font-family:var(--font-sans);font-weight:400;font-size:15px;line-height:1.35;font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0}@media (max-width:640px){.about-row{flex-direction:column}}.about-photos{margin-top:3rem}.photo-grid{display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:1fr 1fr;gap:1.25rem}.photo-cell{margin:0;min-width:0;display:flex;flex-direction:column}.photo-cell-large{grid-row:span 2}.photo-tile{background:var(--background-accent);border-radius:10px;border:none;box-shadow:none;overflow:hidden;width:100%;height:100%}.photo-tile-large{aspect-ratio:4/5;height:auto}.photo-tile img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.photo-caption{font-family:var(--font-caveat),"Caveat",cursive;font-size:18px;color:var(--text-soft);transform:rotate(-1.5deg);margin-top:.5rem;text-align:center}.about-outside{margin-top:var(--space-section)}.about-outside+.section-flow{margin-top:var(--space-label)}.about-outside-label{font-family:var(--font-sans);font-weight:500;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--green)}@media (max-width:900px){:root{--space-section:4rem;--space-chapter:6rem;--space-label:1.25rem}.about-grid{grid-template-columns:1fr;gap:2.5rem;padding:3rem 2rem 0}.about-col{order:1}.about-aside{order:2}.about-aside .about-label:first-child{margin-top:0}}@media (max-width:480px){.about-grid{padding:2.5rem 1.25rem 0}.photo-grid{grid-template-columns:1fr;grid-template-rows:auto}.photo-cell-large{grid-row:auto}.photo-tile{aspect-ratio:4/5}}#sketchbook{scroll-margin-top:2rem}.sketch-masonry{-moz-column-count:2;column-count:2;-moz-column-gap:2rem;column-gap:2rem}@media (min-width:1280px){.sketch-masonry{-moz-column-count:3;column-count:3;-moz-column-gap:1.75rem;column-gap:1.75rem}}.sketch-item{-moz-column-break-inside:avoid;break-inside:avoid;margin:0 0 2.5rem;display:block}.sketch-btn{display:block;width:100%;padding:0;border:none;background:none;cursor:none}.sketch-item img{width:100%;height:auto;display:block;border-radius:4px;border:none;box-shadow:none}.lightbox{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.85);cursor:zoom-out;animation:lb-in .2s ease forwards}@keyframes lb-in{0%{opacity:0}to{opacity:1}}.lb-figure{display:flex;flex-direction:column;align-items:center;gap:.9rem;max-width:92vw;max-height:88vh;cursor:default;animation:lb-zoom .2s ease forwards}@keyframes lb-zoom{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.lb-holo .holo-card,.lb-holo .holo-lift,.lb-mat{border-radius:4px}.lb-mat{padding:12px;background:var(--surface)}.lb-figure img{max-width:calc(92vw - 24px);max-height:calc(80vh - 24px);width:auto;height:auto;-o-object-fit:contain;object-fit:contain;display:block;border-radius:2px;backface-visibility:hidden;transform:translateZ(0)}.lb-caption{font-family:var(--font-sans);font-size:15px;text-align:center}.lb-title{font-weight:400;color:hsla(0,0%,100%,.8)}.lb-meta{font-weight:400;color:hsla(0,0%,100%,.55)}.lb-close{top:1.25rem;right:1.75rem;background:none;border:none;color:hsla(0,0%,100%,.85);font-size:30px;line-height:1;padding:0;cursor:pointer}.lb-close,.lb-nav{position:absolute;z-index:2}.lb-nav{top:calc(50% - 22px)}.lb-prev{left:1.5rem}.lb-next{right:1.5rem}@media (max-width:768px){.lb-prev{left:.5rem}.lb-next{right:.5rem}.lb-figure img{max-height:calc(70vh - 24px)}}@media (prefers-reduced-motion:reduce){.lb-figure,.lightbox{animation:none}}.sketch-caption{margin-top:.6rem;font-family:var(--font-sans);font-size:15px}.sketch-title{font-weight:400;color:var(--text)}.sketch-meta,.sketch-sep{font-weight:400;color:var(--text-subtle)}@media (max-width:768px){.sketch-masonry{-moz-column-count:1;column-count:1}}.shelf{padding-top:0;--shelf-top-back:#f3f3f2;--shelf-top:#ececeb;--shelf-lip-top:#e0e0de;--shelf-lip-bottom:#d6d6d4;--shelf-highlight:hsla(0,0%,100%,.85);--shelf-shadow:rgba(0,0,0,.05);--shelf-grain-blend:multiply;--shelf-grain-opacity:0.18}:root[data-theme=dark] .shelf{--shelf-top-back:#2e2e2e;--shelf-top:#383838;--shelf-lip-top:#2c2c2c;--shelf-lip-bottom:#242424;--shelf-highlight:hsla(0,0%,100%,.07);--shelf-shadow:rgba(0,0,0,.28);--shelf-grain-blend:soft-light;--shelf-grain-opacity:0.3}.shelf-row{display:grid;grid-template-columns:minmax(100%,max-content);padding:16px 0 44px;margin:-16px 0 -28px;overflow-x:auto;scrollbar-width:none}.shelf-books{position:relative;z-index:1;display:flex;align-items:flex-end;gap:1.25rem;padding:0 1.25rem;margin-bottom:-4px}.shelf-board{position:relative;height:20px}.shelf-lip,.shelf-top{position:absolute;left:0;right:0}.shelf-top{top:0;height:12px;clip-path:polygon(14px 0,calc(100% - 14px) 0,100% 100%,0 100%);background:linear-gradient(to bottom,var(--shelf-top-back),var(--shelf-top))}.shelf-lip{top:12px;height:8px;border-top:1px solid var(--shelf-highlight);border-radius:0 0 2px 2px;background:linear-gradient(to bottom,var(--shelf-lip-top),var(--shelf-lip-bottom))}.shelf-lip:before,.shelf-top:before{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--texture-image) 0 0 /var(--texture-size);mix-blend-mode:var(--shelf-grain-blend);opacity:var(--shelf-grain-opacity)}.shelf-board:after{top:100%;left:0;right:0;height:40px;clip-path:polygon(0 0,100% 0,calc(100% - 28px) 100%,28px 100%);background:linear-gradient(to bottom,var(--shelf-shadow),transparent)}.shelf-board:after,.shelf-slot:after{content:"";position:absolute;pointer-events:none}.shelf-slot:after{left:4px;right:4px;bottom:-3px;height:7px;border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,.32),transparent);transition:transform .15s ease,opacity .15s ease}.shelf-slot:not(.is-open):has(.bk-cover:hover):after{transform:scale(1.12,1.5);opacity:.55}.shelf-row::-webkit-scrollbar{display:none}.shelf-slot{position:relative;flex:0 0 auto;perspective:1200px;--bk-swing:450ms cubic-bezier(0.22,1,0.36,1);transition:width var(--bk-swing)}.bk-note{position:absolute;top:0;right:0;height:100%;box-sizing:border-box;padding:12px 13px;background:#fdfcf9;border-radius:0 3px 3px 0;box-shadow:inset 6px 0 10px -8px rgba(0,0,0,.45);overflow:hidden;z-index:1;opacity:0;pointer-events:none}.shelf-slot.is-open .bk-note{opacity:1;pointer-events:auto;cursor:none}.bk-title{font-family:var(--font-serif),"Instrument Serif",serif;font-size:15px;line-height:1.15;color:#1a1a1a;margin:0 0 3px;font-weight:400;font-synthesis:none}.bk-author{font-family:var(--font-sans);font-weight:400;font-size:9px;line-height:1.3;color:#999;margin:0}.bk-rule{height:1px;background:rgba(0,0,0,.12);margin:8px 0}.bk-comment{font-family:var(--font-sans);font-weight:400;font-size:12px;line-height:1.5;color:#1a1a1a;margin:0}.bk-cover{position:absolute;top:0;right:0;height:100%;padding:0;border:none;background:none;cursor:none;z-index:2;transform-style:preserve-3d;transform-origin:left center;transform:rotateY(0deg);will-change:transform;transition:transform var(--bk-swing),translate .15s ease}.shelf-slot:not(.is-open) .bk-cover:hover{translate:0 -4px}.shelf-slot.is-open .bk-cover{transform:rotateY(-180deg)}.bk-face{position:absolute;inset:0;backface-visibility:hidden;border-radius:3px;overflow:hidden;box-shadow:0 6px 16px -6px rgba(0,0,0,.35)}.bk-face img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center top;object-position:center top;display:block}.bk-back{transform:rotateY(180deg);background:#34332f;border-radius:3px 0 0 3px;box-shadow:inset -10px 0 14px -10px rgba(0,0,0,.35)}@media (prefers-reduced-motion:reduce){.bk-cover,.shelf-slot,.shelf-slot:after{transition:none}.shelf-slot.is-open{width:120px!important}.shelf-slot.is-open .bk-cover{display:none}}.fav-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.fav-thumb{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:8px;transition:transform .4s var(--ease-spring),box-shadow .4s var(--ease-spring)}.fav-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;display:block;transition:transform .6s var(--ease-spring)}.fav-card:hover .fav-thumb{transform:translateY(-5px);box-shadow:var(--shadow-hover)}.fav-card:hover .fav-thumb img{transform:scale(1.04)}.fav-card:hover .fav-name{color:var(--accent)}@media (prefers-reduced-motion:reduce){.fav-card:hover .fav-thumb,.fav-card:hover .fav-thumb img{transform:none}}.yt-sound{position:absolute;right:10px;bottom:10px;display:flex;align-items:center;gap:8px}.yt-btn{position:relative;width:40px;height:40px;border:0;border-radius:50%;padding:0;display:grid;place-items:center;background:var(--surface);color:var(--text);box-shadow:var(--shadow);cursor:none;transition:background .2s ease,color .2s ease,opacity .2s ease}.yt-btn:focus-visible,.yt-btn:hover:not(:disabled){background:var(--accent);color:var(--on-accent)}.yt-btn:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.yt-btn:disabled{opacity:.5;cursor:none}.yt-ring{position:absolute;inset:-3px;transform:rotate(-90deg);pointer-events:none}.yt-ring circle{fill:none;stroke:var(--accent);stroke-width:2;stroke-linecap:round;transition:stroke-dashoffset .25s linear}.yt-eq{display:flex;align-items:flex-end;gap:2px;height:12px;opacity:0;transition:opacity .2s ease}.yt-eq span{width:3px;height:100%;border-radius:1px;background:var(--surface);box-shadow:0 0 2px rgba(0,0,0,.35);transform-origin:bottom;transform:scaleY(.3)}.yt-sound.is-playing .yt-eq{opacity:1}.yt-sound.is-playing .yt-eq span{animation:yt-eq .9s ease-in-out infinite}.yt-sound.is-playing .yt-eq span:nth-child(2){animation-delay:-.3s;animation-duration:.75s}.yt-sound.is-playing .yt-eq span:nth-child(3){animation-delay:-.6s;animation-duration:1.05s}@keyframes yt-eq{0%,to{transform:scaleY(.3)}50%{transform:scaleY(1)}}.yt-tip{position:absolute;right:0;bottom:calc(100% + 8px);padding:4px 8px;border-radius:6px;background:var(--surface);color:var(--text-muted);box-shadow:var(--shadow);font-family:var(--font-sans);font-size:.75rem;white-space:nowrap;opacity:0;transition:opacity .15s ease;pointer-events:none}.yt-sound.is-failed:hover .yt-tip{opacity:1}@media (prefers-reduced-motion:reduce){.yt-sound.is-playing .yt-eq span{animation:none;transform:scaleY(.7)}}.fav-name{font-weight:600;font-size:.95rem;color:var(--text);margin-top:.7rem;transition:color .2s ease}.fav-caption,.fav-name{font-family:var(--font-sans)}.fav-caption{font-weight:400;font-size:.85rem;color:var(--text-muted);margin-top:.15rem}@media (max-width:768px){.fav-grid{grid-template-columns:1fr}}.about-duo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(2rem,4vw,3.5rem);align-items:start}@media (max-width:900px){.about-duo{grid-template-columns:minmax(0,1fr)}}.holo{--holo-paper:var(--surface);--holo-card:var(--panel-bg);--holo-ink:var(--text);--holo-soft:#57574f;--holo-rule:rgba(0,0,0,.16);--holo-edge:rgba(0,0,0,.08);--holo-age:none;--holo-cast:0 1px 2px rgba(0,0,0,.08),0 10px 20px -6px rgba(0,0,0,.14);--holo-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.1' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.28 0 0 0 0 0.28 0 0 0 0 0.28 1.2 0 0 0 -0.5'/%3E%3C/filter%3E%3Cfilter id='m'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.008' numOctaves='2' seed='7' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.28 0 0 0 0 0.28 0 0 0 0 0.28 0.5 0 0 0 -0.2'/%3E%3C/filter%3E%3Cfilter id='s'%3E%3CfeTurbulence type='turbulence' baseFrequency='0.35' seed='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.28 0 0 0 0 0.28 0 0 0 0 0.28 6 0 0 0 -4.5'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url%28%23g%29'/%3E%3Crect width='100%25' height='100%25' filter='url%28%23m%29'/%3E%3Crect width='100%25' height='100%25' filter='url%28%23s%29'/%3E%3C/svg%3E");--holo-grain-strength:0.12;--paper-relief:0.14;--paper-lit:0.8;--paper-sheen:hsla(0,0%,100%,.5);position:relative;perspective:var(--perspective,1000px)}:root[data-theme=dark] .holo{--holo-soft:var(--text-muted);--holo-rule:hsla(0,0%,100%,.14);--holo-edge:hsla(0,0%,100%,.08);--holo-age:inset 0 0 40px rgba(0,0,0,.25);--holo-cast:0 1px 2px rgba(0,0,0,.4),0 10px 20px -6px rgba(0,0,0,.5);--holo-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.1' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.9 0 0 0 0 0.9 0 0 0 0 0.9 1.2 0 0 0 -0.5'/%3E%3C/filter%3E%3Cfilter id='m'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.008' numOctaves='2' seed='7' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.9 0 0 0 0 0.9 0 0 0 0 0.9 0.5 0 0 0 -0.2'/%3E%3C/filter%3E%3Cfilter id='s'%3E%3CfeTurbulence type='turbulence' baseFrequency='0.35' seed='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.9 0 0 0 0 0.9 0 0 0 0 0.9 6 0 0 0 -4.5'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url%28%23g%29'/%3E%3Crect width='100%25' height='100%25' filter='url%28%23m%29'/%3E%3Crect width='100%25' height='100%25' filter='url%28%23s%29'/%3E%3C/svg%3E");--holo-grain-strength:0.03;--paper-relief:0.05;--paper-lit:0.22;--paper-sheen:hsla(0,0%,100%,.12)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .holo{--holo-soft:var(--text-muted);--holo-rule:hsla(0,0%,100%,.14);--holo-edge:hsla(0,0%,100%,.08);--holo-age:inset 0 0 40px rgba(0,0,0,.25);--holo-cast:0 1px 2px rgba(0,0,0,.4),0 10px 20px -6px rgba(0,0,0,.5);--holo-grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='g'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.1' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.9 0 0 0 0 0.9 0 0 0 0 0.9 1.2 0 0 0 -0.5'/%3E%3C/filter%3E%3Cfilter id='m'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.008' numOctaves='2' seed='7' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.9 0 0 0 0 0.9 0 0 0 0 0.9 0.5 0 0 0 -0.2'/%3E%3C/filter%3E%3Cfilter id='s'%3E%3CfeTurbulence type='turbulence' baseFrequency='0.35' seed='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.9 0 0 0 0 0.9 0 0 0 0 0.9 6 0 0 0 -4.5'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url%28%23g%29'/%3E%3Crect width='100%25' height='100%25' filter='url%28%23m%29'/%3E%3Crect width='100%25' height='100%25' filter='url%28%23s%29'/%3E%3C/svg%3E");--holo-grain-strength:0.03;--paper-relief:0.05;--paper-lit:0.22;--paper-sheen:hsla(0,0%,100%,.12)}}.holo-card{position:relative;border-radius:16px;will-change:transform;backface-visibility:hidden;-webkit-font-smoothing:antialiased}.holo-lift{box-shadow:0 30px 60px -20px rgba(0,0,0,.45);will-change:transform}.holo-glare,.holo-lift{position:absolute;inset:0;border-radius:inherit;pointer-events:none}.holo-glare{overflow:hidden;opacity:0;transition:opacity .6s ease}.holo.is-hovered:not(.is-idle) .holo-glare{opacity:var(--holo-glare);transition-duration:.3s}.holo-glare-light{position:absolute;inset:-50%;background:radial-gradient(circle at 50% 50%,#fff,hsla(0,0%,100%,.35) 25%,transparent 50%);will-change:transform}.holo-layers,.holo-layers:before{position:absolute;inset:0;z-index:-1;border-radius:inherit;overflow:hidden;pointer-events:none}.holo-layers:before{z-index:auto;content:"";background:var(--holo-grain) 0 0 /300px;opacity:var(--holo-grain-strength)}.paper-peaks,.paper-shade{position:absolute;inset:0;background:var(--paper-shade) 0 0 /180px}.paper-shade{opacity:var(--paper-relief)}.paper-lit{position:absolute;inset:-50%;overflow:hidden;-webkit-mask:radial-gradient(var(--paper-pool,circle 220px) at 50% 50%,#000,rgba(0,0,0,.4) 45%,transparent);mask:radial-gradient(var(--paper-pool,circle 220px) at 50% 50%,#000,rgba(0,0,0,.4) 45%,transparent);opacity:0;visibility:hidden;transition:opacity .4s ease,visibility 0s .4s}.paper-peaks{inset:25%;background-image:var(--paper-peaks)}.holo.is-hovered .paper-lit,.holo.is-hovered .paper-peaks{will-change:transform}.paper-lit:before{content:"";position:absolute;inset:0;background:radial-gradient(var(--paper-pool,circle 220px) at 50% 50%,var(--paper-sheen),transparent)}.holo.is-hovered .paper-lit{opacity:var(--paper-lit);visibility:visible;transition:opacity .3s ease,visibility 0s}.holo-tilt .paper-peaks{transition:transform .2s ease-out}.holo.is-hovered .holo-tilt .paper-lit{transition:transform .2s ease-out,opacity .3s ease,visibility 0s}.holo.is-hovered .holo-tilt:not(.is-tilted) .paper-lit{opacity:0;visibility:hidden;transition:opacity .4s ease,visibility 0s .4s}.holo-tilt{transition:transform .5s ease,box-shadow .3s ease}.holo-tilt.is-tilted{transition:transform .2s ease-out,box-shadow .3s ease;will-change:transform}@media (prefers-reduced-motion:reduce){.holo-card,.holo-tilt{transform:none!important}}.ballot{--paper:var(--holo-paper);--card:var(--holo-card);--ink:var(--holo-ink);--ink-soft:var(--holo-soft);--rule:var(--holo-rule);--pen:var(--accent);position:relative;padding:1.9rem 1.75rem 1.5rem;background:radial-gradient(circle at 8px 0,transparent 5px,var(--holo-rule) 5.5px,var(--holo-rule) 6px,var(--paper) 6.5px) 0 0 /16px 10px repeat-x,linear-gradient(var(--paper),var(--paper)) 0 10px /100% calc(100% - 10px) no-repeat;color:var(--ink);border-radius:0 0 16px 16px;box-shadow:var(--holo-cast);isolation:isolate}.ballot>.holo-layers{top:10px;border-radius:0 0 16px 16px;box-shadow:inset 1px 0 0 var(--holo-edge),inset -1px 0 0 var(--holo-edge),inset 0 -1px 0 var(--holo-edge),var(--holo-age)}.ballot-holo{max-width:640px}.ballot-head{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding-bottom:.65rem;border-bottom:2px solid var(--ink)}.ballot-kicker,.ballot-serial{font-family:var(--font-sans);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ink)}.ballot-serial{font-weight:500;color:var(--ink-soft);font-variant-numeric:tabular-nums}.ballot-instructions{font-family:var(--font-sans);font-size:13px;line-height:1.5;color:var(--ink-soft);margin:.75rem 0 .5rem}.ballot-list{display:grid;gap:.9rem;list-style:none;margin:.4rem 0 0;padding:0}.ballot-list.is-loading .ticket-main{opacity:.6}.ticket{position:relative;border-radius:6px;box-shadow:0 0 0 1px var(--holo-edge),0 3px 8px rgba(0,0,0,.1);isolation:isolate;display:flex;align-items:stretch;width:100%;min-height:92px;padding:0;border:0;background:var(--card);text-align:left;color:var(--ink);cursor:inherit}.ticket>.holo-layers{--paper-pool:ellipse 28% 42%}.ticket>.holo-layers:before{background-position:40px 40px}.ticket:after{content:"";position:absolute;top:0;bottom:0;right:-4px;width:8px;background:radial-gradient(circle at 50% 50%,var(--paper) 3.5px,transparent 4px) 0 0 /8px 11px repeat-y;pointer-events:none}.ticket.is-tilted{box-shadow:0 0 0 1px var(--holo-edge),0 8px 16px rgba(0,0,0,.14)}.ticket:focus-visible{outline:2px solid var(--pen);outline-offset:-6px}.ticket-main{display:grid;align-content:center;gap:4px;flex:1;min-width:0;padding:.8rem 1rem .8rem 1.15rem}.ticket-meta{display:flex;justify-content:space-between;gap:.75rem;font-family:var(--font-sans);font-size:10px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-soft);font-variant-numeric:tabular-nums}.ticket-title{font-family:var(--font-serif),"Instrument Serif",serif;font-size:1.35rem;line-height:1.15;color:var(--ink);overflow-wrap:anywhere;font-weight:400;font-synthesis:none}.ticket-stub{flex:0 0 84px;place-items:center;align-content:center;gap:6px;padding:.6rem .4rem;border-left:2px dashed var(--rule);border-radius:0 6px 6px 0}.ticket-seal,.ticket-stub{position:relative;display:grid}.ticket-seal{place-items:center;width:34px;height:34px;border-radius:50%;border:1.5px solid var(--rule);isolation:isolate;font-family:var(--font-sans);font-size:11px;font-weight:700;letter-spacing:.06em;color:var(--ink);font-variant-numeric:tabular-nums}.ticket-stub .ballot-tally{justify-content:center;max-width:72px}.ticket-stamp{position:absolute;top:50%;right:104px;width:78px;height:78px;margin-top:-39px;color:var(--accent);pointer-events:none;z-index:1}.ticket-stamp svg{display:block;width:100%;height:100%;overflow:visible;opacity:.88}.ticket-stamp-ink{position:absolute;inset:0}.ticket-stamp circle{stroke:currentColor}.ticket-stamp text{fill:currentColor;font-family:var(--font-sans);font-size:19px;font-weight:800;letter-spacing:.08em}.ticket-stamp.is-fresh{animation:ticket-stamp .36s cubic-bezier(.3,0,.4,1) both}.ticket-stamp.is-fresh svg{animation:ticket-stamp-ink .36s cubic-bezier(.3,0,.4,1) both}@keyframes ticket-stamp{0%{scale:1.4}55%{scale:.96}to{scale:1}}@keyframes ticket-stamp-ink{0%{opacity:0}55%,to{opacity:.88}}.ballot-votes{flex-shrink:0;display:flex;align-items:center}.ballot-tally{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:2px;max-width:120px}.ballot-tally path{fill:none;stroke:var(--ink);stroke-width:1.6;stroke-linecap:round}.ballot-count{font-family:var(--font-sans);font-weight:600;font-size:15px;font-variant-numeric:tabular-nums}.ballot-writein{display:flex;align-items:flex-end;gap:.75rem;flex-wrap:wrap;margin-top:1.1rem}.ballot-writein-label{font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;padding-bottom:.45rem}.ballot-input,.ballot-writein-label{font-family:var(--font-sans);color:var(--ink)}.ballot-input{flex:1 1 180px;min-width:0;padding:.4rem .1rem;border:0;border-bottom:1.5px solid var(--ink);background:none;font-size:14px;border-radius:0}.ballot-input::-moz-placeholder{color:var(--ink-soft)}.ballot-input::placeholder{color:var(--ink-soft)}.ballot-input:focus{outline:none;border-bottom-color:var(--pen)}.ballot-input-sm{flex:0 1 150px}.ballot-cast{padding:.55rem 1.1rem;border:0;border-radius:999px;background:var(--pen);color:var(--on-accent);font-family:var(--font-sans);font-size:13px;font-weight:600;cursor:inherit;transition:transform .3s var(--ease-bounce),opacity .2s ease}.ballot-cast:focus-visible,.ballot-cast:hover:not(:disabled){transform:translateY(-2px) rotate(-2deg);outline:none}.ballot-cast:disabled{opacity:.4}.ballot-status{font-family:var(--font-sans);font-size:12px;color:var(--ink-soft);margin-top:.9rem;font-variant-numeric:tabular-nums}@media (max-width:600px){.ballot{padding:1.6rem 1.1rem 1.25rem}.ticket-title{font-size:1.15rem}.ticket-stamp{right:92px;width:64px;height:64px;margin-top:-32px}.ballot-input-sm{flex:1 1 100%}}@media (prefers-reduced-motion:reduce){.ticket-stamp.is-fresh,.ticket-stamp.is-fresh svg{animation:none}}.slot-holo{max-width:640px}.slot{--slot-row:58px;--slot-paper:var(--holo-paper);--slot-window:color-mix(in srgb,var(--holo-card) 60%,var(--holo-paper));--slot-ink:var(--holo-ink);--slot-soft:var(--holo-soft);--slot-faint:var(--holo-rule);--slot-pen:var(--accent);--slot-sun:#f2c14e;--slot-knob:radial-gradient(circle at 35% 30%,#4f7d65,#355a4b 55%,#234736);display:flex;align-items:center;justify-content:center}:root[data-theme=dark] .cursor-on-light{--cursor:#355a4b;--cursor-pill-bg:#355a4b;--cursor-pill-text:#fff;--cursor-blend:normal;--cursor-glow:none}.slot-cabinet{position:relative;flex:1;max-width:560px;min-width:0;padding:0 1rem 1rem;border-radius:16px;background:var(--slot-paper);box-shadow:0 0 0 1px var(--holo-edge),var(--holo-cast);color:var(--slot-ink);isolation:isolate}.slot-cabinet>.holo-layers{box-shadow:var(--holo-age)}.slot-marquee{display:flex;align-items:center;justify-content:center;gap:.8rem;padding:.95rem 0 .85rem;border-bottom:1.5px dashed var(--slot-faint);margin-bottom:1rem}.slot-title{font-family:var(--font-sans);font-size:.72rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--slot-ink);white-space:nowrap}.slot-bulbs{display:flex;gap:.35rem}.slot-bulbs i{width:8px;height:8px;border-radius:50%;background:var(--bulb-off)}.slot-marquee{--bulb-off:var(--slot-faint)}.is-spinning .slot-bulbs i{animation:slot-chase .5s linear infinite;animation-delay:calc(var(--k) * 50ms)}.is-win .slot-bulbs i{animation:slot-flash .3s ease-out calc(var(--k) * 60ms) both,slot-flash .4s ease-in-out 1.2s 3}@keyframes slot-chase{0%,20%{background:var(--slot-sun)}21%,to{background:var(--bulb-off)}}@keyframes slot-flash{0%,to{background:var(--bulb-off)}40%{background:var(--slot-sun)}}.slot-body{position:relative;border-radius:8px;background:var(--slot-window);overflow:hidden}.slot-body:after{content:"";position:absolute;inset:0;z-index:3;border-radius:inherit;box-shadow:inset 0 2px 5px rgba(0,0,0,.1),inset 0 0 0 1px var(--holo-edge);pointer-events:none}.slot-window{position:relative;height:calc(var(--slot-row) * 3);overflow:hidden}.slot-window:after,.slot-window:before{content:"";position:absolute;left:0;right:0;height:calc(var(--slot-row) * .9);z-index:1;pointer-events:none}.slot-window:before{top:0;background:linear-gradient(var(--slot-window),color-mix(in srgb,var(--slot-window) 40%,transparent))}.slot-window:after{bottom:0;background:linear-gradient(color-mix(in srgb,var(--slot-window) 40%,transparent),var(--slot-window))}.slot-reel{will-change:transform}.slot-row{display:flex;align-items:center;justify-content:center;gap:10px;height:var(--slot-row);padding:0 2.25rem;white-space:nowrap;overflow:hidden}.slot-symbol{display:flex;flex-shrink:0}.slot-symbol svg{stroke:var(--slot-pen);-webkit-mask:linear-gradient(rgba(0,0,0,.55) 0 0),radial-gradient(circle,#000 .8px,transparent 1.2px) 0 0 /2.5px 2.5px;mask:linear-gradient(rgba(0,0,0,.55) 0 0),radial-gradient(circle,#000 .8px,transparent 1.2px) 0 0 /2.5px 2.5px}.slot-row span{font-family:var(--font-sans);font-weight:500;font-size:.95rem;color:var(--slot-ink);overflow:hidden;text-overflow:ellipsis}.slot-row.is-landed{animation:slot-land .6s var(--ease-bounce)}@keyframes slot-land{0%{transform:scale(1)}40%{transform:scale(1.08) rotate(-1deg)}to{transform:scale(1)}}.slot-payline{position:absolute;left:0;right:0;top:50%;height:var(--slot-row);translate:0 -50%;border-block:1.5px dashed var(--slot-faint);pointer-events:none}.slot-payline:after,.slot-payline:before{content:"";position:absolute;top:50%;translate:0 -50%;border:7px solid transparent}.slot-payline:before{left:0;border-left-color:var(--slot-pen)}.slot-payline:after{right:0;border-right-color:var(--slot-pen)}.slot-tray{position:relative;align-items:center;justify-content:space-between;gap:.75rem 1rem;margin-top:.6rem}.slot-coins,.slot-tray{display:flex;flex-wrap:wrap}.slot-coins{gap:5px;list-style:none;margin:0;padding:0}.slot-coin{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:color-mix(in srgb,var(--slot-ink) 8%,transparent);box-shadow:inset 0 1px 2px rgba(0,0,0,.08)}.slot-coin.is-found{background:var(--slot-pen);box-shadow:inset 0 1px 0 hsla(0,0%,100%,.25)}.slot-coin.is-found svg{stroke:var(--slot-paper)}.slot-coin.is-new{animation:slot-stamp .45s var(--ease-bounce)}@keyframes slot-stamp{0%{scale:1.6;rotate:-14deg;opacity:0}}.slot-count{font-family:var(--font-sans);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--slot-soft);font-variant-numeric:tabular-nums}.is-win .slot-count{color:var(--slot-pen)}.slot-lever{--pull:0;position:relative;width:58px;height:230px;flex-shrink:0;padding:0;border:0;background:none;cursor:inherit;touch-action:none}.slot-lever:disabled{opacity:1}.slot-lever-hub{position:absolute;left:-1.5px;top:50%;width:24px;height:44px;translate:0 -50%;border-radius:0 10px 10px 0;background:var(--slot-paper);box-shadow:0 0 0 1px var(--holo-edge),2px 3px 6px rgba(0,0,0,.06)}.slot-lever-arm{position:absolute;left:13px;bottom:50%;width:6px;height:42%;border-radius:3px;background:linear-gradient(90deg,#e7e9e2,#c2c6bb 45%,#9fa397 72%,#d5d8ce);transform-origin:bottom center;transform:scaleY(calc(1 - 2 * var(--pull)));transition:transform .38s var(--ease-bounce)}.slot-lever.is-dragging .slot-lever-arm{transition:none}.slot-lever-knob{position:absolute;left:50%;top:-16px;width:28px;height:28px;margin-left:-14px;border-radius:50%;background:var(--slot-knob);box-shadow:0 4px 8px rgba(0,0,0,.2);transition:transform .2s var(--ease-bounce)}.slot-lever-hint{position:absolute;left:24px;top:calc(50% + 34px);translate:-50% 0;font-family:var(--font-sans);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);transition:opacity .2s ease}.slot-lever:focus-visible .slot-lever-knob,.slot-lever:hover .slot-lever-knob{transform:scale(1.12)}.slot-lever:hover .slot-lever-arm{transform:rotate(8deg) scaleY(calc(1 - 2 * var(--pull)))}.slot-lever:focus-visible{outline:none}.slot-lever:focus-visible .slot-lever-knob{outline:2px solid var(--accent);outline-offset:3px}.slot-lever.is-pulled .slot-lever-arm{transform:scaleY(-1);transition-timing-function:ease-in;transition-duration:.2s}.is-spinning .slot-lever-hint,.slot-lever.is-dragging .slot-lever-hint{opacity:0}@media (max-width:600px){.slot{--slot-row:48px}.slot-cabinet{padding:0 .7rem .7rem}.slot-row{padding:0 1.75rem}.slot-bulbs i:nth-child(n+4){display:none}.slot-marquee{gap:.6rem}.slot-title{letter-spacing:.14em}.slot-lever{width:44px;height:200px}}@media (prefers-reduced-motion:reduce){.slot-bulbs i,.slot-coin.is-new,.slot-row.is-landed{animation:none!important}.slot-lever-arm{transition:none}.is-win .slot-bulbs i{background:var(--slot-sun)}}:root[data-theme=dark] .slot{--slot-knob:radial-gradient(circle at 35% 30%,#a6d6c3,var(--accent) 55%,#5e9a83)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .slot{--slot-knob:radial-gradient(circle at 35% 30%,#a6d6c3,var(--accent) 55%,#5e9a83)}}.stickers{position:relative;height:300px;border-radius:16px;background-color:var(--background-accent);background-image:radial-gradient(color-mix(in srgb,var(--text) 9%,transparent) 1px,transparent 1.2px);background-size:18px 18px;overflow:hidden;opacity:0;transition:opacity .25s ease}.stickers.is-ready{opacity:1}.stickers-tidy{position:absolute;right:12px;bottom:12px;z-index:1000;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-soft);font-family:var(--font-sans);font-size:12px;cursor:inherit;transition:background .2s ease,color .2s ease}.stickers-tidy:focus-visible,.stickers-tidy:hover{background:var(--green);color:var(--on-accent);outline:none}.sticker{position:absolute;top:0;left:0;touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;cursor:inherit}.stickers.is-tidying .sticker{transition:transform .6s var(--ease-bounce)}.sticker-body{position:relative;display:inline-flex;align-items:center;gap:7px;padding:.5rem .95rem;border-radius:999px;background:var(--fill);box-shadow:0 0 0 4px #fff,0 2px 3px 4px rgba(0,0,0,.08);white-space:nowrap;transform:rotate(var(--r));transition:transform .16s ease,box-shadow .2s ease}.sticker-body svg{flex-shrink:0}.sticker-label{font-family:var(--font-sans);font-weight:600;font-size:.8rem;color:#2b3a30}.sticker-body:after{content:"";position:absolute;right:6px;bottom:-2px;width:0;height:0;border-radius:0 0 999px 0;background:linear-gradient(135deg,#e6e2da 45%,#fff 55%);box-shadow:-1px -1px 2px rgba(0,0,0,.12);transition:width .2s ease,height .2s ease}.sticker:hover .sticker-body:after{width:12px;height:12px}.sticker.is-held .sticker-body{transform:rotate(var(--r)) scale(1.08) translateY(-4px);box-shadow:0 0 0 4px #fff,0 14px 24px 4px rgba(0,0,0,.16)}.sticker.is-held .sticker-body:after{width:18px;height:18px}.sticker-body.is-slapped{animation:sticker-slap .52s var(--ease-bounce)}@keyframes sticker-slap{0%{transform:rotate(var(--r)) scale(1.08) translateY(-4px)}35%{transform:rotate(calc(var(--r) - 4deg)) scale(.94)}65%{transform:rotate(calc(var(--r) + 2deg)) scale(1.02)}to{transform:rotate(var(--r)) scale(1)}}@media (max-width:600px){.stickers{height:420px}}@media (prefers-reduced-motion:reduce){.sticker-body,.sticker-body:after,.stickers.is-tidying .sticker{transition:none}.sticker-body.is-slapped{animation:none}}.toyshelf{display:grid;grid-template-columns:repeat(4,1fr);row-gap:1.75rem;padding:1.25rem 1.25rem 0;border-radius:16px;background:var(--background-accent)}.toyshelf-item{position:relative;display:grid;justify-items:center;align-content:start;gap:2px;padding:.5rem .5rem 1.4rem;border:0;background:none;text-align:center;cursor:inherit}.toyshelf-item:after{content:"";position:absolute;left:-1px;right:-1px;bottom:0;height:8px;background:color-mix(in srgb,var(--text) 10%,var(--surface));box-shadow:0 6px 10px -6px rgba(0,0,0,.25)}.toyshelf-item:nth-child(4n+1):after{left:-1.25rem;border-radius:4px 0 0 4px}.toyshelf-item:nth-child(4n):after{right:-1.25rem;border-radius:0 4px 4px 0}.toyshelf-item:focus-visible{outline:none}.toyshelf-item:focus-visible .toyshelf-scene{outline:2px solid var(--accent);outline-offset:2px;border-radius:12px}.toyshelf-scene{width:84px;height:75px;overflow:visible;transition:transform .3s var(--ease-bounce)}.toyshelf-item:hover .toyshelf-scene{transform:translateY(-4px) rotate(-2deg)}.toyshelf-scene.is-poked{animation:toy-poke .45s var(--ease-bounce)}@keyframes toy-poke{0%{transform:scale(1)}30%{transform:scale(.9,1.08)}60%{transform:scale(1.06,.95)}to{transform:scale(1)}}.toyshelf-label{font-family:var(--font-sans);font-weight:500;font-size:.78rem;line-height:1.3;color:var(--text);max-width:13rem}.toyshelf-status{font-family:var(--font-sans);font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums}.toy-line{fill:none;stroke:var(--accent);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.toy-scribble{fill:none;stroke:var(--text-soft);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;animation:toy-draw .6s ease forwards}@keyframes toy-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}.toy-flame{transform-box:fill-box;transform-origin:50% 100%;transition:transform .3s var(--ease-bounce)}.is-poked .toy-flame{animation:toy-flicker .45s ease}@keyframes toy-flicker{30%{translate:0 -3px}60%{translate:0 1px}}.toy-sheet{fill:var(--surface);stroke:var(--text-muted);stroke-width:1;transform-box:fill-box;transform-origin:center}.is-poked .toy-sheet:last-of-type{animation:toy-press .4s var(--ease-bounce)}@keyframes toy-press{0%{translate:0 -10px;opacity:0}}.is-poked .toy-fill{animation:toy-pour .5s ease}@keyframes toy-pour{0%{translate:0 6px;opacity:.4}}.toy-dust{fill:var(--text-muted);animation:toy-dust .7s ease-out forwards}@keyframes toy-dust{to{transform:rotate(var(--a)) translateX(22px) rotate(calc(var(--a) * -1));opacity:0}}.toy-dust{transform-box:view-box;transform-origin:30px 44px}.toy-sparkle{stroke:#e0b84a;stroke-width:1.6;stroke-linecap:round;transform-box:fill-box;transform-origin:center;animation:toy-sparkle .7s ease forwards}@keyframes toy-sparkle{0%{scale:0;opacity:1}50%{scale:1.2}to{scale:.6;opacity:0}}.toy-card{transform-box:fill-box;transform-origin:center;animation:toy-flip .5s var(--ease-bounce)}@keyframes toy-flip{0%{transform:rotateY(90deg)}}.toy-rarity{font-family:var(--font-sans);font-size:11px;fill:var(--green)}.toy-sun{fill:#f2b84b;transition:cy .5s var(--ease-bounce)}.toy-clink{transform-box:fill-box;transform-origin:50% 100%;animation:toy-clink .4s var(--ease-bounce)}@keyframes toy-clink{30%{rotate:-12deg}60%{rotate:8deg}}.toy-hop{animation:toy-hop .4s var(--ease-bounce)}@keyframes toy-hop{40%{translate:0 -8px}}.toy-fill{transition:y .4s ease,width .4s ease}@media (max-width:768px){.toyshelf{grid-template-columns:repeat(2,1fr)}.toyshelf-item:nth-child(4n):after,.toyshelf-item:nth-child(4n+1):after{left:-1px;right:-1px;border-radius:0}.toyshelf-item:nth-child(odd):after{left:-1.25rem}.toyshelf-item:nth-child(2n):after{right:-1.25rem}}@media (prefers-reduced-motion:reduce){.toyshelf-scene,.toyshelf-scene *,.toyshelf-scene.is-poked{animation:none!important;transition:none!important}.toy-scribble{stroke-dashoffset:0}.toy-dust,.toy-sparkle{display:none}}.pile{position:relative;height:320px;border-radius:16px;background:var(--background-accent);overflow:hidden;opacity:0;transition:opacity .25s ease}.pile.is-ready{opacity:1}.pile-shake{position:absolute;top:12px;right:12px;z-index:2;padding:6px 14px;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-soft);font-family:var(--font-sans);font-size:12px;cursor:inherit;transition:background .2s ease,color .2s ease,transform .3s var(--ease-bounce)}.pile-shake:focus-visible,.pile-shake:hover{background:var(--green);color:var(--on-accent);outline:none}.pile-shake:active{transform:rotate(-6deg) scale(.95)}.pile-pill{position:absolute;top:0;left:0;display:inline-flex;align-items:center;gap:7px;padding:.5rem .95rem;background:var(--surface);border:1px solid var(--border);border-radius:999px;box-shadow:0 1px 4px rgba(0,0,0,.06);white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;touch-action:none;cursor:inherit;will-change:transform;transform:translate3d(0,-200px,0)}.pile-pill svg{flex-shrink:0}.pile-pill.is-grabbed{box-shadow:0 10px 22px rgba(0,0,0,.14);z-index:1}.pile-label{font-family:var(--font-sans);font-weight:500;font-size:.8rem;color:var(--text)}@media (max-width:600px){.pile{height:420px}}.browser-shot-live{background:#fff;position:relative}.cs-thanks{font-family:var(--font-sans);font-size:1rem;line-height:1.7;color:var(--text-soft);background:var(--surface-muted);border-radius:10px;padding:1.1rem 1.35rem;margin:2rem 0 1.5rem}.fine-trailer{position:relative;aspect-ratio:16/9;border-radius:8px;overflow:hidden;border:1px solid var(--line);background:#fdfcf7;isolation:isolate}.fine-trailer-poster,.fine-trailer-shield,.fine-trailer-video,.fine-trailer-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.fine-trailer-video{pointer-events:none}.fine-trailer-video iframe{top:-40%;height:180%}.fine-trailer-poster{-o-object-fit:cover;object-fit:cover;transition:opacity .4s ease}.fine-trailer-poster.is-hidden{opacity:0}.fine-trailer-shield{background:transparent;padding:0}.fine-trailer-shield:focus-visible{outline:2px solid var(--accent);outline-offset:-4px}.fine-trailer-big{position:absolute;top:50%;left:50%;width:64px;height:64px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:var(--on-accent);transform:translate(-50%,-50%);box-shadow:var(--shadow);pointer-events:none}.fine-trailer-big svg{width:22px;height:22px;margin-left:3px}.fine-trailer-controls{position:absolute;left:.75rem;bottom:.9rem;display:flex;gap:.4rem;opacity:1;transition:opacity .25s ease}.fine-trailer.is-playing:not(:hover):not(:has(:focus-visible)) .fine-trailer-controls{opacity:0}.fine-trailer-btn{height:32px;min-width:32px;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;padding:0 .6rem;border:none;border-radius:999px;background:rgba(26,26,24,.7);color:#fff;font-family:var(--font-sans);font-size:12px;font-weight:500;backdrop-filter:blur(6px);transition:background .15s ease}.fine-trailer-btn:hover{background:rgba(26,26,24,.88)}.fine-trailer-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.fine-trailer-sound.is-muted{background:var(--accent);color:var(--on-accent)}.fine-trailer.is-playing:not(:hover):not(:has(:focus-visible)) .fine-trailer-controls:has(.is-muted){opacity:1}.fine-trailer.is-playing:not(:hover):not(:has(:focus-visible)) .fine-trailer-controls:has(.is-muted) .fine-trailer-btn:not(.is-muted){opacity:0}.fine-trailer-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(26,26,24,.15);pointer-events:none}.fine-trailer-progress span{display:block;height:100%;background:var(--accent);transform:scaleX(0);transform-origin:left center;transition:transform .2s linear}.browser-actions{justify-self:end;display:flex;align-items:center}.fine-mute{width:28px;height:28px;display:grid;place-items:center;border:none;border-radius:50%;background:var(--surface);color:var(--text-muted);transition:color .15s ease,background .15s ease}.fine-mute:hover{color:var(--text)}.fine-mute[aria-pressed=true]{color:var(--accent)}.fine-mute:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.browser-shot-live iframe{display:block;width:100%;height:100%;border:0}.fine-newtab{display:inline-block;margin-top:.85rem;font-family:var(--font-sans);font-weight:500;font-size:13px;color:var(--green)}.fine-newtab:hover{text-decoration:underline}.fine-play-btn{display:none;font-family:var(--font-sans);font-weight:600;font-size:15px;color:var(--on-accent);background:var(--green);border-radius:999px;padding:.95rem 1.75rem;text-align:center}@media (max-width:768px){.fine-embed{display:none}.fine-play-btn{display:block}}.persona-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin:2rem 0;align-items:stretch}.persona-card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:20px;padding:1.75rem;overflow:hidden;transition:transform .4s var(--ease-bounce),box-shadow .4s ease}.persona-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.persona-card:before{content:"";position:absolute;inset:0 0 auto;height:6px}.persona-maya:before{background:linear-gradient(90deg,#fecc41 0 33.3%,#aee0ff 0 66.6%,#667f9e 0)}.persona-daniel:before{background:linear-gradient(90deg,#8fb573,#c9b458)}.persona-top{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.9rem}.persona-kind{font-family:var(--font-sans);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--green)}.persona-thinks{font-family:var(--font-sans);font-size:13px;line-height:1;color:var(--text-muted)}.persona-head{display:flex;align-items:center;gap:14px;margin-bottom:1.25rem}.persona-avatar{width:56px;height:56px;flex-shrink:0;border-radius:50%;background:var(--background-accent);overflow:hidden;transition:transform .5s var(--ease-bounce)}.persona-card:hover .persona-avatar{transform:rotate(-8deg) scale(1.08)}.persona-avatar img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block}.persona-id{display:flex;flex-direction:column;gap:2px;min-width:0}.persona-name{font-weight:500;font-size:1.25rem;letter-spacing:-.01em;line-height:1.2;color:var(--text)}.persona-name,.persona-role{font-family:var(--font-sans)}.persona-role{font-weight:400;font-size:13px;color:var(--text-muted)}.persona-widget{margin-bottom:1.5rem;padding:1rem;border-radius:16px;background:var(--surface-muted)}.persona-widget-label{font-family:var(--font-sans);font-size:12px;color:var(--text-muted);margin-bottom:.75rem}.persona-clocks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.persona-clock{display:grid;gap:2px;padding:.7rem .75rem;border-radius:14px;background:var(--city);color:#000;font-family:ui-rounded,"SF Pro Rounded",var(--font-nunito),"Nunito",system-ui,sans-serif;transition:transform .3s var(--ease-bounce)}.persona-clock:hover{transform:translateY(-3px) rotate(-1.5deg)}.persona-clock span{font-family:inherit}.persona-clock-city{font-size:12px;font-weight:700}.persona-clock-time{font-size:1.5rem;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.15}.persona-clock-offset{font-size:11px;font-weight:500;opacity:.75}.persona-rain{gap:3px;height:64px}.persona-rain,.persona-rain-day{display:flex;align-items:flex-end}.persona-rain-day{flex:1;height:100%;padding:0;border:0;background:none;cursor:inherit}.persona-rain-day span{display:block;width:100%;height:var(--h);min-height:4px;border-radius:3px;background:color-mix(in srgb,#6f86c9 55%,var(--surface-muted));transform-origin:bottom;transition:transform .6s var(--ease-bounce),background .2s ease;transition-delay:calc(var(--i) * 18ms)}.persona-rain-day.is-dry span{background:var(--green)}.persona-rain-day.is-active span{background:var(--text);transition-delay:0ms}.persona-rain-day:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.persona-rain.is-waiting .persona-rain-day span{transform:scaleY(0)}.persona-rain-readout{font-family:var(--font-sans);font-size:13px;color:var(--text-muted);margin-top:.65rem;min-height:1.3em;font-variant-numeric:tabular-nums}.persona-rain-readout strong{color:var(--text);font-weight:500}.persona-rain-dry{color:var(--green)}.persona-field{margin-bottom:1.25rem}.persona-field:last-child{margin-bottom:0}.persona-label{font-family:var(--font-sans);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--text-subtle);margin-bottom:.35rem}.persona-text{font-weight:400;font-size:15px;line-height:1.6}.persona-quote,.persona-text{font-family:var(--font-sans);color:var(--text)}.persona-quote{font-weight:500;font-size:1.1rem;line-height:1.45;letter-spacing:-.01em;border-left:2px solid var(--green);padding-left:14px;margin-top:.4rem}.persona-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:.5rem}.persona-tag{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-sans);font-weight:500;font-size:12px;color:var(--text-soft);background:var(--background-accent);border:none;border-radius:999px;padding:4px 6px 4px 12px;cursor:inherit;transition:background .2s ease,color .2s ease,transform .3s var(--ease-bounce)}.persona-tag-n{font-size:10px;font-variant-numeric:tabular-nums;padding:1px 6px;border-radius:999px;background:var(--surface);color:var(--text-muted)}.persona-tag:focus-visible,.persona-tag:hover{background:var(--green);color:var(--on-accent);transform:translateY(-2px);outline:none}.cs-scenario{scroll-margin-top:6rem}.cs-scenario.is-flash{--flash:color-mix(in srgb,var(--green) 10%,transparent);border-radius:12px;animation:scenario-flash 1.6s ease .4s}@keyframes scenario-flash{0%,to{background:transparent;box-shadow:0 0 0 0 transparent}30%{background:var(--flash);box-shadow:0 0 0 1rem var(--flash)}}@media (max-width:768px){.persona-grid{grid-template-columns:1fr}.persona-clock-time{font-size:1.2rem}}@media (prefers-reduced-motion:reduce){.persona-avatar,.persona-card,.persona-clock{transition:none}.cs-scenario.is-flash{animation:none}}.case-label{font-family:var(--font-sans);font-size:.65rem;font-weight:500;text-transform:uppercase;letter-spacing:.08em;color:var(--green);margin-bottom:.4rem}.case-heading{font-family:var(--font-serif),"Instrument Serif",serif;font-size:clamp(1.75rem,3.35vw,2.3rem);font-weight:400;color:var(--text);line-height:1.15;letter-spacing:-.01em;margin-bottom:.75rem;font-synthesis:none}.case-body{font-family:var(--font-sans);font-weight:400;font-size:1rem;color:var(--text-soft);line-height:1.8;margin-bottom:1rem}.case-body:last-child{margin-bottom:0}.case-lead{font-family:var(--font-sans);font-weight:600;font-size:1rem;color:var(--text)}.case-decision{font-family:var(--font-serif),"Instrument Serif",serif;font-size:clamp(1.4rem,2.6vw,1.8rem);font-weight:400;color:var(--text);line-height:1.15;letter-spacing:-.01em;margin:2.25rem 0 .6rem;font-synthesis:none}.case-decision-num{font-family:inherit;font-size:inherit;font-weight:inherit;font-style:inherit;letter-spacing:inherit;color:var(--green)}.case-list{list-style:none;margin:0 0 1rem;padding:0}.case-list li{font-family:var(--font-sans);font-weight:400;font-size:1rem;color:var(--text-soft);line-height:1.8;padding-left:1.1rem;position:relative}.case-list li:before{content:"";position:absolute;left:0;top:.78em;width:5px;height:5px;border-radius:50%;background:var(--green)}.case-list strong{font-family:var(--font-sans);font-weight:600;color:var(--text)}.snapshot-card{background:var(--background-accent);border-radius:12px;padding:1.5rem 1.75rem;margin-bottom:.5rem}.snapshot-fields{display:flex;flex-wrap:wrap;gap:1.25rem 2.5rem}.snapshot-field{display:flex;flex-direction:column;gap:.3rem;min-width:0}.snapshot-label{font-family:var(--font-sans);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--green)}.snapshot-value{font-family:var(--font-sans);font-weight:400;font-size:14px;color:var(--text)}.snapshot-divider{height:1px;background:var(--border);margin:1.25rem 0 1rem}.snapshot-oneline{font-family:var(--font-sans);font-weight:500;font-size:15px;line-height:1.6;color:var(--text)}.snapshot-oneline strong{font-family:var(--font-sans);font-weight:600}@media (max-width:768px){.snapshot-card{padding:1.25rem}.snapshot-fields{display:grid;grid-template-columns:1fr 1fr;gap:1rem}}.ba-slider{position:relative;width:100%;overflow:hidden;border-radius:8px;-webkit-user-select:none;-moz-user-select:none;user-select:none;border:1px solid var(--line)}.ba-after img{width:100%;display:block}.ba-before{position:absolute;inset:0;overflow:hidden}.ba-label{position:absolute;top:.75rem;font-family:var(--font-sans);font-size:.6rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;background:rgba(26,26,24,.6);color:#fff;padding:.2rem .5rem;border-radius:3px}.ba-label-before{right:.75rem}.ba-label-after{left:.75rem}.ba-handle{bottom:0;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.ba-handle,.ba-line{position:absolute;top:0}.ba-line{width:2px;height:100%;background:#fff}.ba-circle{width:36px;height:36px;border-radius:50%;background:#fff;color:#1a1a18;font-size:.8rem;display:flex;align-items:center;justify-content:center;position:relative;z-index:2;box-shadow:0 2px 8px rgba(0,0,0,.2)}.comparison-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.5rem 0;align-items:stretch}.comparison-side{position:relative;border-radius:8px;overflow:hidden;border:1px solid var(--line);display:flex;flex-direction:column}.comparison-side img{flex:1;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:top center;object-position:top center;display:block}.comparison-label{position:absolute;top:.6rem;left:.6rem;font-family:var(--font-sans);font-size:.6rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;background:rgba(26,26,24,.65);color:#fff;padding:.2rem .5rem;border-radius:3px}.comparison-row-ratios{height:360px}.cs-panel-wrap{position:relative;margin-top:clamp(3rem,6vw,4.5rem)}.cs-panel-wrap.is-switching{overflow-y:clip}.cs-panel-leaving{position:absolute;top:0;left:0;right:0;pointer-events:none}.cs-page{--cs-bar-h:0px;padding:2.5rem clamp(1.25rem,4vw,4rem) 5rem}.cs-layout{margin-top:3rem}.cs-main .cs-tabs{margin-top:0}.cs-indicator{display:none}@media (max-width:768px){.cs-page{--cs-bar-h:4rem;padding-top:1.5rem}.cs-indicator{display:block}.cs-indicator+.cs-main .cs-tabs{margin-top:1.25rem}}.cs-toc-link{display:flex;gap:.6rem;padding:.35rem 0 .35rem .75rem;border-left:1.5px solid var(--line);font-family:var(--font-sans);font-size:13px;line-height:1.4;color:var(--text-muted);text-decoration:none;transition:color .2s ease,border-color .2s ease}.cs-toc-link:hover{color:var(--text)}.cs-toc-link.is-active{color:var(--text);border-left-color:var(--accent)}.cs-toc-num{font-family:var(--font-sans);font-weight:500;font-size:12px;color:var(--accent);font-variant-numeric:tabular-nums}.cs-indicator{position:sticky;top:calc(var(--cs-bar-h) + .5rem);z-index:20;width:-moz-fit-content;width:fit-content;max-width:100%}.cs-indicator summary{list-style:none;display:inline-flex;align-items:center;gap:.55rem;padding:.45rem .9rem;border-radius:999px;border:1px solid var(--line);background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(8px);box-shadow:var(--shadow);font-family:var(--font-sans);font-weight:500;font-size:13px;color:var(--text)}.cs-indicator summary::-webkit-details-marker{display:none}.cs-indicator-chevron{color:var(--text-muted);transition:transform .2s ease}.cs-indicator[open] .cs-indicator-chevron{transform:rotate(180deg)}.cs-indicator-menu{position:absolute;top:calc(100% + .4rem);left:0;min-width:14rem;padding:.5rem .75rem;border-radius:12px;border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow)}.cs-indicator-menu .cs-toc-link{padding-block:.45rem}.cs-section{scroll-margin-top:calc(var(--cs-bar-h) + 4.5rem)}.cs-section+.cs-section{margin-top:3rem}.cs-section .case-body,.cs-section .case-list{max-width:none}.cs-section>:last-child{margin-bottom:0}.cs-section-header{margin-bottom:1.5rem}.cs-eyebrow{font-family:var(--font-sans);font-weight:500;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:.6rem}.cs-headline{font-family:var(--font-serif),"Instrument Serif",serif;font-weight:400;font-size:clamp(1.7rem,3vw,2rem);line-height:1.15;letter-spacing:-.01em;color:var(--text);font-synthesis:none}.cs-figure{margin:2rem 0}.cs-figure-full{max-width:100%}.cs-figure-large{max-width:52rem}.cs-figure-medium{max-width:38rem}.cs-figure-small{max-width:26rem}.cs-figure-media{position:relative}.cs-figure-media>img,.cs-figure-media>video{width:100%;height:auto;display:block;border-radius:8px;border:1px solid var(--line)}.cs-figure-label{position:absolute;top:.6rem;left:.6rem;z-index:2;font-family:var(--font-sans);font-size:.6rem;font-weight:500;letter-spacing:.08em;background:rgba(26,26,24,.65);color:#fff;padding:.2rem .5rem;border-radius:3px;pointer-events:none}.cs-caption{font-family:var(--font-sans);font-size:13px;line-height:1.5;color:var(--text-muted);text-align:center;margin-top:.65rem}.cs-pair{display:grid;grid-template-columns:1fr 1fr;gap:1rem;align-items:start}.cs-pair-stack{grid-template-columns:1fr;gap:.75rem}.cs-pair .cs-figure{margin:0}.cs-hero{margin-top:1.75rem}.cs-status{display:inline-flex;align-items:center;gap:.5rem;padding:.3rem .75rem;border-radius:999px;background:var(--surface-muted);font-family:var(--font-sans);font-weight:500;font-size:12px;color:var(--text-soft)}.cs-status-dot{width:6px;height:6px;border-radius:50%;background:var(--accent)}.cs-hero-title{font-family:var(--font-serif),"Instrument Serif",serif;font-weight:400;font-size:clamp(2.4rem,5vw,3.4rem);line-height:1.15;letter-spacing:-.01em;color:var(--text);margin:1rem 0 .9rem;font-synthesis:none}.cs-hero-lede{font-family:var(--font-sans);font-size:18px;line-height:1.6;color:var(--text-muted)}.cs-meta{margin-top:2rem;padding-top:1.5rem}.cs-meta-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem 2rem}.cs-meta-item dt{font-family:var(--font-sans);font-weight:500;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-subtle);margin-bottom:.3rem}.cs-meta-item dd{font-weight:400;font-size:15px;line-height:1.45;color:var(--text)}.cs-meta-item dd,.cs-tldr{font-family:var(--font-sans)}.cs-tldr{margin-top:1.5rem;font-size:18px;line-height:1.7;color:var(--text-soft)}.cs-tldr strong{font-weight:600;font-size:12px;letter-spacing:.08em;color:var(--text);margin-right:.4rem}.cs-cta{display:inline-flex;gap:.4rem;margin-top:1.5rem;padding:.65rem 1.2rem;border-radius:999px;background:var(--accent);color:var(--on-accent);font-family:var(--font-sans);font-weight:500;font-size:.9rem}.cs-hero>.cs-figure{margin:2.5rem 0 0}.cs-callout{margin:2rem 0 0;padding-left:1.25rem;border-left:2px solid var(--accent);font-family:var(--font-serif),"Instrument Serif",serif;font-style:italic;font-size:clamp(1.3rem,2.4vw,1.5rem);line-height:1.35;color:var(--text);font-weight:400;font-synthesis:none}.cs-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:1.5rem 2rem;margin:0 0 2rem}.cs-stat{display:flex;flex-direction:column;gap:.35rem}.cs-stat-value{font-family:var(--font-sans);font-weight:400;font-size:3rem;line-height:1;letter-spacing:-.02em;color:var(--text)}.cs-stat-label{font-family:var(--font-sans);font-size:13px;color:var(--text-muted)}.cs-findings{list-style:none;padding:0;margin:0;display:grid;gap:2.5rem}.cs-finding{display:grid;grid-template-columns:2.25rem 1fr;gap:0 .75rem}.cs-finding-num{font-weight:500;font-size:14px;color:var(--accent)}.cs-finding-body>p,.cs-finding-num{font-family:var(--font-sans);line-height:1.8}.cs-finding-body>p{font-size:1rem;color:var(--text-soft)}.cs-finding-body>p strong{font-weight:600;color:var(--text)}.cs-finding-body .cs-figure{margin:1.25rem 0 0}.cs-scenario+.cs-scenario{margin-top:3.5rem;padding-top:3.5rem}.cs-scenario-q{display:flex;align-items:baseline;gap:.75rem;font-family:var(--font-serif),"Instrument Serif",serif;font-weight:400;font-size:clamp(1.3rem,2.4vw,1.5rem);line-height:1.15;letter-spacing:-.01em;color:var(--text);margin-bottom:.75rem;font-synthesis:none}.cs-scenario-num{font-family:var(--font-sans);font-weight:500;font-size:13px;color:var(--accent);flex-shrink:0}.cs-scenario .cs-figure{margin:1.5rem 0}.cs-scenario-split{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(1.5rem,3.5vw,3rem);align-items:start;margin-top:1.5rem}.cs-scenario-split .cs-figure{margin:0;max-width:none}.cs-scenario-split .case-body:first-child{margin-top:0}@media (max-width:960px){.cs-scenario-split{grid-template-columns:1fr}}.cs-flow{position:relative;padding-bottom:3.25rem}.cs-flow-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}.cs-flow-steps li{display:flex;align-items:center}.cs-flow-box{flex:1;display:grid;place-items:center;min-height:4.5rem;padding:.75rem 1rem;border-radius:12px;background:var(--surface-muted);font-family:var(--font-sans);font-weight:500;font-size:13px;line-height:1.35;text-align:center;color:var(--text)}.cs-flow-arrow{flex-shrink:0;margin:0 .5rem;color:var(--accent)}.cs-flow-loop{position:absolute;left:calc(12.5% + 1.1rem);right:12.5%;bottom:.9rem;height:2.35rem;border:1.5px solid var(--accent);border-top:none;border-radius:0 0 12px 12px;color:var(--accent)}.cs-flow-loop-head{position:absolute;left:-6.75px;top:-4px}.cs-flow-loop-label{position:absolute;left:50%;bottom:0;transform:translate(-50%,50%);padding:0 .6rem;background:var(--bg);font-family:var(--font-sans);font-weight:500;font-size:12px;color:var(--accent);white-space:nowrap}.is-waiting,.is-waiting *{transition:none!important}.cs-flow-arrow,.cs-flow-loop,.cs-flow-steps li{transition:opacity .5s cubic-bezier(.22,1,.36,1),transform .5s cubic-bezier(.22,1,.36,1),clip-path .7s cubic-bezier(.65,0,.35,1)}.cs-flow-arrow,.cs-flow-steps li{transition-delay:calc(var(--i) * .18s)}.cs-flow-arrow{transform-origin:left center}.cs-flow-loop{transition-delay:.8s}.cs-flow.is-waiting .cs-flow-steps li{opacity:0;transform:translateY(10px)}.cs-flow.is-waiting .cs-flow-arrow{transform:scaleX(0)}.cs-flow.is-waiting .cs-flow-loop{opacity:0;clip-path:inset(-2rem -2rem -2rem 100%)}.cs-flow-loop{clip-path:inset(-2rem -2rem -2rem -2rem)}.cs-flow-box{transition:transform .3s var(--ease-bounce),box-shadow .3s ease,background .2s ease}.cs-flow-box:hover{transform:translateY(-3px);box-shadow:var(--shadow);background:color-mix(in srgb,var(--accent) 10%,var(--surface-muted))}.cs-takeaways{display:grid;gap:1.75rem}.cs-takeaway h3{font-family:var(--font-serif),"Instrument Serif",serif;font-weight:400;font-size:1.35rem;line-height:1.15;color:var(--text);margin-bottom:.35rem;font-synthesis:none}.cs-next{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;margin-top:clamp(4.5rem,9vw,7rem);padding-top:2rem;border-top:1px solid var(--line);color:inherit;text-decoration:none}.cs-next-text{display:flex;flex-direction:column;gap:.4rem}.cs-next-text .cs-eyebrow{margin:0}.cs-next-title{font-family:var(--font-serif),"Instrument Serif",serif;font-size:clamp(1.8rem,3.5vw,2.4rem);line-height:1.15;letter-spacing:-.01em;color:var(--text);font-weight:400;font-synthesis:none}.cs-next-thumb{width:min(16rem,40%);aspect-ratio:16/10;border-radius:8px;overflow:hidden;flex-shrink:0;background:var(--surface-muted)}.cs-next-thumb img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;display:block;transition:transform .4s ease}.cs-next:hover .cs-next-thumb img{transform:scale(1.04)}@media (max-width:768px){.cs-meta-row,.cs-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.cs-pair{grid-template-columns:1fr}.cs-flow{padding:0 3rem 0 0}.cs-flow-steps{grid-template-columns:1fr}.cs-flow-steps li{flex-direction:column;align-items:stretch}.cs-flow-box{min-height:3.25rem}.cs-flow-arrow{align-self:center;margin:.4rem 0;transform:rotate(90deg)}.cs-flow-loop{left:auto;right:1rem;top:1.6rem;bottom:1.6rem;width:2rem;height:auto;border:1.5px solid var(--accent);border-left:none;border-radius:0 12px 12px 0}.cs-flow-loop-head{left:-6px;top:-4.75px;transform:rotate(-90deg)}.cs-flow-loop-label{left:100%;bottom:50%;transform:translate(-50%,50%) rotate(90deg)}.cs-finding{grid-template-columns:1fr}.cs-finding-num{line-height:1.4;margin-bottom:.25rem}.cs-next{flex-direction:column;align-items:flex-start}.cs-next-thumb{width:100%}}@media (prefers-reduced-motion:reduce){.cs-next-thumb img{transition:none}}.cs-tabs{position:relative;display:inline-flex;gap:4px;padding:4px;margin:3rem 0 0;border-radius:999px;background:var(--surface-muted);scroll-margin-top:1.5rem}.cs-tab{border:none;border-radius:999px;padding:.45rem 1.1rem;background:transparent;color:var(--text-muted);font-family:var(--font-sans);font-weight:500;font-size:14px;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.cs-tab:hover{color:var(--text)}.cs-tab{position:relative;z-index:1}.cs-tab.is-active{color:var(--text)}.cs-tab-pill{position:absolute;top:4px;bottom:4px;left:0;border-radius:999px;background:var(--surface);box-shadow:var(--shadow);pointer-events:none}.cs-tab-pill.is-ready{transition:transform .3s cubic-bezier(.22,1,.36,1),width .3s cubic-bezier(.22,1,.36,1)}@media (prefers-reduced-motion:reduce){.cs-tab-pill.is-ready{transition:none}}.cs-tab:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cs-see-process{display:inline-flex;align-items:center;gap:8px;margin-top:.5rem;padding:12px 20px;border:none;border-radius:999px;background:var(--surface);box-shadow:var(--shadow);color:var(--text);font-family:var(--font-sans);font-weight:500;font-size:15px;line-height:1;transition:transform .18s ease,color .18s ease,background-color .18s ease,box-shadow .18s ease}.cs-see-process:focus-visible,.cs-see-process:hover{background:var(--green);color:var(--on-accent);transform:translateY(-2px);box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 25%,transparent)}.cs-see-process:active{transform:translateY(0);box-shadow:var(--shadow)}.cs-see-process span{transition:transform .18s ease}.cs-see-process:focus-visible span,.cs-see-process:hover span{transform:translateX(3px)}.tg-notes{max-width:52rem;margin:.5rem 0;padding:1.5rem 1.75rem 1.6rem;background:#fdfcf9;border-radius:6px;box-shadow:var(--shadow);transform:rotate(-1deg)}.tg-notes-title{font-family:var(--font-sans);font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:#8a8984;margin-bottom:.9rem}.tg-notes ul{list-style:none;display:grid;gap:.55rem}.tg-notes li{display:flex;align-items:baseline;gap:.65rem;font-family:var(--font-hand),var(--font-caveat),cursive;font-feature-settings:"calt" 1,"liga" 1;font-size:2.75rem;letter-spacing:-.06em;line-height:1;color:#2a2a27}.tg-notes-line{display:block;font-family:inherit;transition:clip-path .9s cubic-bezier(.45,0,.55,1);transition-delay:calc(var(--i) * .32s);clip-path:inset(-.3em -.2em -.3em -.2em)}.tg-notes.is-waiting .tg-notes-line{clip-path:inset(-.3em 100% -.3em -.2em)}.tg-notes-box{transition:opacity .3s ease;transition-delay:calc(var(--i) * .32s)}.tg-notes.is-waiting .tg-notes-box{opacity:0}.tg-notes-box{flex-shrink:0;width:16px;height:16px;border:1.25px solid #9a9993;border-radius:2px;transform:translateY(1px)}.tg-tiers{list-style:none;margin:0;padding:0;display:grid;gap:10px}.tg-tiers li{display:flex;align-items:center;height:44px;padding:0 1rem;border-radius:8px;font-family:var(--font-sans);font-size:14px;color:var(--text);white-space:nowrap}.tg-tiers li.is-strong{color:var(--on-accent)}.tg-tiers strong{font-weight:600}.tg-tiers li{gap:.4rem;clip-path:inset(0 0 0 0 round 8px);transition:clip-path .9s cubic-bezier(.65,0,.35,1) calc(var(--i) * .14s),transform .3s var(--ease-bounce)}.tg-tiers.is-waiting li{clip-path:inset(0 100% 0 0 round 8px)}.tg-tiers li:hover{transform:translateX(4px)}.tg-tier-q{margin-left:auto;padding-left:1rem;opacity:0;transform:translateX(-6px);transition:opacity .25s ease,transform .3s ease;font-style:italic;padding-right:.15em}.tg-tiers li:hover .tg-tier-q{opacity:.85;transform:none}.tg-ds{margin-top:2rem;font-family:var(--font-sans)}.tg-ds-label{font-size:.65rem;letter-spacing:.15em;text-transform:uppercase;color:var(--text-muted);margin:2rem 0 .75rem}.tg-ds>.tg-ds-label:first-child{margin-top:0}.tg-ds-swatches{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.tg-ds-swatch{border-radius:10px;overflow:hidden;border:1px solid var(--line);background:var(--surface)}.tg-ds-chip{height:64px}.tg-ds-meta{padding:.55rem .75rem .65rem}.tg-ds-hex{font-size:.7rem;font-weight:500;color:var(--text);margin-bottom:.1rem}.tg-ds-name{font-size:.65rem;color:var(--text-muted)}.tg-ds-role{font-size:.62rem;line-height:1.45;color:var(--text-subtle);margin-top:.15rem}.tg-ds-card{border:1px solid var(--line);border-radius:10px;padding:1.1rem 1.4rem;background:var(--surface)}.tg-ds-type{display:grid;grid-template-columns:9rem 1fr;grid-template-areas:"name sample" "name use";-moz-column-gap:1rem;column-gap:1rem;align-items:baseline;padding:.7rem 0;border-bottom:1px solid var(--line)}.tg-ds-type:first-child{padding-top:0}.tg-ds-type:last-child{border-bottom:none;padding-bottom:0}.tg-ds-type-name{grid-area:name;display:flex;flex-direction:column;font-size:.75rem;font-weight:500;color:var(--text)}.tg-ds-type-name span{font-size:.62rem;font-weight:400;color:var(--text-subtle);margin-top:.15rem}.tg-ds-type-sample{grid-area:sample;color:var(--text)}.tg-ds-type-use{grid-area:use;font-size:.65rem;color:var(--text-muted)}.tg-ds-split{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.tg-ds-spacing{display:flex;align-items:flex-end;gap:.9rem;margin-bottom:.75rem}.tg-ds-space{display:flex;flex-direction:column;align-items:center;gap:.35rem;font-size:.62rem;color:var(--text-subtle)}.tg-ds-space span{display:block;background:var(--accent);border-radius:2px}.tg-ds-components{list-style:none;display:grid;gap:.4rem;font-size:.75rem;color:var(--text-soft)}.tg-ds-components li:before{content:"·";margin-right:.45rem;color:var(--text-subtle)}.before-after{position:relative;width:100%;overflow:hidden;border-radius:8px;border:1px solid var(--line);background:var(--surface-muted);touch-action:pan-y;-webkit-user-select:none;-moz-user-select:none;user-select:none}.before-after img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-webkit-user-drag:none}.before-after-top{background:var(--surface-muted)}.before-after-label{position:absolute;top:.6rem;z-index:2;font-family:var(--font-sans);font-size:.6rem;font-weight:500;letter-spacing:.08em;background:rgba(26,26,24,.65);color:#fff;padding:.2rem .5rem;border-radius:3px;pointer-events:none}.before-after-label-l{left:.6rem}.before-after-label-r{right:.6rem}.before-after-handle{position:absolute;top:0;bottom:0;z-index:3;width:2px;margin-left:-1px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.12);outline:none}.before-after-knob{position:absolute;top:50%;left:50%;width:36px;height:36px;display:grid;place-items:center;border-radius:50%;background:#fff;color:#1a1a18;box-shadow:0 2px 10px rgba(0,0,0,.25);transform:translate(-50%,-50%);transition:transform .15s ease}.before-after.is-dragging .before-after-knob,.before-after:hover .before-after-knob{transform:translate(-50%,-50%) scale(1.08)}.before-after-handle:focus-visible .before-after-knob{outline:2px solid var(--accent);outline-offset:2px}@media (max-width:768px){.tg-ds-split{grid-template-columns:1fr}.tg-ds-swatches{grid-template-columns:repeat(2,1fr)}.tg-ds-type{grid-template-columns:1fr;grid-template-areas:"name" "sample" "use";row-gap:.25rem}}@media (prefers-reduced-motion:reduce){.tg-notes{transform:none}}.hotspot{position:absolute;z-index:10}.hotspot-dot{width:24px;height:24px;border-radius:50%;background:var(--accent);color:var(--on-accent);font-family:var(--font-sans);font-size:.65rem;font-weight:500;display:flex;align-items:center;justify-content:center;cursor:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 30%,transparent);animation:pulse 2s ease-in-out infinite;transition:transform .2s ease}.hotspot-dot:hover{transform:scale(1.15)}@keyframes pulse{0%,to{box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 30%,transparent)}50%{box-shadow:0 0 0 6px rgba(53,90,75,.1)}}.hotspot-tooltip{position:absolute;left:32px;top:50%;transform:translateY(-50%) translateX(-4px);background:var(--text);color:var(--bg);font-family:var(--font-sans);font-size:.75rem;line-height:1.5;padding:.6rem .9rem;border-radius:6px;width:220px;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;z-index:20}.hotspot.active .hotspot-tooltip,.hotspot:hover .hotspot-tooltip{opacity:1;transform:translateY(-50%) translateX(0);pointer-events:all}@media (hover:none) and (pointer:coarse){*,body{cursor:auto!important}}@media (pointer:coarse){#cursor{display:none!important}body{cursor:auto!important}}.peek,.peek-thumbs{position:relative}.peek-thumbs{display:inline-block;width:1.6em;height:1.25em;margin:-.25em .15em -.25em .3em;vertical-align:middle}.peek-thumb{position:absolute;top:0;left:calc(var(--i) * .6em);height:100%;width:auto;max-width:none;aspect-ratio:4/5;box-sizing:border-box;-o-object-fit:cover;object-fit:cover;border:2px solid var(--surface);border-radius:4px;box-shadow:0 1px 4px rgba(0,0,0,.18);rotate:-6deg;transition:opacity .16s ease .26s}.peek-thumb+.peek-thumb{rotate:5deg}.peek.is-open .peek-thumb{opacity:0;transition:opacity .12s ease}.peek-fan{position:absolute;left:50%;top:50%;width:0;height:0;z-index:60;pointer-events:none}.peek-card{position:absolute;left:0;top:0;width:72px;height:90px;max-width:none;box-sizing:border-box;-o-object-fit:cover;object-fit:cover;border:3px solid var(--surface);border-radius:6px;box-shadow:0 12px 24px -8px rgba(0,0,0,.3);opacity:0;transform:translate(-50%,-50%) translate(var(--x0)) rotate(var(--r0)) scale(.25);transition:transform .26s cubic-bezier(.22,1,.36,1),opacity 80ms ease .2s}.peek.is-open .peek-card{opacity:1;transform:translate(-50%,-50%) translate(calc(var(--x) + var(--shift)),var(--y)) rotate(var(--r));transition:transform .42s cubic-bezier(.22,1.25,.36,1) calc(var(--i) * 40ms),opacity .1s ease calc(var(--i) * 40ms)}@media (prefers-reduced-motion:reduce){.peek-card,.peek.is-open .peek-card{transform:translate(-50%,-50%) translate(calc(var(--x) + var(--shift)),var(--y)) rotate(var(--r));transition:opacity .15s ease}.peek-thumb,.peek.is-open .peek-thumb{transition:none}}html{scroll-behavior:auto!important}@media (max-width:768px){:root{--text-hero:clamp(2rem,8vw,3rem);--text-h2:clamp(1.4rem,5vw,2rem);--text-h3:clamp(1rem,4vw,1.3rem)}}.side-panel-intro{padding-top:1rem}.side-panel-spacer{flex:1}.explore-panel,.toc-panel{background:var(--panel-inset);border:1px solid var(--line);border-radius:10px;padding:.75rem 1rem}.card-link{display:block;text-decoration:none}.case-back{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;color:var(--ink-muted);margin-bottom:2.5rem;transition:color .2s ease}.case-back:hover{color:var(--green)}.case-title{font-family:var(--font-display);font-size:clamp(2.8rem,5.7vw,3.9rem);font-weight:400;color:var(--ink);line-height:1.15;letter-spacing:-.01em;margin-bottom:.75rem;font-synthesis:none}.case-subtitle{font-size:1.1rem;color:var(--ink-soft);line-height:1.6;margin-bottom:1.5rem}.case-next{border-top:1px solid var(--line);margin:1rem 0 4rem;padding-top:2.5rem}.case-next-label{font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.2em;color:var(--ink-muted);margin-bottom:.6rem}.case-next-link{font-family:var(--font-display);font-style:italic;font-size:1.95rem;color:var(--ink);transition:color .2s ease;font-weight:400;font-synthesis:none}.case-next-link:hover{color:var(--green)}.toc-label{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.reading-ring{display:inline-flex;align-items:center;gap:.4rem;color:var(--green);font-variant-numeric:tabular-nums;letter-spacing:.02em}.reading-ring svg{width:18px;height:18px;transform:rotate(-90deg)}.reading-ring circle{fill:none;stroke-width:2.5}.reading-ring-track{stroke:color-mix(in srgb,var(--green) 16%,transparent)}.reading-ring-fill{stroke:var(--green);stroke-linecap:round;transition:stroke-dasharray .12s linear}.reading-ring-fill[stroke-dasharray^="0 "]{stroke:transparent}.reading-ring.is-done svg{animation:reading-ring-done .5s var(--ease-bounce)}@keyframes reading-ring-done{50%{transform:rotate(-90deg) scale(1.15)}}@media (prefers-reduced-motion:reduce){.reading-ring-fill{transition:none}.reading-ring.is-done svg{animation:none}}@media (min-width:769px){.reading-progress{display:none}}.reading-progress{position:fixed;top:0;left:var(--panel-w);right:0;height:4px;background:color-mix(in srgb,var(--green) 14%,transparent);z-index:100}.reading-progress-fill{height:100%;background:var(--green);border-radius:0 999px 999px 0;box-shadow:0 0 8px color-mix(in srgb,var(--green) 45%,transparent);transition:width 50ms linear}@media (max-width:768px){.side-panel{position:sticky;top:0;padding:.85rem 1.25rem;flex-direction:row;align-items:center;justify-content:space-between;gap:.75rem;background:color-mix(in srgb,var(--panel-bg) 94%,transparent);backdrop-filter:blur(8px)}.side-panel-intro{padding-top:0;display:flex;align-items:center;gap:.6rem;min-width:0}.side-panel-intro .brand-home .brand-icon{width:26px!important;height:26px!important}.side-panel .dict-header{margin:0}.side-panel .dict-headword{font-size:1.4rem}.side-panel .dict-list,.side-panel .dict-meta,.side-panel .location-badge,.side-panel .status-line,.side-panel-spacer{display:none}.side-panel .explore-panel{display:flex;gap:.15rem;padding:0;background:none;border:none}.side-panel .explore-label,.side-panel .explore-link-num{display:none}.side-panel .explore-link{padding:.4rem .6rem}.reading-progress{left:0}}@media (prefers-reduced-motion:reduce){.sketch-btn,a,body,button,input,select,textarea{cursor:auto}.sketch-btn,a,button{cursor:pointer}}.back-to-top{position:fixed;right:1.5rem;bottom:1.5rem;z-index:900;display:inline-flex;align-items:center;gap:8px;padding:12px 20px;background:var(--surface);border:0;border-radius:999px;box-shadow:var(--shadow);font-family:var(--font-sans);font-size:15px;font-weight:500;line-height:1;color:var(--text);opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .2s ease,transform .18s ease,bottom .2s ease,color .18s ease,background-color .18s ease,box-shadow .18s ease}.back-to-top svg{transition:transform .18s ease}.back-to-top.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.back-to-top.is-lifted{bottom:4rem}.back-to-top.is-visible:focus-visible,.back-to-top.is-visible:hover{background:var(--green);color:var(--on-accent);transform:translateY(-2px);box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 25%,transparent)}.back-to-top:focus-visible svg,.back-to-top:hover svg{transform:translateY(-2px)}.back-to-top.is-visible:active{transform:translateY(0);box-shadow:var(--shadow)}@media (prefers-reduced-motion:reduce){.back-to-top,.back-to-top.is-visible,.back-to-top.is-visible:focus-visible,.back-to-top.is-visible:hover{transform:none}.back-to-top svg{transform:none!important}}.text-link{color:inherit;font-family:var(--font-sans);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--accent) 40%,transparent);text-underline-offset:3px;padding:1px 3px;margin:-1px -3px;border-radius:6px;-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-color .12s ease,text-decoration-color .12s ease}.text-link:focus-visible,.text-link:hover{background-color:color-mix(in srgb,var(--accent) 18%,transparent);text-decoration-color:transparent}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.reveal-wait{opacity:0!important}.cs-grid-label{font-family:var(--font-sans);font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted);margin-bottom:.75rem}.icon-btn{display:grid;place-items:center;flex-shrink:0;padding:0;border:0;border-radius:50%;background:var(--surface);color:var(--text);box-shadow:var(--shadow);transition:transform .18s ease,color .18s ease,background-color .18s ease,box-shadow .18s ease,opacity .18s ease}.icon-btn-sm{width:32px;height:32px}.icon-btn-lg{width:44px;height:44px}.icon-btn:not(:disabled):focus-visible,.icon-btn:not(:disabled):hover{background:var(--accent);color:var(--cursor-pill-text);transform:translateY(-2px);box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 25%,transparent);outline:none}.icon-btn:not(:disabled):active{transform:translateY(0)}.icon-btn:disabled{opacity:.35}@media (prefers-reduced-motion:reduce){.icon-btn:not(:disabled):focus-visible,.icon-btn:not(:disabled):hover{transform:none}}.cs-film{position:relative}.cs-film-row{list-style:none;margin:0;padding:0;display:flex;-moz-column-gap:1rem;column-gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}.cs-film-row::-webkit-scrollbar{display:none}.cs-film-item{flex:0 0 32%;scroll-snap-align:start}.cs-film-item img{width:100%;height:auto;display:block;border-radius:8px;border:1px solid var(--line)}.cs-film-caption,.cs-grid-caption{display:block;font-family:var(--font-sans);font-weight:400;font-size:13px;color:var(--text-muted);margin-top:.5rem}.cs-film-nav{display:flex;justify-content:flex-end;gap:.5rem;margin-top:.75rem}.cs-flip,.cs-hover-preview{position:relative;display:grid;border-radius:8px;overflow:hidden;border:1px solid var(--line);background:#fdfcf7}.cs-flip img,.cs-hover-preview img{grid-area:1/1;width:100%;height:auto;display:block;opacity:0}.cs-flip img.is-on{opacity:1}.cs-flip-count{position:absolute;right:.6rem;bottom:.6rem;font-family:var(--font-sans);font-size:11px;font-weight:500;font-variant-numeric:tabular-nums;background:rgba(26,26,24,.65);color:#fff;padding:.2rem .55rem;border-radius:999px;pointer-events:none}.cs-flip-nav{display:flex;justify-content:center;gap:.5rem;margin-top:.75rem}.cs-hover-preview img{transition:opacity .15s ease}.cs-hover-preview img.is-on{opacity:1}.cs-hover-options{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.9rem}.cs-hover-option{font-family:var(--font-sans);font-weight:500;font-size:.85rem;padding:.5rem 1rem;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--text-soft);transition:background .15s ease,color .15s ease,border-color .15s ease}.cs-hover-option.is-active{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.cs-hover-option:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cs-grid{display:grid;gap:1rem;align-items:start}.cs-grid-2{grid-template-columns:1fr 1fr}.cs-grid-3{grid-template-columns:repeat(3,1fr)}.cs-grid-2.is-sequence{grid-template-columns:1fr auto 1fr;align-items:center}.cs-grid-arrow{color:var(--text-muted)}.cs-grid-item img{width:100%;height:auto;display:block;border-radius:8px;border:1px solid var(--line)}.cs-layers{max-width:30rem;margin:0 auto;padding:3rem 0}.cs-layers-stage{position:relative}.cs-layer,.cs-layers-stage{transition:transform .9s cubic-bezier(.22,1,.36,1)}.cs-layer{position:absolute;inset:0;transition-delay:calc(var(--i) * 40ms)}.cs-layer:first-child{background:#fdfcf7;border-radius:8px;border:1px solid var(--line)}.cs-layer img{width:100%;height:100%;display:block;-o-object-fit:contain;object-fit:contain}.cs-layers-stage.is-fanned{transform:scale(.72)}.cs-layers-stage.is-fanned .cs-layer{transform:translateY(calc(var(--z) * -49px)) scaleY(.574) rotate(-30deg)}:root[data-theme=dark] .cs-layer:not(:first-child){filter:invert(1);mix-blend-mode:difference}.cs-layers{position:relative}.cs-layers-tag{position:absolute;transform:translate(.75rem,-50%);white-space:nowrap;font-family:var(--font-sans);font-size:14px;font-weight:500;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.25rem .75rem;box-shadow:var(--shadow);pointer-events:none;animation:cs-tag-in .26s ease both;animation-delay:calc(var(--i) * 60ms)}@keyframes cs-tag-in{0%{opacity:0;transform:translate(.25rem,-50%)}}.cs-layers-label{font-family:var(--font-sans);font-size:13px;font-weight:500;color:var(--text-muted)}.cs-layers-flat{list-style:none;margin:0 0 1.25rem;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:.75rem;text-align:center}.cs-layers-paper{position:relative;background:#fdfcf7;border-radius:8px;border:1px solid var(--line);overflow:hidden;margin-bottom:.35rem}.cs-layers-paper img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.cs-layers-final{max-width:26rem;margin:0 auto}.cs-branch{display:flex;align-items:center;padding-top:1.5rem;overflow-x:auto}.cs-branch-choice li,.cs-branch-scene{font-family:var(--font-sans);font-size:.8rem;font-weight:500;color:var(--text);background:var(--surface-muted);border-radius:8px;padding:.55rem .75rem;text-align:center;white-space:nowrap}.cs-branch-scene{flex:0 0 auto}.cs-branch-choice{position:relative;flex:0 0 auto}.cs-branch-choice-label{position:absolute;bottom:100%;left:0;right:0;margin-bottom:.4rem;text-align:center;font-family:var(--font-sans);font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);white-space:nowrap}.cs-branch-choice ul{list-style:none;margin:0;padding:0;display:grid;grid-template-rows:repeat(3,1fr);gap:.5rem}.cs-branch-choice li{border:1px solid var(--line);background:var(--surface)}.cs-branch-link{flex:1 1 1.5rem;min-width:1.5rem;align-self:stretch;display:grid;place-items:center;color:var(--accent)}.cs-branch-fan{width:100%;height:100%;overflow:visible}.cs-branch-fan path{fill:none;stroke:var(--accent);stroke-width:1.5}.cs-branch{--ease-in:cubic-bezier(0.22,1,0.36,1)}.cs-branch-choice li,.cs-branch-choice-label,.cs-branch-link,.cs-branch-scene{--d:calc(var(--i) * 150ms);transition-property:opacity,transform,clip-path,translate,box-shadow,background;transition-duration:.5s,.5s,.6s,.3s,.3s,.2s;transition-timing-function:var(--ease-in),var(--ease-in),cubic-bezier(.65,0,.35,1),var(--ease-bounce),ease,ease;transition-delay:var(--d),var(--d),var(--d),0ms,0ms,0ms}.cs-branch-choice li{--d:calc(var(--i) * 150ms + var(--j) * 80ms)}.cs-branch-link{clip-path:inset(-2px -2px -2px -2px)}.cs-branch.is-waiting .cs-branch-link{clip-path:inset(-2px 100% -2px -2px)}.cs-branch.is-waiting .cs-branch-choice li,.cs-branch.is-waiting .cs-branch-scene{opacity:0;transform:translateY(10px)}.cs-branch.is-waiting .cs-branch-choice-label{opacity:0}.cs-branch-choice li:hover,.cs-branch-scene:hover{translate:0 -3px;box-shadow:var(--shadow);background:color-mix(in srgb,var(--accent) 10%,var(--surface-muted))}@media (max-width:768px){.cs-branch.is-waiting .cs-branch-link{clip-path:inset(-2px -2px 100% -2px)}.cs-film-item{flex-basis:70%}.cs-film-nav{display:none}.cs-grid-2,.cs-grid-2.is-sequence,.cs-grid-3{grid-template-columns:1fr}.cs-grid-arrow{display:none}.cs-layers-tag{font-size:12px}.cs-branch{flex-direction:column;align-items:stretch;overflow:visible;padding-top:0}.cs-branch-link{min-height:1.75rem;flex-basis:auto}.cs-branch-fan{display:none}.cs-branch-link:before{content:"";width:1.5px;height:1.75rem;background:var(--accent)}.cs-branch-arrow{display:none}.cs-branch-choice{padding-top:1.25rem}.cs-branch-choice-label{bottom:auto;top:0;margin:0}.cs-branch-choice ul{grid-template-rows:none;grid-template-columns:repeat(3,1fr)}.cs-branch-choice li{white-space:normal}}@media (prefers-reduced-motion:reduce){.cs-hover-preview img{transition:none}}.cs-phone{position:relative;width:min(300px,100%);margin-inline:auto;background:#1a1a1a;border-radius:52px;padding:10px;box-shadow:inset 0 0 0 1px hsla(0,0%,100%,.08),0 8px 30px rgba(0,0,0,.08)}.cs-phone-screen{position:relative;aspect-ratio:402/874;border-radius:42px;overflow:hidden;background:#fff}.cs-phone-screen img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-webkit-user-select:none;-moz-user-select:none;user-select:none}.cs-phone-screen.is-scrollable{overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none;touch-action:pan-y}.cs-phone-screen.is-scrollable::-webkit-scrollbar{display:none}.cs-phone-screen.is-scrollable img{height:auto}.cs-phone-screen:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.cs-phone-hint{position:absolute;left:50%;bottom:36px;translate:-50% 0;padding:6px 12px;border-radius:999px;background:hsla(0,0%,8%,.72);color:#fff;font-family:var(--font-sans);font-size:12px;white-space:nowrap;pointer-events:none;backdrop-filter:blur(6px);transition:opacity .4s ease}.cs-phone-hint.is-gone{opacity:0}.cs-triptych{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1rem,3vw,2.5rem);text-align:center}.cs-phone-crop{position:relative;width:min(480px,100%);margin-inline:auto;border-radius:20px;overflow:hidden;box-shadow:var(--shadow)}.cs-phone-crop img{position:absolute;left:50%;max-width:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.cs-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:1.5rem;list-style:none;margin:2rem 0;padding:0}.cs-chips li{display:flex;flex-direction:column;align-items:center;gap:2px}.cs-chip{position:relative;padding:0;border:0;background:none;cursor:inherit;margin-bottom:.6rem}.cs-chip-swatch{display:block;width:120px;height:120px;border-radius:16px;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06);transition:transform .3s var(--ease-bounce)}.cs-chip:focus-visible .cs-chip-swatch,.cs-chip:hover .cs-chip-swatch{transform:translateY(-3px)}.cs-chip:focus-visible{outline:none}.cs-chip:focus-visible .cs-chip-swatch{outline:2px solid var(--accent);outline-offset:3px}.cs-chip-copied{position:absolute;left:50%;top:-10px;translate:-50% -100%;padding:4px 10px;border-radius:999px;background:var(--text);color:var(--bg);font-family:var(--font-sans);font-size:12px;opacity:0;pointer-events:none;transition:opacity .2s ease,translate .2s ease}.cs-chip-copied.is-shown{opacity:1;translate:-50% calc(-100% - 4px)}.cs-chip-name{font-weight:500;font-size:14px;color:var(--text)}.cs-chip-hex,.cs-chip-name{font-family:var(--font-sans)}.cs-chip-hex{font-weight:400;font-size:13px;color:var(--text-muted);font-variant-numeric:tabular-nums}.wy-chars{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;text-align:center}.wy-chars img{display:block;width:100%;aspect-ratio:1;-o-object-fit:cover;object-fit:cover;border-radius:20px}.wds{display:grid;gap:2.5rem;margin:2rem 0;font-family:var(--font-sans)}.wds-label{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .85rem}.wds-swatches{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.wds-swatch{border-radius:16px;overflow:hidden;border:1px solid var(--line);background:var(--surface)}.wds-swatch-fill{height:88px}.wds-swatch-fill.is-small{height:56px}.wds-swatch-info{padding:.65rem .85rem;display:grid;gap:1px}.wds-swatch-name{font-size:14px;font-weight:500;color:var(--text)}.wds-swatch-meta{font-size:13px;color:var(--text-muted);font-variant-numeric:tabular-nums}.wds-ui{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:.75rem}.wds-ui-item{display:grid;gap:.6rem;padding:.85rem;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.wds-ui-demo{display:grid;place-items:center;height:64px;border-radius:12px;background:#fecc41;color:#000;font-family:ui-rounded,"SF Pro Rounded",var(--font-nunito),"Nunito",system-ui,sans-serif;font-size:14px;font-weight:600}.wds-ui-demo span{font-family:inherit;font-weight:inherit}.wds-ui-pill{padding:6px 18px;border-radius:40px;background:hsla(0,0%,6%,.2)}.wds-ui-row{padding:6px 18px;border-radius:20px;border:2px solid #000}.wds-ui-muted{color:rgba(60,60,67,.3)}.wds-ui-toggle{width:51px;height:31px;border-radius:40px;background:#34c759;position:relative}.wds-ui-toggle:after{content:"";position:absolute;right:2px;top:2px;width:27px;height:27px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.15)}.wds-type{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:.5rem 1.25rem}.wds-type-row{display:grid;grid-template-columns:7rem 1fr auto;align-items:baseline;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--line)}.wds-type-row:last-child{border-bottom:0}.wds-type-name{font-size:13px;color:var(--text-muted)}.wds-type-sample{font-family:ui-rounded,"SF Pro Rounded",var(--font-nunito),"Nunito",system-ui,sans-serif;color:var(--text);min-width:0;overflow-wrap:anywhere}.wds-type-spec{font-size:13px;color:var(--text-muted);font-variant-numeric:tabular-nums;text-align:right}.wds-shapes{display:flex;flex-wrap:wrap;gap:1.5rem;align-items:flex-end}.wds-shape{display:grid;gap:.5rem;justify-items:center;font-size:13px;color:var(--text-muted)}.wds-shape-box{background:color-mix(in srgb,var(--text) 8%,var(--surface));border:1.5px solid var(--text-soft);transition:width .9s cubic-bezier(.22,1,.36,1),height .9s cubic-bezier(.22,1,.36,1),border-radius .9s cubic-bezier(.22,1,.36,1) .15s}@media (max-width:768px){.cs-triptych{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:.5rem}.cs-triptych::-webkit-scrollbar{display:none}.cs-triptych-item{flex:0 0 72%;scroll-snap-align:center}.cs-chip-swatch{width:96px;height:96px}.wy-chars{grid-template-columns:1fr 1fr}.wds-swatches{grid-template-columns:1fr}.wds-type-row{grid-template-columns:1fr auto}.wds-type-name{grid-column:1/-1}}.resume-overlay{position:fixed;inset:0;z-index:10000;display:flex;overflow-y:auto;overscroll-behavior:contain;padding:16px;background:rgba(0,0,0,.45);animation:resume-in .2s ease}.resume-overlay:before{content:"";position:fixed;inset:0;z-index:-1;background:url(/textures/paper-grain.webp) 50%/900px;opacity:.12;pointer-events:none}@keyframes resume-in{0%{opacity:0}}.resume-close{position:fixed;top:16px;right:16px;z-index:2}.resume-stage{margin:auto;display:flex;flex-direction:column;align-items:center;gap:1.1rem;padding:2.5rem 0 1rem}.resume-tabs{margin:0}.resume-tabs .cs-tab.is-active{background:var(--surface);box-shadow:var(--shadow)}.resume-card{position:relative;width:min(calc(min(88vh, 100vh - 8.5rem) * var(--ratio)),calc(100vw - 32px));transform:translateY(calc(-25% + 30px)) rotate(-2deg);opacity:0}.resume-sheet{position:relative;aspect-ratio:var(--ratio);perspective:1400px}.resume-ground{position:absolute;inset:0;border-radius:2px;box-shadow:0 1px 3px rgba(0,0,0,.18),0 22px 44px -16px rgba(0,0,0,.5);transform:scaleY(.5);transform-origin:bottom center;pointer-events:none}.resume-flap,.resume-half{position:absolute;left:0;right:0;height:50%}.resume-lower{top:50%}.resume-face,.resume-half{overflow:hidden;background:#fff;isolation:isolate}.resume-front img,.resume-half img{position:absolute;left:0;width:100%;height:200%;max-width:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.resume-front img{top:0}.resume-lower img{top:-100%}.resume-print{background:url(/textures/paper.webp) 50%/900px;mix-blend-mode:multiply;opacity:.3}.resume-print,.resume-under{position:absolute;inset:0;pointer-events:none}.resume-under{background:linear-gradient(rgba(0,0,0,.22),rgba(0,0,0,.06) 40%,transparent 75%)}.resume-flap{top:0;z-index:1;transform-origin:bottom center;transform-style:preserve-3d;transform:rotateX(-180deg)}.resume-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden}.resume-shade{position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,.6),rgba(0,0,0,.85));opacity:0;pointer-events:none}.resume-back{transform:rotateX(180deg);background:linear-gradient(hsla(35,57%,62%,.16),hsla(35,57%,62%,.16)),url(/textures/paper.webp) 50% /cover,#fbf6ec}.resume-back .resume-grain{background:url(/textures/watercolour.webp) 50%/700px;opacity:.75}.resume-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;opacity:0;transform:translateY(6px);transition:opacity .25s ease,transform .25s ease;pointer-events:none}.resume-overlay.is-settled .resume-actions{opacity:1;transform:none;pointer-events:auto}.resume-pill{display:inline-flex;align-items:center;padding:10px 18px;border-radius:999px;background:var(--surface);box-shadow:var(--shadow);font-family:var(--font-sans);font-size:14px;font-weight:500;line-height:1;color:var(--text);text-decoration:none;transition:transform .18s ease,color .18s ease,background-color .18s ease,box-shadow .18s ease}.resume-pill:focus-visible,.resume-pill:hover{background:var(--accent);color:var(--on-accent);transform:translateY(-2px);box-shadow:0 8px 24px color-mix(in srgb,var(--accent) 25%,transparent);outline:none}.resume-pill:active{transform:translateY(0)}.resume-overlay.is-still .resume-card{transform:none;opacity:1}.resume-overlay.is-still .resume-flap,.resume-overlay.is-still .resume-ground{transform:none}.resume-overlay.is-still .resume-under{opacity:0}.resume-overlay.is-still .resume-actions{transition:none}.brand-icon{position:relative;display:block;flex-shrink:0}.brand-icon img{position:absolute;inset:0;width:100%;height:100%;-webkit-user-select:none;-moz-user-select:none;user-select:none}.brand-icon--light-variant{display:none}:root[data-theme=dark] .brand-icon--light-variant{display:block}:root[data-theme=dark] .brand-icon--dark-variant{display:none}