@layer base,components;@font-face{font-family:Inter;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/Inter-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/Inter-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2190-2193,U+2197,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/DMMono-400-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/DMMono-400-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/DMMono-500-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/DMMono-500-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-sans: "Inter", sans-serif;--font-hero: var(--font-sans);--gear-glow: rgba(0, 0, 0, .055);--gear-plate: #f0ece5;--bg: #f9f7f3;--text: #1a1714;--muted: #706a63;--faint: #736d66;--accent: #ff5b14;--border: rgba(40, 28, 14, .1);--hover: rgba(40, 28, 14, .03);--rule: var(--border);--grain-opacity: .07;--ocean-dim: 0;--mood-shadow: rgba(0, 0, 0, .12);--mood-shadow-strong: rgba(0, 0, 0, .16);--mood-note-bg: #f4efe6;--mood-note-border: rgba(0, 0, 0, .08);--mood-note-author: #1c1c1e;--mood-note-time: #8a8377;--mood-note-text: #3d3830;--mood-tag-bg: rgba(244, 239, 230, .9);--mood-tag-border: rgba(0, 0, 0, .1);--mood-tag-text: #2b2620;--header-offset: 72px;--reveal-duration: .6s;--reveal-ease: cubic-bezier(.23, 1, .32, 1);--reveal-rise: 8px;--reveal-blur: 4px;--reveal-step: 55ms;--bleed: 100vw}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){color-scheme:dark;--bg: #0e0d0b;--gear-plate: #e6e1d9;--text: #ffffff;--muted: #a7a5a3;--faint: #7f7a73;--accent: #ff5b14;--border: rgba(255, 240, 220, .1);--hover: rgba(255, 240, 220, .03);--grain-opacity: .05;--ocean-dim: .45;--mood-shadow: rgba(0, 0, 0, .35);--mood-shadow-strong: rgba(0, 0, 0, .45);--mood-note-bg: #1d1b18;--mood-note-border: rgba(255, 240, 220, .08);--mood-note-author: #f5f1ea;--mood-note-time: #8c867e;--mood-note-text: #dcd6cc;--mood-tag-bg: rgba(22, 20, 17, .82);--mood-tag-border: rgba(255, 240, 220, .1);--mood-tag-text: #f2eee7}}:root[data-theme=dark]{color-scheme:dark;--bg: #0e0d0b;--gear-plate: #e6e1d9;--text: #ffffff;--muted: #a7a5a3;--faint: #7f7a73;--accent: #ff5b14;--border: rgba(255, 240, 220, .1);--hover: rgba(255, 240, 220, .03);--grain-opacity: .05;--ocean-dim: .45;--mood-shadow: rgba(0, 0, 0, .35);--mood-shadow-strong: rgba(0, 0, 0, .45);--mood-note-bg: #1d1b18;--mood-note-border: rgba(255, 240, 220, .08);--mood-note-author: #f5f1ea;--mood-note-time: #8c867e;--mood-note-text: #dcd6cc;--mood-tag-bg: rgba(22, 20, 17, .82);--mood-tag-border: rgba(255, 240, 220, .1);--mood-tag-text: #f2eee7}:root[data-theme=light]{color-scheme:light}@layer base{*{box-sizing:border-box}html,body{overflow-x:clip;max-width:100%}body.is-scroll-locked{position:fixed;left:0;right:0;width:100%}html:has(>body.is-scroll-locked){overflow-y:scroll}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scrollbar-gutter:stable}body{margin:0;background-color:var(--bg);color:var(--text);font-family:var(--font-sans);font-weight:475;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-kerning:normal;font-optical-sizing:auto}@media (min-width: 681px){body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px;opacity:var(--grain-opacity)}}@media print{body:after{display:none}}.app-main{max-width:640px;margin:0 auto;padding:56px 24px 48px;min-height:100vh}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}::-moz-selection{background-color:color-mix(in srgb,var(--accent) 80%,transparent);color:var(--text)}::selection{background-color:color-mix(in srgb,var(--accent) 80%,transparent);color:var(--text)}::-moz-selection{background-color:color-mix(in srgb,var(--accent) 40%,transparent);color:var(--text)}mark{background-color:color-mix(in srgb,var(--accent) 18%,transparent);color:inherit;padding:.1em .3em;border-radius:.3em;box-decoration-break:clone;-webkit-box-decoration-break:clone}}@layer components{.ocean-bg{position:fixed;top:0;left:0;right:0;height:100vh;height:100lvh;z-index:-1;pointer-events:none}body:has(.ocean-bg){background-color:#112937}body.is-scroll-locked:has(.ocean-bg){background-color:#0e202c}@supports (-webkit-touch-callout: none){.ocean-bg{height:calc(100lvh + 140px)}}.ocean-bg>video,.ocean-bg>img{position:absolute;top:0;right:0;bottom:0;left:0;display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;filter:brightness(calc(1 - var(--ocean-dim)))}.ocean-bg>video,.ocean-bg>img{opacity:0;transition:opacity 1.2s ease}.ocean-bg>.is-ready{opacity:1}:root{--muted-base: var(--muted);--faint-base: var(--faint)}.app-main{--muted: color-mix(in srgb, var(--muted-base) 60%, var(--text));--faint: color-mix(in srgb, var(--faint-base) 60%, var(--text))}.app-main .progressive-blur:before{background:none}.app-main{--gear-glow: rgb(255 255 255 / .06)}@supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)){.app-main .gear-frame{background:#0a0e1447;-webkit-backdrop-filter:blur(16px) saturate(1.3);backdrop-filter:blur(16px) saturate(1.3);box-shadow:inset 0 0 0 1px #ffffff1a}}@supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)){.app-main .mobile-nav{background-color:#0a0e1480;-webkit-backdrop-filter:blur(20px) saturate(1.3);backdrop-filter:blur(20px) saturate(1.3)}}@media (prefers-reduced-transparency: reduce){.app-main .mobile-nav{background-color:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none}}.app-main .mobile-nav{clip-path:none;opacity:0;transition:opacity .2s ease .06s,visibility 0s linear .26s}.app-main .mobile-nav.is-open{clip-path:none;opacity:1;transition:opacity .24s ease,visibility 0s}.app-main .mobile-nav-link,.app-main .mobile-nav.is-open .mobile-nav-link,.app-main .mobile-nav.is-leaving .mobile-nav-link:not(.is-chosen){filter:none}@media (prefers-reduced-motion: reduce){.app-main .mobile-nav,.app-main .mobile-nav.is-open{transition:none}}.app-main .showcase-scene{background:transparent}}@layer components{.mono{font-family:DM Mono,ui-monospace,monospace;font-size:.72rem;letter-spacing:.02em;font-variant-numeric:tabular-nums}.section{padding-bottom:28px}.section:after{content:"";display:block;margin-top:48px;height:1px;background:var(--rule)}#photos:after{margin-top:76px}.section:last-of-type:after{display:none}.section:last-of-type{padding-bottom:0}#experience:after{display:none}#experience{padding-bottom:0}.experience-group:after{content:"";display:block;margin-top:48px;height:1px;background:var(--rule)}.experience-group{padding-bottom:28px}.section-label{font-family:DM Mono,ui-monospace,monospace;font-size:.75rem;font-weight:475;letter-spacing:1.84px;text-transform:uppercase;margin-top:0;color:var(--muted);margin-bottom:22px;padding:10px 0;display:flex;align-items:center;gap:6px}.section-action{margin-left:auto}section[id]{scroll-margin-top:var(--header-offset, 72px)}@keyframes reveal-in{0%{opacity:0;transform:translateY(var(--reveal-rise));filter:blur(var(--reveal-blur))}to{opacity:1;transform:none;filter:none}}@media (prefers-reduced-motion: no-preference){.reveal:not(.is-visible)>:not(.reveal-item,:has(.reveal-item,.row,.mood-board)),.reveal:not(.is-visible) :is(.reveal-item,.dim-group>.row){opacity:0}.reveal.is-visible>:not(.reveal-item,:has(.reveal-item,.row,.mood-board)){animation:reveal-in var(--reveal-duration) var(--reveal-ease) var(--reveal-step) backwards}.reveal.is-visible>.section-label{animation-delay:0ms}.reveal.is-visible :is(.reveal-item,.dim-group>.row){animation:reveal-in var(--reveal-duration) var(--reveal-ease) calc((var(--reveal-index, 0) + 1) * var(--reveal-step)) backwards}}}@layer components{.skip-link{position:fixed;top:12px;left:12px;z-index:30;padding:8px 12px;border-radius:8px;background:var(--text);color:var(--bg);font-size:.85rem;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}#content:focus{outline:none}}@layer components{.muted{color:var(--muted)}.link{color:var(--text);text-decoration:none;transition:color .15s ease}.link:hover{color:var(--accent)}.link-arrow{display:inline-block;flex-shrink:0;margin-left:5px;color:var(--muted);font-size:.72rem;line-height:1;transition:transform .22s cubic-bezier(.22,.61,.36,1),color .22s cubic-bezier(.22,.61,.36,1)}a:hover .link-arrow,a:focus-visible .link-arrow{transform:translate(2px,-2px);color:var(--accent)}.link-underline{display:inline-block;color:var(--text);text-decoration:none;transition:color .15s ease;align-self:flex-start;width:-moz-max-content;width:max-content;max-width:100%}.link-underline:hover,.link-underline:focus-visible{color:var(--accent)}a:active,button:active{scale:.97}}@layer components{.dim-group .row:nth-child(1){--reveal-index: 0}.dim-group .row:nth-child(2){--reveal-index: 1}.dim-group .row:nth-child(3){--reveal-index: 2}.dim-group .row:nth-child(4){--reveal-index: 3}.dim-group .row:nth-child(5){--reveal-index: 4}.dim-group .row:nth-child(6){--reveal-index: 5}.dim-group .row:nth-child(7){--reveal-index: 6}.dim-group .row:nth-child(n+8){--reveal-index: 7}.experience-list{list-style:none;margin:0;padding:0}.experience-row{--dot: 8px;--head-line: 24px;--dot-top: calc(var(--row-pad) + (var(--head-line) - var(--dot)) / 2);--rail-gap: 4px;--row-pad: 12px;position:relative;padding:var(--row-pad) var(--row-pad) 36px calc(var(--row-pad) + var(--dot) + 14px);margin-left:calc(-1 * var(--row-pad));margin-right:calc(-1 * var(--row-pad));border-radius:8px}.experience-row:last-child{padding-bottom:var(--row-pad)}.experience-row:before{content:"";position:absolute;left:var(--row-pad);top:var(--dot-top);width:var(--dot);height:var(--dot);box-sizing:border-box;border-radius:50%;border:1.5px solid var(--muted)}.experience-row:after{content:"";position:absolute;left:calc(var(--row-pad) + var(--dot) / 2 - .5px);top:calc(var(--dot-top) + var(--dot) + var(--rail-gap));bottom:calc(var(--rail-gap) - var(--dot-top));width:1px;background:var(--border)}.experience-row:last-child:after{display:none}@keyframes timeline-ring-in{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:none}}@keyframes timeline-rail-in{0%{transform:scaleY(0)}to{transform:none}}@media (prefers-reduced-motion: no-preference){.experience-list{--reveal-step: .11s}.experience-row:after{transform-origin:top}.reveal:not(.is-visible) .experience-row:before{opacity:0}.reveal:not(.is-visible) .experience-row:after{transform:scaleY(0)}.reveal.is-visible .experience-row:before{animation:timeline-ring-in .45s cubic-bezier(.34,1.56,.64,1) calc((var(--reveal-index, 0) + 1) * var(--reveal-step)) backwards}.reveal.is-visible .experience-row:after{animation:timeline-rail-in var(--reveal-step) linear calc((var(--reveal-index, 0) + 1) * var(--reveal-step) + .12s) backwards}}.experience-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;line-height:var(--head-line)}.experience-title{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;min-width:0}.experience-company{min-width:0;font-size:.875rem;font-weight:550}.experience-current{display:inline-flex;align-items:center;gap:5px;flex:none;font-size:.625rem;line-height:1;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);border:1px solid var(--border);border-radius:999px;padding:3px 8px}.experience-current:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent)}.experience-period{flex:none;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--muted)}.experience-role{margin:2px 0 0;font-size:.875rem;font-weight:475;color:color-mix(in srgb,var(--text) 55%,var(--muted))}.experience-note{margin:8px 0 0;max-width:62ch;font-size:.875rem;line-height:1.65}.project-list{list-style:none;margin:10px 0 0 -6px;padding:0;display:flex;flex-wrap:wrap;gap:2px 6px}.project-item{padding:3px 6px;border-radius:6px;font-size:.8125rem;font-weight:475;color:color-mix(in srgb,var(--text) 80%,var(--muted));transition:background-color .15s ease}.project-item:hover,.project-item:focus-within,.project-item.is-linked{background-color:var(--hover)}}@layer components{.hero-root{margin-top:44px;padding-bottom:28px}.hero-root:after{content:"";display:block;margin-top:48px;height:1px;background:var(--rule)}.hero-heading{display:flex;flex-direction:row;align-items:flex-start;gap:18px}.hero-line{display:block;animation:reveal-in var(--reveal-duration) var(--reveal-ease) backwards;animation-delay:calc((var(--reveal-index, 0) + 1) * var(--reveal-step))}.hero-intro .hero-line+.hero-line{margin-top:1lh}.hero-name-title{font-size:.875rem;font-weight:475;line-height:1.2;margin:0}.hero-name{font-family:var(--font-hero);font-weight:500}.hero-role{margin-top:6px;color:var(--muted);font-size:.875rem}.hero-intro{max-width:46ch;white-space:pre-line;line-height:1.85;color:var(--text);font-size:.875rem}.hero-contact{margin-top:26px;font-family:var(--font-sans);color:var(--muted);font-size:.875rem}.hero-title{margin-top:15px;transform:translate(-122px,96px)}.hero-contact-item+.hero-contact-item:before{content:"·";display:inline-block;margin:0 .5ch;color:var(--faint);text-decoration:none}.hero-location-pin{width:1em;height:1em;vertical-align:-.125em}.hero-location-link{color:var(--muted);text-decoration:none;transition:color .15s ease}.hero-location-link:hover,.hero-location-link:focus-visible{color:var(--accent)}.verified-badge{display:inline-block;width:1.05em;height:1.05em;margin-left:.34em;vertical-align:-.16em;flex-shrink:0}.verified-badge-shape{fill:#1d9bf0}.verified-badge-check{fill:#fff}.profile-stack{width:104px;min-height:116px;margin-top:22px;margin-bottom:20px}.profile-photo{display:block;width:72px;height:72px;--reveal-blur: 0px}.profile-photo-img{-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;border-radius:10px}}@layer components{.progressive-blur{position:absolute;top:0;bottom:-40px;left:50%;width:100vw;transform:translate(-50%);pointer-events:none;z-index:-1}.progressive-blur span{position:absolute;top:0;right:0;bottom:0;left:0}.progressive-blur span:nth-child(1){backdrop-filter:blur(1px);-webkit-backdrop-filter:blur(1px);mask-image:linear-gradient(to bottom,#000 0%,#000 20%,rgb(0 0 0 / .55) 34%,transparent 48%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 20%,rgb(0 0 0 / .55) 34%,transparent 48%)}.progressive-blur span:nth-child(2){backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);mask-image:linear-gradient(to bottom,#000 0%,#000 34%,rgb(0 0 0 / .55) 48%,transparent 62%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 34%,rgb(0 0 0 / .55) 48%,transparent 62%)}.progressive-blur span:nth-child(3){backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);mask-image:linear-gradient(to bottom,#000 0%,#000 48%,rgb(0 0 0 / .55) 62%,transparent 76%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 48%,rgb(0 0 0 / .55) 62%,transparent 76%)}.progressive-blur span:nth-child(4){backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);mask-image:linear-gradient(to bottom,#000 0%,#000 62%,rgb(0 0 0 / .55) 76%,transparent 90%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 62%,rgb(0 0 0 / .55) 76%,transparent 90%)}.progressive-blur span:nth-child(5){backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);mask-image:linear-gradient(to bottom,#000 0%,#000 76%,rgb(0 0 0 / .55) 88%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 76%,rgb(0 0 0 / .55) 88%,transparent 100%)}.progressive-blur:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,var(--bg) 0%,color-mix(in srgb,var(--bg) 94%,transparent) 30%,color-mix(in srgb,var(--bg) 78%,transparent) 50%,color-mix(in srgb,var(--bg) 52%,transparent) 68%,color-mix(in srgb,var(--bg) 24%,transparent) 84%,transparent 100%)}@supports not (backdrop-filter: blur(1px)){.progressive-blur:before{background:linear-gradient(to bottom,var(--bg) 0%,var(--bg) 62%,color-mix(in srgb,var(--bg) 45%,transparent) 82%,transparent 100%)}}}@layer components{.site-header{position:sticky;top:0;z-index:20;margin:-12px -12px 0;padding:12px;border-bottom:1px solid transparent;transition:border-color .18s ease;display:flex;flex-direction:column;color:var(--muted)}.site-header-bar{display:flex;align-items:center;justify-content:space-between;gap:10px;position:relative;z-index:22}.nav-toggle{display:block;position:relative;width:34px;height:34px;margin:-6px -8px -6px 0;padding:0;background:none;border:0;color:var(--muted);cursor:pointer;touch-action:manipulation;transition:color .15s ease}@media (min-width: 681px) and (hover: hover) and (pointer: fine){.nav-toggle{display:none}}.nav-toggle:hover,.nav-toggle[aria-expanded=true]{color:var(--text)}.nav-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.nav-toggle:active{scale:none}.nav-toggle-bar{position:absolute;left:50%;width:17px;height:1.5px;margin-left:-8.5px;background:currentColor;border-radius:1px;transition:rotate .16s cubic-bezier(.4,0,.2,1),translate .18s cubic-bezier(.22,1,.36,1) .12s}.nav-toggle-bar:nth-child(1){translate:0 -3.5px}.nav-toggle-bar:nth-child(2){translate:0 3.5px}.nav-toggle[aria-expanded=true] .nav-toggle-bar{translate:0 0;transition:translate .14s cubic-bezier(.4,0,.2,1),rotate .24s cubic-bezier(.22,1,.36,1) .1s}.nav-toggle[aria-expanded=true] .nav-toggle-bar:nth-child(1){rotate:45deg}.nav-toggle[aria-expanded=true] .nav-toggle-bar:nth-child(2){rotate:-45deg}.mobile-nav{position:fixed;top:0;left:0;right:0;bottom:0;z-index:21;visibility:hidden;--curtain-line: calc(var(--bar-top, 0px) + 46px);--curtain-round: 24px;clip-path:inset(var(--curtain-line) 0 calc(100% - var(--curtain-line)) 0 round 0 0 var(--curtain-round) var(--curtain-round));transition:clip-path .3s cubic-bezier(.4,0,.2,1) .06s,visibility 0s linear .36s;background-color:var(--bg)}.mobile-nav.is-open{visibility:visible;clip-path:inset(0 round 0);transition:clip-path .42s cubic-bezier(.22,1,.36,1),visibility 0s}@supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)){.mobile-nav{--nav-muted: color-mix(in srgb, var(--muted) 60%, var(--text));background-color:color-mix(in srgb,var(--bg) 85%,transparent);-webkit-backdrop-filter:blur(24px) saturate(1.3);backdrop-filter:blur(24px) saturate(1.3)}}@media (prefers-reduced-transparency: reduce){.mobile-nav{--nav-muted: var(--muted);background-color:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none}}.mobile-nav-inner{display:flex;font-family:var(--font-sans);letter-spacing:normal;flex-direction:column;justify-content:flex-start;height:100%;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:calc(78px + var(--bar-top, 0px)) max(24px,calc((100% - 592px)/2)) calc(20px + env(safe-area-inset-bottom))}.mobile-nav-link{flex:0 0 auto;display:flex;align-items:center;position:relative;padding:10px 0;font-family:DM Mono,ui-monospace,monospace;font-size:.72rem;text-transform:uppercase;letter-spacing:1.84px;color:var(--nav-muted, var(--muted));opacity:0;transform:translateY(calc(-1 * var(--reveal-rise)));filter:blur(var(--reveal-blur));transition:opacity .08s ease,transform 0s linear .3s,filter 0s linear .3s,color .15s ease}.mobile-nav-link.is-group-start{margin-top:18px}.mobile-nav-link:active,.mobile-nav-link:focus-visible,.mobile-nav-link[aria-current],.mobile-nav-link.is-chosen{color:var(--text)}.mobile-nav-index{width:16px;height:16px;flex:none;margin-right:14px;opacity:.5;transition:opacity .15s ease}.mobile-nav-link:focus-visible .mobile-nav-index,.mobile-nav-link[aria-current] .mobile-nav-index,.mobile-nav-link.is-chosen .mobile-nav-index{opacity:1}@media (hover: hover){.mobile-nav-link:hover{color:var(--text)}.mobile-nav-link:hover .mobile-nav-index{opacity:1}}.mobile-nav-list{position:relative;display:flex;flex-direction:column}.mobile-nav-indicator{--ind-glide: .35s;position:absolute;top:0;left:-12px;width:1px;height:var(--ind-h, 0px);translate:0 var(--ind-y, 0px);transform-origin:top;background:var(--accent);pointer-events:none;opacity:0;transition:opacity .08s ease}.mobile-nav.is-open .mobile-nav-indicator{animation:nav-indicator-draw .4s var(--reveal-ease) calc(.22s + var(--ind-draw-i, 0) * var(--reveal-step)) backwards}.mobile-nav.is-open .mobile-nav-indicator.is-shown{opacity:1;transition:opacity .15s ease,translate var(--ind-glide) var(--reveal-ease),height var(--ind-glide) var(--reveal-ease)}.mobile-nav.is-leaving .mobile-nav-indicator{--ind-glide: .16s}@keyframes nav-indicator-draw{0%{scale:1 0}}.mobile-nav.is-open .mobile-nav-link{opacity:1;transform:none;filter:none;--link-delay: calc(70ms + var(--i) * var(--reveal-step));transition:opacity var(--reveal-duration) var(--reveal-ease) var(--link-delay),transform var(--reveal-duration) var(--reveal-ease) var(--link-delay),filter var(--reveal-duration) var(--reveal-ease) var(--link-delay),color .15s ease}.mobile-nav.is-leaving .mobile-nav-link:not(.is-chosen){opacity:0;filter:blur(var(--reveal-blur));transition:opacity .12s ease,filter .12s ease,color .15s ease}@media (prefers-reduced-motion: reduce){.mobile-nav,.mobile-nav.is-open,.mobile-nav-link,.mobile-nav.is-open .mobile-nav-link{transition:none}.mobile-nav-link{transform:none;filter:none}}.site-header:not(.is-stuck)>.progressive-blur{visibility:hidden}.header-brand{margin-right:auto;text-transform:uppercase;letter-spacing:1.84px;white-space:nowrap;color:var(--text);text-decoration:none;display:inline-flex;align-items:center;line-height:1;height:1.2em}.terminal-cursor{display:inline-block;margin-left:1px;color:currentColor;animation:cursor-blink 1s steps(1,end) infinite}@keyframes cursor-blink{0%,49%{opacity:1}50%,to{opacity:0}}.header-mount{animation:reveal-in var(--reveal-duration) var(--reveal-ease) backwards;animation-delay:calc(var(--word-index, 0) * var(--reveal-step))}.site-header.is-menu-open{min-height:47px}.site-header.is-menu-open .site-header-bar{position:fixed;top:var(--bar-top, 0px);left:0;right:0;padding:12px max(24px,calc((100% - 592px)/2));background-color:var(--bg)}@supports (backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px)){.site-header.is-menu-open .site-header-bar{background-color:transparent}}@media (prefers-reduced-transparency: reduce){.site-header.is-menu-open .site-header-bar{background-color:var(--bg)}}}@layer components{.section-rail{display:none}@media (min-width: 681px) and (hover: hover) and (pointer: fine){.section-rail{position:fixed;top:50%;right:0;translate:0 -50%;display:flex;flex-direction:column}}@media print{.section-rail{display:none}}.section-rail-link{--rail-gutter: 24px;--len: .625;position:relative;display:block;width:calc(var(--rail-gutter) + 48px);height:20px;color:var(--muted);transform-origin:calc(100% - var(--rail-gutter)) 50%}.section-rail-link[aria-current]{--len: 1;color:var(--accent)}.section-rail-line{position:absolute;top:50%;right:var(--rail-gutter);width:32px;height:1.5px;margin-top:-.75px;border-radius:1px;background:currentColor;transform-origin:right center;scale:var(--len) 1;opacity:.5;transition:scale .45s var(--reveal-ease),opacity .2s ease,background-color .2s ease;animation:section-rail-draw var(--reveal-duration) var(--reveal-ease) calc(.2s + var(--i, 0) * var(--reveal-step)) backwards}@keyframes section-rail-draw{0%{scale:0 1}}.section-rail:hover .section-rail-line{opacity:.8}.section-rail-link[aria-current] .section-rail-line{opacity:1}.section-rail-label{position:absolute;top:50%;right:var(--rail-gutter);translate:0 -50%;margin-right:-1.84px;font-family:DM Mono,ui-monospace,monospace;font-size:.72rem;line-height:1;letter-spacing:1.84px;text-transform:uppercase;white-space:nowrap;color:var(--text);pointer-events:none;opacity:0;filter:blur(var(--reveal-blur));clip-path:inset(-8px -8px -8px 100%);transition:opacity .15s ease,filter .15s ease,clip-path 0s linear .15s}.section-rail-link:is(:hover,:focus-visible) .section-rail-line{scale:0 1;opacity:0;transition:scale .25s var(--reveal-ease),opacity .2s ease}.section-rail-link:is(:hover,:focus-visible) .section-rail-label{opacity:1;filter:none;clip-path:inset(-8px);transition:opacity .3s var(--reveal-ease),filter .4s var(--reveal-ease),clip-path .4s var(--reveal-ease)}.section-rail-link:focus-visible{outline:none}.section-rail-link:focus-visible .section-rail-label{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}}@layer components{.accolades-list{display:flex;flex-direction:column;gap:28px}.accolade-row{display:flex;justify-content:space-between;gap:16px;align-items:baseline}.accolade-title{margin:0;font-weight:475;font-size:.875rem}.accolade-org{margin:2px 0 0;font-size:.875rem}.accolade-main{position:relative;align-self:flex-start;display:block;margin:0;padding:0;border:0;background:none;font:inherit;color:inherit;text-align:left}.accolade-row.has-proof .accolade-main{cursor:pointer}.accolade-main:focus{outline:none}.accolade-main:focus-visible{outline:1px solid color-mix(in srgb,var(--text) 35%,transparent);outline-offset:6px;border-radius:4px}.accolade-proof{position:absolute;bottom:calc(100% + 10px);left:0;display:block;width:260px;max-width:min(260px,72vw);padding:7px 7px 9px;background:#fbfaf7;border:1px solid var(--border);border-radius:3px;box-shadow:0 14px 34px #00000042;pointer-events:none;opacity:0;transform:translateY(6px) scale(.97) rotate(-2.4deg);transform-origin:bottom left;transition:opacity .18s ease,transform .28s cubic-bezier(.22,1,.36,1);z-index:30}.accolade-proof img{display:block;width:100%;aspect-ratio:4 / 3;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;border-radius:1px;background:var(--hover)}.accolade-proof.is-below{bottom:auto;top:calc(100% + 10px);transform-origin:top left;transform:translateY(-6px) scale(.97) rotate(-2.4deg)}.accolade-row.has-proof .accolade-main:hover .accolade-proof,.accolade-row.has-proof .accolade-main:focus-visible .accolade-proof,.accolade-row.has-proof.is-open .accolade-proof{opacity:1;transform:translateY(0) scale(1) rotate(-2.4deg)}@media (hover: none){.accolade-row.has-proof.is-open .accolade-proof{pointer-events:auto}.accolade-proof,.accolade-proof.is-below{bottom:auto;top:calc(100% + 12px);transform-origin:top left;transform:translateY(-6px) scale(.97) rotate(-2.4deg);width:min(240px,62vw)}}@media (prefers-reduced-motion: reduce){.accolade-proof{transition:opacity .18s ease;transform:none}.accolade-proof.is-below{transform:none}.accolade-row.has-proof .accolade-main:hover .accolade-proof,.accolade-row.has-proof .accolade-main:focus-visible .accolade-proof,.accolade-row.has-proof.is-open .accolade-proof{transform:none}}.accolade-period{color:var(--muted);font-size:.72rem;flex-shrink:0}.accolade-more{align-self:flex-start;overflow:hidden;max-height:3em;transition:color .15s ease,border-color .15s ease,background-color .15s ease,max-height .4s cubic-bezier(.22,1,.36,1),margin .4s cubic-bezier(.22,1,.36,1),opacity .25s ease}.accolade-more.is-hidden{max-height:0;margin-top:-28px;opacity:0;pointer-events:none}.accolade-reveal{display:grid;grid-template-rows:0fr;margin-bottom:-28px;transition:grid-template-rows .4s cubic-bezier(.22,1,.36,1),margin-bottom .4s cubic-bezier(.22,1,.36,1)}.accolade-reveal.is-open{grid-template-rows:1fr;margin-bottom:0}.accolade-reveal-inner{overflow:hidden;opacity:0;transform:translateY(-6px);transition:opacity .3s ease .08s,transform .4s cubic-bezier(.22,1,.36,1) .08s}.accolade-reveal.is-open .accolade-reveal-inner{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){.accolade-reveal,.accolade-reveal-inner{transition:none}}}@layer components{.stack-prose p{margin:0;max-width:62ch;font-size:.875rem;line-height:1.85}.stack-prose p+p{margin-top:14px}}@layer components{.mood-photos-link,.gear-music-link,.accolade-more{display:inline-flex;align-items:center;gap:.4em;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);text-decoration:none;white-space:nowrap;background:none;border:1px solid var(--border);border-radius:999px;padding:4px 10px;cursor:pointer;transition:color .15s ease,border-color .15s ease,background-color .15s ease}.mood-photos-link:hover,.mood-photos-link:focus-visible,.gear-music-link:hover,.gear-music-link:focus-visible,.accolade-more:hover,.accolade-more:focus-visible{color:var(--text);border-color:var(--accent);background:var(--hover)}.mood-photos-link span,.gear-music-link span{transition:transform .15s ease}.mood-photos-link:hover span,.mood-photos-link:focus-visible span,.gear-music-link:hover span,.gear-music-link:focus-visible span{transform:translate(2px)}}@layer components{.section-info{position:relative;display:inline-flex;align-items:center;color:var(--faint);cursor:help;outline:none;transition:color .15s ease}.section-info:hover,.section-info:focus-visible{color:var(--text)}.section-info-icon{width:13px;height:13px}.section-info-tooltip{position:absolute;top:calc(100% + 8px);left:-2px;transform:translateY(-4px);width:-moz-max-content;width:max-content;max-width:240px;font-family:var(--font-sans);font-size:.66rem;line-height:1.4;letter-spacing:.01em;text-transform:none;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:6px;padding:6px 9px;box-shadow:0 8px 22px #0000001f;pointer-events:none;opacity:0;transition:opacity .15s ease,transform .15s ease;z-index:25}.section-info:hover .section-info-tooltip,.section-info:focus-visible .section-info-tooltip{opacity:1;transform:translateY(0)}}@layer components{.showcase-scene{--showcase-card-width: clamp(220px, 44vw, 300px);display:flex;align-items:center;justify-content:center;background:var(--bg);margin-top:62px;margin-bottom:12px;height:380px;min-height:380px;perspective:1800px;perspective-origin:50% 47%;width:var(--bleed, 100vw);max-width:1100px;position:relative;left:50%;transform:translate(-50%);transform-style:preserve-3d;overflow:hidden}.showcase-scene:before,.showcase-scene:after{display:none}.showcase-camera{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;width:100%;height:100%;transform-style:preserve-3d;z-index:1}.showcase-rail{position:relative;width:100%;height:100%;transform:translate(-4%,-3%);transform-style:preserve-3d}.showcase-slot{position:absolute;top:50%;left:50%;transform-style:preserve-3d;outline:none;translate:var(--fan-x, 0) var(--fan-y, 0);transition:opacity .22s ease,transform .28s ease,translate .9s cubic-bezier(.22,1,.36,1) calc(var(--fan-order, 0) * 90ms);will-change:transform}@supports (animation-timeline: view()){@media (prefers-reduced-motion: no-preference){.showcase-scene{view-timeline:--showcase-fan block}.showcase-slot{animation:showcase-fan cubic-bezier(.33,1,.68,1) both;animation-timeline:--showcase-fan;animation-range:entry calc(30% + var(--fan-order, 0) * 15%) cover 50%}}}@keyframes showcase-fan{0%{translate:0 0}}.showcase-slot:focus-visible .showcase-card{box-shadow:0 0 0 2px var(--accent)}.showcase-card{position:relative;width:var(--showcase-card-width);transform-style:preserve-3d;transform-origin:center center;border-radius:6px;overflow:hidden;box-shadow:0 0 0 1px var(--border);background:#151515;transition:filter .22s ease,transform .28s ease,box-shadow .22s ease;will-change:transform}.showcase-card img,.showcase-card video,.showcase-placeholder{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.showcase-placeholder{display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:18px;padding:46px 38px;text-align:left}}@layer components{.contact-info{font-size:.875rem;line-height:1.5}.contact-intro{margin:0 0 22px;max-width:44ch;line-height:1.85;color:var(--muted)}.contact-primary{margin-bottom:30px}.contact-socials{display:flex;flex-wrap:wrap;align-items:baseline;gap:0}.contact-social{display:inline-flex;align-items:baseline}.contact-social-sep{padding:0 10px 0 5px;color:var(--faint)}.contact-primary,.contact-social-link{align-self:auto}}@layer components{.gear-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px 16px}.gear-card{position:relative;display:flex;flex-direction:column;gap:10px;color:inherit;text-decoration:none;--reveal-blur: 0px}a.gear-card:hover .link-arrow,a.gear-card:focus-visible .link-arrow{color:var(--text)}a.gear-card:focus-visible{outline:1px solid color-mix(in srgb,var(--text) 35%,transparent);outline-offset:6px;border-radius:6px}.gear-frame{position:relative;flex:0 0 auto;width:100%;aspect-ratio:4 / 3;display:flex;align-items:center;justify-content:center;min-height:0;background:var(--gear-plate);border-radius:6px;overflow:hidden}.gear-frame:before{content:"";position:absolute;left:50%;top:52%;width:62%;height:52%;transform:translate(-50%,-50%);border-radius:50%;background:var(--gear-glow);filter:blur(26px);pointer-events:none}.gear-frame img{position:relative;max-width:calc(66% * var(--gear-scale, 1));max-height:calc(74% * var(--gear-scale, 1));-o-object-fit:contain;object-fit:contain;transition:transform .32s cubic-bezier(.22,.61,.36,1)}.gear-card:hover .gear-frame img,.gear-card:focus-visible .gear-frame img{transform:translateY(-4px)}.gear-placeholder{width:66%;height:66%;border:1px dashed var(--border);border-radius:8px}.gear-meta{display:flex;flex-direction:column;gap:3px;min-width:0;text-align:left}.gear-model{font-size:.8125rem;font-weight:475;line-height:1.3;color:var(--text)}.gear-sub{font-size:.75rem;line-height:1.4;color:var(--muted)}@media (prefers-reduced-motion: reduce){.gear-card:hover .gear-frame img,.gear-card:focus-visible .gear-frame img{transform:none}}@media (max-width: 680px){.gear-grid{grid-template-columns:1fr;gap:14px}.gear-card{flex-direction:row;align-items:center;gap:14px}.gear-frame{flex:0 0 64px;width:64px;height:52px;aspect-ratio:auto;padding:6px;border-radius:5px}.gear-frame img{max-height:calc(42px * var(--gear-scale, 1));max-width:calc(100% * var(--gear-scale, 1))}.gear-frame:before{display:none}.gear-meta{flex:1}.gear-placeholder{height:42px}}}@layer components{.mood-board img,.mood-board video{-webkit-user-drag:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mood-board{position:relative;width:100vw;max-width:800px;left:50%;transform:translate(-50%);aspect-ratio:19 / 9;margin-top:8px;touch-action:pan-y}.mood-scroller{position:relative}@media (max-width: 840px){.mood-scroller{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-webkit-overflow-scrolling:touch;margin-inline:-24px;padding-inline:24px;padding-block:24px;margin-top:-24px}.mood-scroller::-webkit-scrollbar{display:none}.mood-board{width:800px;max-width:none;left:0;transform:none;touch-action:auto}}.mood-item{position:absolute;transform:translate(var(--mood-dx, 0px),var(--mood-dy, 0px)) rotate(var(--mood-rot, 0deg));transform-origin:center center;transition:transform .32s cubic-bezier(.22,.61,.36,1),filter .2s ease;will-change:transform}.mood-board:not(.is-visible) .mood-item{transform:translate(calc(var(--mood-dx, 0px) + var(--mood-cxf, 0) * var(--mood-bw, 0px)),calc(var(--mood-dy, 0px) + var(--mood-cyf, 0) * var(--mood-bh, 0px))) rotate(0) scale(.18);opacity:0}.mood-board.is-visible .mood-item{opacity:1;transition:transform .62s cubic-bezier(.22,1,.36,1),opacity .42s ease;transition-delay:calc(var(--mood-i, 0) * 24ms)}@media (prefers-reduced-motion: reduce){.mood-board:not(.is-visible) .mood-item{transform:translate(var(--mood-dx, 0px),var(--mood-dy, 0px)) rotate(var(--mood-rot, 0deg));opacity:1}.mood-board.is-visible .mood-item{transition:none;transition-delay:0ms}}.mood-board.is-draggable .mood-item{cursor:grab}.mood-board.is-draggable .mood-item:hover{transform:translate(var(--mood-dx, 0px),calc(var(--mood-dy, 0px) - 6px)) rotate(var(--mood-rot, 0deg)) scale(1.03);filter:drop-shadow(0 14px 28px var(--mood-shadow-strong));transition-delay:0ms}.mood-board.is-draggable .mood-item.is-dragging{cursor:grabbing;transition:none;transform:translate(var(--mood-dx, 0px),var(--mood-dy, 0px)) rotate(var(--mood-rot, 0deg)) scale(1.04);filter:drop-shadow(0 18px 34px var(--mood-shadow-strong))}.mood-swipe-hint{display:none;margin:30px 0 0;text-align:center;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}@media (max-width: 680px){.mood-swipe-hint{display:block}}.mood-swipe-hint span{position:relative;display:inline-block;color:var(--muted)}.mood-swipe-hint span:after{content:attr(data-text);position:absolute;top:0;right:0;bottom:0;left:0;color:transparent;background-image:linear-gradient(100deg,transparent 38%,var(--text) 50%,transparent 62%);background-size:300% 100%;background-repeat:no-repeat;-webkit-background-clip:text;background-clip:text;animation:mood-swipe-shimmer 3.4s linear infinite;pointer-events:none}.mood-swipe-arrow{display:inline-block;color:var(--muted);animation:mood-swipe-nudge 1.6s ease-in-out infinite}.mood-swipe-arrow.is-left{margin-right:.5em;animation-name:mood-swipe-nudge-left}.mood-swipe-arrow.is-right{margin-left:.5em}@keyframes mood-swipe-nudge{0%,to{transform:translate(0)}50%{transform:translate(4px)}}@keyframes mood-swipe-nudge-left{0%,to{transform:translate(0)}50%{transform:translate(-4px)}}@keyframes mood-swipe-shimmer{0%{background-position:150% 0}to{background-position:-150% 0}}@media (prefers-reduced-motion: reduce){.mood-swipe-hint span:after{display:none}.mood-swipe-arrow{animation:none;transform:none}}.mood-photo{position:relative;margin:0;padding:7px 7px 9px;background:#d8d8d8;border-radius:3px;box-shadow:0 8px 20px var(--mood-shadow)}.mood-photo img,.mood-photo video{display:block;width:100%;aspect-ratio:4 / 5;-o-object-fit:cover;object-fit:cover;border-radius:1px;background:#2a2a2a}.mood-photo-caption{margin-top:7px;font-family:DM Mono,ui-monospace,monospace;font-size:.58rem;letter-spacing:.04em;color:#555;text-align:center}.mood-quote{margin:0;padding:16px 16px 18px;background:linear-gradient(150deg,var(--accent),color-mix(in srgb,var(--accent) 85%,#000));color:#fff;border-radius:6px;box-shadow:0 8px 20px var(--mood-shadow);text-align:left}.mood-quote p{margin:0;font-size:1.1rem;line-height:1.4;font-style:italic;font-weight:700}.mood-quote cite{display:block;margin-top:10px;font-size:.66rem;font-style:normal;opacity:.75;text-align:right}.mood-note{padding:11px 13px;background:var(--mood-note-bg);border:1px solid var(--mood-note-border);border-radius:12px;box-shadow:0 8px 20px var(--mood-shadow)}.mood-note-head{display:flex;align-items:baseline;gap:7px;margin:0 0 5px}.mood-note-author{font-size:.74rem;font-weight:475;color:var(--mood-note-author)}.mood-note-time{font-size:.6rem;color:var(--mood-note-time)}.mood-note-text{margin:0;font-size:.74rem;line-height:1.45;color:var(--mood-note-text)}.mood-note-text.is-quote{font-style:italic}.mood-sticker-wrap{position:relative;display:block}.mood-sticker{display:block;width:100%;height:auto;filter:drop-shadow(0 4px 10px var(--mood-shadow));-webkit-user-select:none;-moz-user-select:none;user-select:none}.mood-sticker-outlined{filter:drop-shadow(2px 0 0 #fff) drop-shadow(-2px 0 0 #fff) drop-shadow(0 2px 0 #fff) drop-shadow(0 -2px 0 #fff) drop-shadow(1.4px 1.4px 0 #fff) drop-shadow(-1.4px 1.4px 0 #fff) drop-shadow(1.4px -1.4px 0 #fff) drop-shadow(-1.4px -1.4px 0 #fff) drop-shadow(0 5px 9px var(--mood-shadow))}.mood-sticker-squircle,.mood-sticker-squircle-flush{aspect-ratio:1 / 1;-o-object-fit:contain;object-fit:contain;border-radius:22%;box-shadow:0 6px 16px var(--mood-shadow);filter:none}.mood-sticker-squircle{padding:18%;background:#1d1b18;border:1px solid rgba(255,240,220,.08)}.mood-sticker-squircle-flush{-o-object-fit:cover;object-fit:cover;border:1px solid rgba(255,255,255,.08)}.mood-emoji{display:block;font-size:var(--mood-w, 40px);line-height:1;text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;filter:drop-shadow(0 4px 10px var(--mood-shadow))}.mood-tag{position:absolute;width:-moz-max-content;width:max-content;max-width:160px;padding:6px 10px;font-size:.82rem;line-height:1.3;font-weight:475;font-style:italic;letter-spacing:.01em;color:var(--mood-tag-text);background:var(--mood-tag-bg);border:1px solid var(--mood-tag-border);border-radius:8px;box-shadow:0 6px 16px var(--mood-shadow-strong);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;transform:rotate(var(--mood-tag-rot, 0deg))}.mood-tag-left{right:calc(100% + 10px);top:50%;transform:translateY(-50%) rotate(var(--mood-tag-rot, 0deg));text-align:right}.mood-tag-right{left:calc(100% + 8px);top:50%;transform:translateY(-50%) rotate(var(--mood-tag-rot, 0deg))}.mood-tag-top{bottom:calc(100% + 8px);left:50%;transform:translate(-50%) rotate(var(--mood-tag-rot, 0deg));text-align:center}.mood-tag-bottom{top:calc(100% + 8px);left:50%;transform:translate(-50%) rotate(var(--mood-tag-rot, 0deg));text-align:center}@media (prefers-reduced-motion: reduce){.mood-item{transition:none}}}@layer components{.colophon-text{margin:0;max-width:44ch;line-height:1.85;color:var(--muted);font-size:inherit}.site-footer:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--rule)}.site-footer{position:relative;margin-top:64px;padding-top:36px;display:grid;grid-template-columns:1fr auto;-moz-column-gap:24px;column-gap:24px;row-gap:44px;align-items:end;color:var(--muted);font-size:.8125rem}.site-footer .colophon-text{grid-column:1 / -1;grid-row:1;font-size:.875rem}.footer-copy,.footer-meta{grid-row:2}.footer-copy,.footer-meta{font-family:var(--font-sans);letter-spacing:.01em;line-height:1.5}.footer-meta{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.footer-commit{display:inline-flex;align-items:center;align-self:flex-end;gap:5px;color:inherit;letter-spacing:.02em;font-size:inherit}.footer-commit:hover{color:var(--accent)}.footer-commit-icon{opacity:.7;flex:none}.footer-commit:hover .footer-commit-icon{opacity:1}}@media (max-width: 680px){:root{--header-offset: 60px}.hero-contact-item{display:block}.hero-contact-item+.hero-contact-item{margin-top:12px}.hero-contact-item+.hero-contact-item:before{content:none}.showcase-scene{--showcase-card-width: 220px;height:320px;min-height:320px}.showcase-placeholder{padding:34px 28px}.showcase-mobile{margin-top:40px;margin-bottom:12px}.showcase-track{--showcase-peek: 6px;display:flex;gap:14px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:0 -24px;padding:0 24px;scroll-padding:0 24px}.showcase-track::-webkit-scrollbar{display:none}.showcase-frame{position:relative;flex:0 0 calc(100% - 2 * (var(--showcase-peek) + 14px));scroll-snap-align:center;scroll-snap-stop:always;border-radius:8px;overflow:hidden;box-shadow:0 0 0 1px var(--border);background:#151515}.showcase-frame img,.showcase-frame video,.showcase-frame .showcase-placeholder{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}}@media (pointer: fine){.showcase-track{cursor:grab}.showcase-track.is-dragging{cursor:grabbing;scroll-snap-type:none}}.showcase-dot{position:relative;width:24px;height:24px;padding:0;border:0;background:none;cursor:pointer}.showcase-dot:before{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:7px;height:7px;border-radius:50%;background:var(--border)}.carousel-dots-row{display:flex;justify-content:center;margin-top:16px}.carousel-dots{position:relative;display:inline-flex;gap:8px}.carousel-dots-pill{position:absolute;top:50%;left:3px;width:18px;height:7px;border-radius:4px;background:var(--text);pointer-events:none;transition:transform .28s cubic-bezier(.65,0,.35,1)}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}a:active,button:active{scale:none}}.theme-switch{display:block;position:relative;flex:none;margin-left:16px;margin-right:4px;padding:0;border:0;background:none;color:var(--muted);line-height:0;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transition:color .18s ease}.theme-switch:after{content:"";position:absolute;top:-8px;right:-4px;bottom:-8px;left:-8px}@media (pointer: coarse){.theme-switch:after{top:-16px;right:-4px;bottom:-16px;left:-28px}}.theme-switch:active{scale:none}.theme-switch:hover{color:var(--text)}.theme-switch-circle{display:block;transition:transform .28s cubic-bezier(.4,0,.2,1)}.theme-switch[aria-checked=true] .theme-switch-circle{transform:rotate(180deg)}.theme-switch:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@layer components{.music-main{max-width:1120px;margin:0 auto;padding:44px 24px 96px;color:var(--text)}.music-header{position:sticky;top:0;z-index:3;margin:-44px 0 28px;padding:44px 0 18px}.music-topbar{display:flex;align-items:center;justify-content:space-between;gap:10px}.music-back{display:inline-flex;align-items:center;gap:.4em;color:var(--muted);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;white-space:nowrap;border:1px solid var(--border);border-radius:999px;padding:4px 10px;transition:color .15s ease,border-color .15s ease,background-color .15s ease}.music-back:hover,.music-back:focus-visible{color:var(--text);border-color:var(--accent);background:var(--hover)}.music-back span{transition:transform .15s ease}.music-back:hover span,.music-back:focus-visible span{transform:translate(-2px)}.music-heading{margin:14px 0 0;font-size:1.6rem;font-weight:600;letter-spacing:-.01em}.music-subtitle{margin:6px 0 0;color:var(--muted);font-size:.78rem}.music-empty{color:var(--muted);line-height:1.65}.music-section+.music-section{margin-top:48px}.music-section ul{margin:0;padding:0;list-style:none}.music-title{display:block;color:var(--text);font-size:.86rem;font-weight:550;line-height:1.35}.music-title-end{white-space:nowrap}.music-meta{display:block;color:var(--muted);font-size:.76rem;line-height:1.4}.music-sep{margin:0 .5ch;opacity:.6}.music-cover-blank{display:block;width:100%;height:100%;background:var(--hover)}.music-cover img,.music-rotation-cover img{display:block;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.music-rotation{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px 24px}.music-rotation-link{display:flex;align-items:center;gap:12px;text-decoration:none}.music-rotation-cover{flex:none;width:56px;height:56px;overflow:hidden;border-radius:4px;box-shadow:0 0 0 1px var(--border)}.music-rotation-text{min-width:0}.music-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}.music-link{display:block;text-decoration:none}.music-cover{position:relative;display:block;aspect-ratio:1;overflow:hidden;border-radius:6px;box-shadow:0 0 0 1px var(--border);transform:translateZ(0);transition:transform .32s cubic-bezier(.22,.61,.36,1)}.music-cover img{transition:transform .42s cubic-bezier(.22,.61,.36,1),filter .32s ease}.music-link:active{scale:none}.music-link:hover .music-cover,.music-link:focus-visible .music-cover{transform:translateY(-3px)}.music-link:hover .music-cover img,.music-link:focus-visible .music-cover img{transform:scale(1.035);filter:saturate(1.08)}.music-link:focus-visible,.music-rotation-link:focus-visible{outline:none}.music-link:focus-visible .music-cover,.music-rotation-link:focus-visible .music-rotation-cover{outline:2px solid var(--accent);outline-offset:3px}.music-caption{position:absolute;right:0;bottom:0;left:0;display:flex;flex-direction:column;gap:2px;padding:48px 14px 12px;background:linear-gradient(to top,#0000008c,#00000047 45%,#0000);text-shadow:0 1px 2px rgba(0,0,0,.35)}.music-caption .music-title{color:#fff}.music-caption .music-meta,.music-caption .link-arrow{color:#ffffffbf}.music-cover.is-blank .music-caption{background:none;text-shadow:none}.music-cover.is-blank .music-title{color:var(--text)}.music-cover.is-blank .music-meta,.music-cover.is-blank .link-arrow{color:var(--muted)}.music-item,.music-rotation-item{animation:music-item-in .5s cubic-bezier(.22,1,.36,1) backwards;animation-delay:calc(var(--i, 0) * 40ms)}@media (max-width: 900px){.music-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 560px){.music-main{padding:32px 16px 72px}.music-header{margin:-32px 0 22px;padding:32px 0 14px}.music-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.music-caption{padding:36px 10px 9px}.music-caption .music-title{font-size:.78rem}.music-caption .music-meta{font-size:.68rem}}@keyframes music-item-in{0%{opacity:0;translate:0 8px;scale:.97}}@media (prefers-reduced-motion: reduce){.music-item,.music-rotation-item{animation:none}.music-cover,.music-cover img{transition:none}.music-link:hover .music-cover,.music-link:focus-visible .music-cover,.music-link:hover .music-cover img,.music-link:focus-visible .music-cover img{transform:none}}}
