.controller-stage{--explode: 0;--rail: 0;--gap: 0;--swap-lift: 0;--button-out: 0;--joystick-in: 0;--joystick-lift: 1;position:relative;height:auto;margin-top:48px;border-top:1px solid var(--line)}.controller-study{--iso-top: #454c49;--iso-left: #303734;--iso-right: #252d29;--iso-stroke: #7e8c82;position:relative;height:auto;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:28px 0}.controller-study-heading{width:100%;display:flex;align-items:baseline;justify-content:space-between;gap:14px}.controller-study-heading p{font-size:clamp(1.5rem,3vw,2.2rem);letter-spacing:-.03em}.controller-study svg{display:block;width:min(100%,780px);height:auto;aspect-ratio:4 / 3;overflow:visible}.iso-ground{fill:none;stroke:var(--line-strong);stroke-width:.7}.iso-ground .iso-shadow{fill:var(--ink);stroke:none;opacity:calc(.06 - var(--explode) * .025)}.iso-plate-top{fill:var(--iso-top);stroke:var(--iso-stroke);stroke-width:1}.iso-side-left{fill:var(--iso-left);stroke:var(--iso-stroke);stroke-width:.8}.iso-side-right{fill:var(--iso-right);stroke:var(--iso-stroke);stroke-width:.8}.iso-cavity rect{fill:var(--iso-right);stroke:var(--iso-stroke)}.iso-cavity path{fill:none;stroke:var(--iso-stroke);opacity:.55}.iso-cavity circle{fill:var(--iso-top);stroke:var(--iso-stroke)}.iso-board-layer{transform:translateY(calc(-7px - var(--explode) * 48px))}.iso-top-layer{transform:translateY(calc(-16px - var(--explode) * 106px))}.iso-top-layer .iso-plate-top{fill-opacity:calc(1 - var(--explode) * .88)}.iso-top-layer .iso-side-left,.iso-top-layer .iso-side-right{fill-opacity:calc(1 - var(--explode) * .65)}.iso-buttons-layer{transform:translateY(calc(-22px - var(--explode) * 154px))}.iso-module-layer{transform:translate(calc(var(--gap) * 69px + var(--rail) * 60px),calc(var(--gap) * 40px - var(--rail) * 35px))}.iso-board{--iso-top: #a38b59;--iso-left: #7a643e;--iso-right: #665637;--iso-stroke: #c5b183}.iso-perf-holes{fill:#d2bc87;stroke:#665637;stroke-width:.35}.iso-devkit{fill:#214739;stroke:#77917b}.iso-chip{fill:#a6b2ad;stroke:#d0d6d0}.iso-chip-pins{stroke:#c6bb92;stroke-width:3}.iso-chip-label{fill:#29362f;font:6px var(--font-mono)}.iso-usb{fill:#abb8b1;stroke:#5e7265}.iso-jst{fill:#e7e3d4;stroke:#a9ac98;stroke-width:.7}.iso-wires{fill:none;stroke:#bd8a68;stroke-width:1.3}.iso-battery{--iso-top: #2c3531;--iso-left: #222824;--iso-right: #1b221e}.iso-battery-label{fill:#b5bca9}.iso-display{fill:#142b23;stroke:var(--iso-stroke)}.iso-display-ink{stroke:#a8c4a5;stroke-width:2}.iso-function,.iso-socket{fill:#182320;stroke:var(--iso-stroke)}.iso-screw{fill:#a4ada6;stroke:var(--iso-stroke)}.iso-button-layout{transform:translate(calc(var(--button-out) * -135px),calc(var(--swap-lift) * -105px));opacity:calc(1 - var(--button-out))}.iso-joystick-layout{transform:translate(calc((1 - var(--joystick-in)) * 135px),calc(-16px - var(--joystick-lift) * 105px));opacity:var(--joystick-in)}.iso-stick-boot{fill:#1c2924;stroke:#7e8c82}.iso-stick-collar{fill:#37473c;stroke:#8a9a8f}.iso-stick-shaft{stroke:#b7c1b8;stroke-width:7;stroke-linecap:round}.iso-stick-ball{fill:#af6554;stroke:#d39b84;stroke-width:1.2}.iso-stick-highlight{fill:none;stroke:#ebc0a6;stroke-width:2;stroke-linecap:round;opacity:.65}.iso-button-edge{fill:#234957;stroke:#294450}.iso-button-face{fill:#658b9c;stroke:#9ebac3;stroke-width:1}.iso-button-glint{fill:none;stroke:#c0d5db;stroke-linecap:round;opacity:.7}.iso-guides{fill:none;stroke:var(--iso-stroke);stroke-width:.8;stroke-dasharray:.025 .025;opacity:calc(var(--explode) * .55)}.iso-vertical-wall{fill:#303b35;stroke:var(--iso-stroke);stroke-width:.8}.iso-rail{fill:#1c2922;stroke:#91a194;stroke-width:.7}.iso-magnet-rim{fill:#19251e;stroke:#7b8c7c;stroke-width:.6}.iso-magnet{fill:#c8c6b5;stroke:#eee7ce;stroke-width:.5}.iso-mating-face .iso-vertical-wall{fill:#394b40;fill-opacity:calc(1 - var(--gap) * .6);stroke-dasharray:3 3}.iso-connector .iso-side-left,.iso-connector .iso-side-right{fill-opacity:calc(1 - var(--gap) * .75)}.iso-annotations{opacity:var(--explode)}.iso-annotations path{fill:none;stroke:var(--ink-3);stroke-width:.7}.iso-annotations text{fill:var(--ink-3);font:8px var(--font-mono);letter-spacing:.5px}.controller-study figcaption{width:100%;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-family:var(--font-mono);font-size:.625rem;letter-spacing:.02em;color:var(--ink-3)}.controller-study-status{color:var(--ink-2)}@media (max-width: 600px){.controller-study-heading .label{font-size:.625rem}.controller-study svg{width:calc(100% + 28px)}.controller-study figcaption{font-size:.5625rem;flex-direction:column;align-items:center;text-align:center}.iso-annotations{display:none}}.project-gallery{padding-bottom:32px}.project-feature{padding:clamp(20px,3.5vw,40px);border:1px solid var(--line-strong);border-radius:6px;background:color-mix(in srgb,var(--surface) 65%,transparent)}.project-feature-intro{display:flex;justify-content:space-between;gap:16px;padding-bottom:26px;border-bottom:1px solid var(--line)}.project-feature-intro .label{font-size:.625rem;letter-spacing:.1em}.project-feature-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);gap:clamp(24px,4vw,52px);align-items:center;padding-top:36px}.project-feature-copy h3{font-size:1rem;font-weight:550;letter-spacing:-.02em}.project-feature-deck{margin:18px 0 24px;font-size:clamp(3rem,5.5vw,4.5rem);letter-spacing:-.045em;line-height:.98;font-weight:500}.project-gallery em{font-family:var(--font-editorial);font-weight:400}.project-feature-deck em{color:var(--accent-ink)}.project-description{color:var(--ink-2);font-size:.9375rem;line-height:1.75;text-wrap:pretty}.project-facts{display:flex;flex-wrap:wrap;gap:20px 32px;margin:28px 0}.project-facts dt{font-size:1.125rem;letter-spacing:-.03em}.project-facts dd{margin-top:4px;color:var(--ink-3);font-size:.6875rem;font-family:var(--font-mono)}.project-link{display:inline-flex;align-items:baseline;gap:12px;transition:color .2s}.project-link>span{transition:transform .25s var(--ease-out)}.project-link:hover{color:var(--accent-ink)}.project-link:hover>span{transform:translate(2px,-2px)}.project-feature-links{display:flex;flex-wrap:wrap;gap:16px 24px}.project-feature-links .project-link{font-size:.8125rem;border-bottom:1px solid var(--line-strong);padding-bottom:4px}.project-demo{min-width:0}.project-demo video{display:block;width:100%;aspect-ratio:16 / 9;background:#171614;border-radius:4px}.project-demo figcaption{display:flex;align-items:center;gap:8px;margin-top:14px;color:var(--ink-3);font-size:.625rem;font-family:var(--font-mono)}.project-demo figcaption>span:last-child{margin-left:auto}.project-demo-dot{width:5px;height:5px;background:var(--accent);border-radius:50%}.project-collection-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin:76px 0 32px}.project-collection-head p{font-size:clamp(1.5rem,3vw,2rem);letter-spacing:-.03em}.project-collection-head .label{font-size:.625rem}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px 32px}.project-card{min-width:0;display:flex;flex-direction:column}.project-preview{--preview-bg: #e5e4de;position:relative;display:grid;place-items:center;aspect-ratio:4 / 3;padding:clamp(18px,2.8vw,32px);overflow:hidden;background:var(--preview-bg);border:1px solid var(--line);border-radius:4px}.project-card--bunshin .project-preview{--preview-bg: #e4e8df}.project-card--analyticz .project-preview{--preview-bg: #e4e2ed}.project-card--sniffles .project-preview{--preview-bg: #dfe7e9}.project-card--booxserve .project-preview{--preview-bg: #e9e3d8}.project-card--walls .project-preview{--preview-bg: #e6dedb}[data-theme=dark] .project-preview{background:color-mix(in srgb,var(--preview-bg) 12%,#191917)}.project-preview img{width:100%;height:100%;min-height:0;object-fit:contain;transition:transform .6s var(--ease-out)}.project-preview:hover img{transform:translateY(-4px) scale(1.025)}.project-preview-action{position:absolute;bottom:14px;right:14px;padding:7px 12px;border:1px solid var(--line);border-radius:3px;background:var(--surface);color:var(--ink);font-size:.6875rem;opacity:0;transform:translateY(6px);transition:opacity .25s,transform .25s}.project-preview:hover .project-preview-action,.project-preview:focus-visible .project-preview-action{opacity:1;transform:none}.project-card-meta{display:flex;gap:12px;margin:22px 0 10px;font-size:.625rem;letter-spacing:.1em}.project-card-meta>span:first-child{color:var(--accent-ink)}.project-card h3{font-size:1.625rem;font-weight:500;letter-spacing:-.035em;line-height:1.2}.project-card h3 .project-link{display:flex;justify-content:space-between}.project-card h3 .project-link>span{font-size:1.25rem;color:var(--ink-3)}.project-card .project-description{margin:14px 0 22px;max-width:48ch}.project-stack{display:flex;flex-wrap:wrap;gap:8px 18px;list-style:none;margin-top:auto;padding-top:15px;border-top:1px solid var(--line)}.project-stack li{font-family:var(--font-mono);font-size:.625rem;color:var(--ink-3)}.project-feature-visuals{min-width:0}@media (max-width: 860px){.project-feature-layout{grid-template-columns:1fr}.project-feature-copy{max-width:52ch}.project-feature-deck br{display:none}.project-grid{gap:44px 24px}}@media (max-width: 600px){.project-feature-intro{flex-direction:column;gap:6px;padding-bottom:20px}.project-feature-layout{padding-top:24px}.project-collection-head{flex-direction:column;gap:10px;margin-top:52px}.project-grid{grid-template-columns:1fr}.project-preview{padding:24px}.project-demo figcaption>span:last-child{display:none}}@media (hover: none){.project-preview-action{opacity:1;transform:none}}@media (prefers-reduced-motion: reduce){.project-preview img,.project-preview-action,.project-link>span{transition:none;transform:none}}body[data-zone=creative]{--bg: #ece9e5}[data-theme=dark] body[data-zone=creative]{--bg: #171419}.creative-section .section-title .serif{font-family:var(--font-editorial);font-weight:400;font-style:italic}.creative-intro{color:var(--ink-2);max-width:40ch;line-height:1.6}.creative-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;border-top:1px solid var(--line)}.creative-count{color:var(--ink-3);margin-left:8px}.creative-filters{display:flex;gap:4px}.creative-filters button{font:inherit;font-size:12px;padding:7px 13px;border-radius:99px;color:var(--ink-2);border:1px solid transparent;background:transparent;cursor:pointer}.creative-filters button[aria-pressed=true]{color:var(--ink);border-color:var(--line-strong);background:var(--surface)}.creative-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.creative-tile{position:relative;isolation:isolate;aspect-ratio:2.2;overflow:hidden;border:0;border-radius:8px;background:#171b1c;color:#fff;text-align:center;cursor:pointer;padding:0;font-family:var(--font-sans)}.creative-tile:only-child{grid-column:1 / -1;aspect-ratio:3.2}.creative-poster,.creative-wave,.creative-scrim{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:-1}.creative-poster{object-fit:cover;object-position:50% 40%;transition:transform .7s var(--ease-out),filter .7s;filter:saturate(.7)}.creative-scrim{background:linear-gradient(180deg,#00000080,#0000004d 45%,#000000a6);transition:opacity .4s}.creative-tile:hover .creative-poster{transform:scale(1.045);filter:saturate(1)}.creative-tile:hover .creative-scrim{opacity:.75}.creative-tile-top,.creative-tile-bottom{position:absolute;left:18px;right:18px;display:flex;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:#e6e2dd}.creative-tile-top{top:16px}.creative-tile-bottom{bottom:16px}.creative-tile-bottom>span:last-child{border:1px solid #ffffff50;border-radius:50%;width:28px;height:28px;display:grid;place-items:center;padding-left:2px;transition:background .2s}.creative-tile:hover .creative-tile-bottom>span:last-child{background:#fff2}.creative-tile-title{display:flex;flex-direction:column;align-items:center;gap:7px;padding:48px 30px}.creative-tile-title strong{font-size:clamp(16px,2vw,26px);font-weight:600;line-height:1.08;letter-spacing:-.035em;text-transform:uppercase;max-width:26ch;text-wrap:balance;text-shadow:0 2px 20px #0008}.creative-tile-title strong span{color:#f3c58d}.creative-tile--audio .creative-tile-title strong span{color:#bbbbea}.creative-tile-title small{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#eee8e0}.creative-wave{display:flex;align-items:center;justify-content:center;gap:5px;padding:24px;background:radial-gradient(ellipse at 50% 70%,#484060,#17151f 80%)}.creative-wave i{width:4px;height:var(--bar);border-radius:8px;background:linear-gradient(#b9b0c92b,#c2b4e97a,#b9b0c910)}.creative-footnote{margin-top:15px;font-size:12px;color:var(--ink-3)}.creative-tile:focus-visible,.creative-filters button:focus-visible,.creative-close:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.creative-viewer{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:clamp(18px,4vw,54px);border:0;background:#101010f5;color:#f4f1eb;overflow-y:auto}.creative-viewer::backdrop{background:#000c}.creative-viewer[open]{display:grid;align-items:center}.creative-viewer-inner{width:min(100%,1000px);margin:auto}.creative-viewer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:24px}.creative-viewer-header .label{color:#bdb6ae;font-size:10px;margin-bottom:8px}.creative-viewer-header h2{font-size:clamp(20px,3vw,32px);line-height:1.2;font-weight:500}.creative-close{flex-shrink:0;border:1px solid #ffffff40;background:transparent;color:#fff;width:44px;height:44px;border-radius:50%;cursor:pointer}.creative-player{min-height:200px;display:flex;align-items:center;justify-content:center;background:#080808;border-radius:8px;overflow:hidden}.creative-player video,.creative-player img{display:block;width:100%;max-height:70dvh;object-fit:contain}.creative-player--video{position:relative;width:min(100%,calc(70dvh * var(--media-aspect, 1.777778)));aspect-ratio:var(--media-aspect, 1.777778);min-height:0;margin-inline:auto}.creative-player--video video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.creative-player--video .creative-error{margin:0}.creative-player--audio{padding:40px 20px;flex-direction:column;gap:32px;background:radial-gradient(ellipse,#302638,#100f14)}.creative-player audio{width:min(100%,500px)}.creative-record{width:min(45vw,220px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:repeating-radial-gradient(circle,#1d1c23 0,#1d1c23 2px,#34303b,#34303b 4px);box-shadow:0 20px 60px #0006}.creative-record span{width:28%;aspect-ratio:1;border-radius:50%;background:#b5a3b9;border:20px solid #6d5873}.creative-viewer-note{display:flex;justify-content:space-between;gap:20px;color:#bdb6ae;font-size:12px;margin-top:16px}.creative-error{padding:32px;text-align:center;color:#d4cdc4}@media (min-width: 1400px){.creative-grid:has(>:nth-child(5)){grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width: 640px){.creative-section .section-head{flex-direction:column}.creative-grid{grid-template-columns:1fr}.creative-tile,.creative-tile:only-child{aspect-ratio:1.9}.creative-toolbar{gap:10px;flex-wrap:wrap}.creative-tile-title strong{font-size:23px}.creative-viewer-note span{display:none}}@media (prefers-reduced-motion: reduce){.creative-section *,.creative-section *:before{transition:none!important}}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-property:overflow;transition-duration:1ms;transition-behavior:allow-discrete}:root{--bg: #f2f1ee;--surface: #fbfaf8;--surface-2: #eceae6;--ink: #171614;--ink-2: #55524b;--ink-3: #736e64;--line: rgba(23, 22, 20, .1);--line-strong: rgba(23, 22, 20, .18);--accent: #f9363c;--accent-ink: #e53237;--accent-soft: rgba(249, 54, 60, .08);--green: #2ba84a;--green-soft: rgba(43, 168, 74, .12);--font-sans: "Instrument Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--font-editorial: "Instrument Serif", Georgia, serif;--text-hero: clamp(2.5rem, 6.4vw, 4.75rem);--text-h2: clamp(1.75rem, 3.6vw, 2.75rem);--text-h3: clamp(1.25rem, 2.2vw, 1.625rem);--text-body: 1rem;--text-small: .875rem;--text-micro: .75rem;--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-soft: cubic-bezier(.4, 0, .2, 1);--dur: .25s;--dur-slow: .7s;--radius: 12px;--radius-lg: 20px;--radius-pill: 999px;--shadow-pill: 0 1px 2px rgba(23, 22, 20, .05), 0 8px 24px rgba(23, 22, 20, .06);--shadow-card: 0 1px 2px rgba(23, 22, 20, .04), 0 12px 32px rgba(23, 22, 20, .05);--gutter: clamp(20px, 4.5vw, 56px);--measure: 62ch}[data-theme=dark]{--bg: #131211;--surface: #1b1a18;--surface-2: #232220;--ink: #f1efe9;--ink-2: #a6a299;--ink-3: #999389;--line: rgba(241, 239, 233, .1);--line-strong: rgba(241, 239, 233, .2);--accent: #ff4d52;--accent-ink: #ff7479;--accent-soft: rgba(255, 77, 82, .1);--green: #41c463;--green-soft: rgba(65, 196, 99, .14);--shadow-pill: 0 1px 2px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .35);--shadow-card: 0 1px 2px rgba(0, 0, 0, .25), 0 12px 32px rgba(0, 0, 0, .3)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:auto;scrollbar-gutter:stable;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.stage-snap{position:absolute;left:0;width:1px;height:100svh;scroll-snap-align:start;pointer-events:none}body{font-family:var(--font-sans);font-size:var(--text-body);line-height:1.65;color:var(--ink);background:var(--section-bg, var(--bg));min-height:100vh;overflow-x:hidden;transition:color .35s var(--ease-soft)}body[data-zone=work]{--bg: #f3f0e9}body[data-zone=experience]{--bg: #edf0e9}body[data-zone=writing]{--bg: #efedf1}body[data-zone=contact]{--bg: #f3eeea}[data-theme=dark] body[data-zone=work]{--bg: #1a150c}[data-theme=dark] body[data-zone=experience]{--bg: #0f1710}[data-theme=dark] body[data-zone=writing]{--bg: #14121d}[data-theme=dark] body[data-zone=contact]{--bg: #1d100f}.paper-field{position:fixed;top:-20px;right:-20px;bottom:-20px;left:-20px;z-index:-1;pointer-events:none;overflow:hidden;opacity:.32;filter:blur(12px) saturate(.9);background:radial-gradient(ellipse at 85% 20%,#c4b1ec,transparent 60%),radial-gradient(ellipse at 75% 65%,#eea398,transparent 65%),radial-gradient(ellipse at 40% 100%,#e7c17e,transparent 65%)}[data-theme=dark] .paper-field{opacity:.2;filter:blur(12px) saturate(.75) brightness(.35);background:radial-gradient(ellipse at 85% 20%,#77639d,transparent 60%),radial-gradient(ellipse at 75% 65%,#b77382,transparent 65%),radial-gradient(ellipse at 40% 100%,#b38b57,transparent 65%)}@media (max-width: 700px){.paper-field{opacity:.26}[data-theme=dark] .paper-field{opacity:.16}}::selection{background:var(--accent);color:#fff}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;background:none;border:none;color:inherit}img{max-width:100%;display:block}.label{font-family:var(--font-mono);font-size:var(--text-micro);font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.accent-word{font-family:var(--font-editorial);font-weight:400;font-style:italic;color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:6px}section[id]{scroll-margin-top:100px}@keyframes rise-in{0%{opacity:0;transform:translateY(26px) scale(.985);filter:blur(3px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}.hero-reveal{opacity:0;animation:rise-in .9s var(--ease-out) forwards;animation-delay:var(--d, 0s)}.reveal{opacity:0;transform:translateY(26px) scale(.985);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out);transition-delay:var(--d, 0s);will-change:opacity,transform}.reveal.is-visible{opacity:1;transform:translateY(0) scale(1)}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.hero-reveal,.reveal{animation:none;opacity:1;transform:none;filter:none;transition:none}*,*:before,*:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.hdr{position:fixed;top:18px;left:50%;transform:translate(-50%);z-index:100;display:flex;align-items:center;gap:4px;padding:6px;border:1px solid var(--line);border-radius:var(--radius-pill);background:color-mix(in srgb,var(--surface) 92%,transparent);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);box-shadow:var(--shadow-pill);max-width:calc(100vw - 32px)}.hdr-brand{display:flex;align-items:center;gap:9px;padding:6px 14px 6px 7px;border-radius:var(--radius-pill);font-weight:600;font-size:var(--text-small);letter-spacing:-.01em;white-space:nowrap}.hdr-avatar{width:26px;height:26px;border-radius:50%;object-fit:cover;border:1px solid var(--line)}.hdr-nav{display:flex;align-items:center;gap:2px}.hdr-link{padding:7px 13px;border-radius:var(--radius-pill);font-size:var(--text-small);color:var(--ink-2);transition:color var(--dur) var(--ease-soft),background-color var(--dur) var(--ease-soft);white-space:nowrap}.hdr-link:hover{color:var(--ink);background:var(--surface-2)}.hdr-theme{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;color:var(--ink-2);transition:color var(--dur) var(--ease-soft),background-color var(--dur) var(--ease-soft),transform .4s var(--ease-out)}.hdr-theme:hover{color:var(--ink);background:var(--surface-2);transform:rotate(40deg)}.hdr-theme svg{width:15px;height:15px}@media (max-width: 640px){.hdr{left:16px;right:16px;transform:none;justify-content:space-between;max-width:none}.hdr-brand span{display:none}.hdr-brand{padding:6px 4px 6px 7px}.hdr-nav{gap:0}.hdr-link{padding:7px 8px;font-size:.78rem}}.page{max-width:1120px;margin:0 auto;padding:0 var(--gutter)}.hero-stage{height:200svh;position:relative}.hero-sticky{position:sticky;top:0;height:100svh;display:grid;place-items:center;overflow:hidden}.hero-frame{position:relative;width:calc(100% - (100% - min(1080px,100% - 48px)) * var(--p, 0));height:calc(100svh - (100svh - min(1080px,100% - 48px) * .5625) * var(--p, 0));border-radius:calc(var(--radius-lg) * var(--p, 0));overflow:hidden;background:#000}.hero-frame.is-theatre{cursor:pointer;box-shadow:0 24px 80px #00000059}.hero-frame video{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.hero-frame-scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,#0c0d0ce0,#0c0d0c94 55%,#0c0d0c47);opacity:calc(1 - var(--p, 0) * 1.5);pointer-events:none}.hero-copy{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;justify-content:center;width:100%;padding-top:110px;padding-bottom:110px;color:#fff;opacity:calc(1 - var(--p, 0) * 2.8);transform:translateY(calc(var(--p, 0) * -48px))}.hero-copy.is-faded{pointer-events:none}.hero-copy .label{color:#ffffffa6}.hero-copy .hero-sub{color:#ffffffb8;max-width:49ch}.hero-copy .accent-word{color:#e8c5a5}.hero-copy .hero-sub strong{color:#fff}.hero-copy .btn-primary{background:#fff;color:#131211}.hero-copy .btn-primary:hover{background:var(--accent);color:#fff}.hero-copy .btn-ghost{border-color:#fff6;color:#ffffffd9}.hero-copy .btn-ghost:hover{border-color:#fff;color:#fff}.hero-theatre-caption{position:absolute;bottom:26px;z-index:2;opacity:calc((var(--p, 0) - .75) * 4);pointer-events:none}.theatre{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-items:center;padding:clamp(16px,4vw,48px);background:#00000059;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.theatre-frame{width:min(1080px,100%);aspect-ratio:16 / 9;border-radius:var(--radius-lg);overflow:hidden;background:#000;box-shadow:0 24px 80px #00000080}.theatre-frame video{width:100%;height:100%;object-fit:contain}.theatre-close{position:absolute;top:22px;right:26px;width:38px;height:38px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.3);border-radius:50%;color:#fff;font-size:.9rem;transition:background-color var(--dur) var(--ease-soft),transform .4s var(--ease-out)}.theatre-close:hover{background:#ffffff1f;transform:rotate(90deg)}.hero-kicker{display:flex;align-items:center;flex-wrap:wrap;gap:14px;margin-bottom:30px}.hero-title{font-size:clamp(2.8rem,6.8vw,5.5rem);font-weight:500;line-height:1.02;letter-spacing:-.045em;max-width:17ch;text-wrap:balance}.hero-sub{margin-top:28px;max-width:56ch;font-size:clamp(1rem,1.5vw,1.125rem);line-height:1.7;color:var(--ink-2);text-wrap:pretty}.hero-sub strong{color:var(--ink);font-weight:550}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-top:38px}.btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:var(--radius-pill);font-size:var(--text-small);font-weight:550;letter-spacing:.01em;transition:transform .45s var(--ease-out),background-color var(--dur) var(--ease-soft),border-color var(--dur) var(--ease-soft),color var(--dur) var(--ease-soft)}.btn svg{width:13px;height:13px;transition:transform .45s var(--ease-out)}.btn-primary{background:var(--ink);color:var(--bg)}.btn-primary:hover{background:var(--accent);color:#fff}.btn-primary:hover svg{transform:translateY(2px)}.btn-ghost{border:1px solid var(--line-strong);color:var(--ink-2)}.btn-ghost:hover{border-color:var(--ink);color:var(--ink)}.btn-ghost:hover svg{transform:translate(1px,-1px)}.hero-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;position:absolute;bottom:38px;left:var(--gutter);right:var(--gutter);padding-top:20px;border-top:1px solid rgba(255,255,255,.2)}.hero-scroll-hint{display:inline-flex;align-items:center;gap:10px;color:var(--ink-3)}@keyframes drift-down{0%,to{transform:translateY(0);opacity:1}50%{transform:translateY(5px);opacity:.45}}.hero-scroll-hint svg{width:12px;height:12px;animation:drift-down 2.4s var(--ease-soft) infinite}.section{padding:clamp(72px,12vh,128px) 0;border-top:1px solid color-mix(in srgb,var(--line) 45%,transparent)}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:clamp(28px,4vh,44px)}.section-title{font-size:var(--text-h2);font-weight:550;letter-spacing:-.03em;line-height:1.1}.section-title .accent-word{color:var(--ink-2)}@supports (animation-timeline: view()){@media (prefers-reduced-motion: no-preference){.section-title{animation:head-scrub both linear;animation-timeline:view();animation-range:entry 0% cover 32%}.section-head .label{animation:label-scrub both linear;animation-timeline:view();animation-range:entry 0% cover 32%}}}@keyframes head-scrub{0%{transform:translateY(12px);opacity:.65;filter:none}to{transform:none;opacity:1;filter:none}}@keyframes label-scrub{0%{opacity:.5}}.work-stage{position:relative}.work-stage-sticky{position:sticky;top:0;height:100svh;overflow:hidden}.work-slide{position:absolute;top:50%;left:50%;width:min(620px,84%);will-change:transform,opacity}.work-slide-link{display:block}.work-piece-media{aspect-ratio:3 / 2;display:grid;place-items:center;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--surface-2);box-shadow:var(--shadow-card)}.work-piece-media img{width:100%;height:100%;object-fit:cover}.work-card-num{font-family:var(--font-mono);font-size:1.75rem;letter-spacing:.08em;color:var(--ink-3)}.work-stage-foot{position:absolute;left:4px;right:4px;bottom:30px;display:flex;align-items:center;gap:clamp(16px,3vw,32px)}.work-progress{flex:1;height:2px;border-radius:1px;background:var(--line);overflow:hidden}.work-progress-fill{display:block;height:100%;background:var(--accent);transform:scaleX(0);transform-origin:left}.work-flow{display:flex;flex-direction:column;gap:clamp(40px,6.5vh,72px)}.work-flow .work-slide-link{width:min(560px,84%);margin:0 auto}.work-card-caption{display:grid;grid-template-columns:28px 1fr 32px;align-items:baseline;gap:4px 12px;margin-top:22px;padding:18px 0 0;border-top:1px solid var(--line-strong);min-width:0}.work-card-caption>.label{grid-row:1 / 3}.work-card-arrow{grid-column:3;grid-row:1 / 3;align-self:center;font-size:1.4rem;color:var(--ink-3);transition:transform var(--dur),color var(--dur)}.work-slide-link:hover .work-card-arrow{color:var(--accent);transform:translate(3px,-3px)}.work-card-name{font-size:1.125rem;font-weight:550;letter-spacing:-.01em;white-space:nowrap}.work-slide-link:hover .work-card-name{color:var(--accent)}.work-card-tagline{grid-column:2;font-size:var(--text-small);color:var(--ink-2);line-height:1.5}.work-nav-btn svg{width:13px;height:13px}.xp-stage{position:relative}.xp-stage-sticky{position:sticky;top:0;height:100svh;display:grid;place-items:center;overflow:hidden}.xp-slide{position:absolute;top:50%;left:50%;width:100%;will-change:transform,opacity,filter}.xp-static{display:flex;flex-direction:column;gap:clamp(56px,9vh,110px)}.xp-spread{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(32px,6vw,96px);align-items:center}.xp-spread-head{display:flex;flex-direction:column;align-items:flex-start}.xp-eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:28px}.xp-logo{width:32px;height:32px;object-fit:contain}.xp-eyebrow-company{font-size:var(--text-small);font-weight:550;letter-spacing:-.01em}.xp-focus{font-size:clamp(2rem,4.4vw,3.5rem);font-weight:550;letter-spacing:-.035em;line-height:1.05;max-width:16ch;text-wrap:balance}.xp-role{margin-top:16px;font-size:clamp(.9375rem,1.3vw,1.0625rem);line-height:1.55;color:var(--ink-2);max-width:34ch;text-wrap:pretty}.xp-when{margin-top:22px;letter-spacing:.06em;white-space:nowrap}.xp-spread-main{display:flex;flex-direction:column;justify-content:center}.xp-now{color:var(--ink-2);font-size:1.0625rem}.xp-bullets{list-style:none;display:flex;flex-direction:column;gap:clamp(14px,2.2vh,22px);max-width:var(--measure)}.xp-bullets li{position:relative;padding-left:26px;font-size:clamp(.875rem,1.25vw,1rem);line-height:1.65;color:var(--ink-2);text-wrap:pretty}.xp-bullets li:before{content:"";position:absolute;left:0;top:.68em;width:12px;height:1px;background:var(--accent)}#writing{min-height:100svh;display:flex;flex-direction:column}.notebook-fill{flex:1;display:flex;flex-direction:column}.notebook-page{--np: 1;--rule: 76px;--settle: clamp(0, var(--np) * 2.5, 1);flex:1;display:flex;flex-direction:column;position:relative;background:var(--surface);border:1px solid var(--line);border-radius:4px;box-shadow:0 8px 28px #17161406;overflow:hidden;transform:perspective(1200px) rotateX(calc((1 - var(--settle)) * 4deg)) translateY(calc((1 - var(--settle)) * 28px));transform-origin:top center}.notebook-page:before{content:"";position:absolute;top:0;bottom:0;left:var(--rule);width:2px;background:var(--accent);opacity:.6;transform:scaleY(clamp(0,var(--np) * 1.25,1));transform-origin:top}.nb-entry{--t: clamp(0, var(--np) * (var(--n, 1) + 1) - var(--i, 0), 1);display:grid;grid-template-columns:var(--rule) 1fr auto 28px;align-items:center;column-gap:18px;padding:clamp(26px,4.5vh,46px) 28px clamp(26px,4.5vh,46px) 0;border-bottom:1px solid var(--line)}.nb-entry .post-title{font-size:clamp(1.5rem,3vw,2.25rem)}.nb-entry>*{opacity:var(--t);translate:0 calc((1 - var(--t)) * 8px);filter:blur(calc((1 - var(--t)) * 3px))}.nb-num{padding-left:24px;color:var(--ink-3);transition:color var(--dur) var(--ease-soft)}.nb-blanks{flex:1;min-height:120px;position:relative;background:repeating-linear-gradient(to bottom,transparent 0,transparent 57px,var(--line) 57px,var(--line) 58px)}.nb-caret{position:absolute;left:calc(var(--rule) + 18px);top:29px;translate:0 -50%;width:2px;height:1.05em;background:var(--accent);animation:nb-blink 1.1s steps(2,jump-none) infinite}@keyframes nb-blink{0%,55%{opacity:1}56%,to{opacity:0}}@media (prefers-reduced-motion: reduce){.nb-caret{animation:none}}.post-title{font-size:var(--text-h3);font-weight:550;letter-spacing:-.02em;line-height:1.25;transition:transform .5s var(--ease-out)}.post-meta{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:.06em;color:var(--ink-3);white-space:nowrap}.post-arrow{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--ink-3);transition:transform .5s var(--ease-out),background-color var(--dur) var(--ease-soft),color var(--dur) var(--ease-soft),border-color var(--dur) var(--ease-soft)}.post-arrow svg{width:11px;height:11px}.nb-entry:hover .post-title{transform:translate(6px)}.nb-entry:hover .nb-num{color:var(--accent-ink)}.nb-entry:hover .post-arrow{background:var(--ink);border-color:var(--ink);color:var(--bg);transform:rotate(-45deg)}.contact{min-height:75svh;display:flex;flex-direction:column;padding-bottom:40px}.contact-lede{color:var(--ink-2);max-width:46ch;text-wrap:pretty}.contact-email{display:inline-block;margin-top:28px;font-weight:550;font-size:clamp(1.5rem,4.6vw,3.25rem);letter-spacing:-.03em;line-height:1.15;position:relative;transition:color var(--dur) var(--ease-soft);overflow-wrap:anywhere}.contact-email:after{content:"";position:absolute;left:0;bottom:-4px;width:100%;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease-out)}.contact-email:hover{color:var(--accent)}.contact-email:hover:after{transform:scaleX(1)}.contact-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:36px}.contact-link{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:1px solid var(--line);border-radius:var(--radius-pill);background:transparent;font-size:var(--text-small);font-weight:500;color:var(--ink-2);transition:border-color var(--dur) var(--ease-soft),color var(--dur) var(--ease-soft),transform .45s var(--ease-out)}.contact-link svg{width:12px;height:12px;color:var(--ink-3);transition:color var(--dur) var(--ease-soft),transform .45s var(--ease-out)}.contact-link:hover{border-color:var(--ink);color:var(--ink);transform:translateY(-2px)}.contact-link:hover svg{color:var(--accent);transform:translate(1px,-1px)}.foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:auto;padding:28px 0 8px;border-top:1px solid var(--line)}.spotify-widget{position:fixed;left:22px;bottom:22px;z-index:90;width:min(328px,calc(100vw - 32px));padding:18px;border:1px solid var(--line);border-radius:25px;color:var(--ink);background:color-mix(in srgb,var(--surface) 62%,transparent);-webkit-backdrop-filter:blur(28px) saturate(1.6);backdrop-filter:blur(28px) saturate(1.6);box-shadow:0 3px 6px #00000005,0 14px 40px #00000012,inset 0 1px #ffffff26;overflow:hidden;transition:width .42s cubic-bezier(.22,1,.36,1),padding .42s cubic-bezier(.22,1,.36,1),border-radius .42s cubic-bezier(.22,1,.36,1);animation:spotify-enter .55s cubic-bezier(.22,1,.36,1) both}.spotify-content{display:grid;grid-template-rows:1fr;opacity:1;transition:grid-template-rows .42s cubic-bezier(.22,1,.36,1),opacity .24s ease}.spotify-content-inner{min-height:0;overflow:hidden;width:min(290px,calc(100vw - 70px))}.spotify-widget.is-collapsed .spotify-content{grid-template-rows:0fr;opacity:0;pointer-events:none}.spotify-header,.spotify-brand,.spotify-footer,.spotify-status{display:flex;align-items:center}.spotify-header,.spotify-footer{justify-content:space-between}.spotify-header.is-detached{cursor:grab;touch-action:none}.spotify-widget.is-dragging{transition:none;cursor:grabbing;-webkit-user-select:none;user-select:none}.spotify-widget.is-dragging .spotify-header{cursor:grabbing;touch-action:none}.spotify-brand{gap:7px;font-size:12px;font-weight:550}.spotify-brand svg{color:#238b50}.spotify-toggle{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:50%;background:color-mix(in srgb,var(--ink) 5%,transparent);color:var(--ink-3);cursor:pointer;font:18px var(--font-sans);transition:background .18s ease,transform .18s ease}.spotify-toggle:active{transform:scale(.92)}.spotify-toggle-glyph{position:relative;width:10px;height:10px}.spotify-toggle-glyph:before,.spotify-toggle-glyph:after{content:"";position:absolute;background:currentColor;border-radius:1px}.spotify-toggle-glyph:before{width:10px;height:1px;left:0;top:4.5px}.spotify-toggle-glyph:after{height:10px;width:1px;top:0;left:4.5px;transform:scaleY(0);transition:transform .28s ease}.is-collapsed .spotify-toggle-glyph:after{transform:scaleY(1)}.spotify-toggle:hover{background:color-mix(in srgb,var(--ink) 10%,transparent)}.spotify-toggle:focus-visible,.spotify-footer a:focus-visible{outline:2px solid #238b50;outline-offset:4px}.spotify-body{display:flex;align-items:center;gap:14px;margin:20px 0;animation:spotify-track-enter .35s ease both}.spotify-album-art{position:relative;flex:0 0 76px;height:76px;border-radius:15px;overflow:hidden;background:#dfe5d7}.spotify-album-art img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.spotify-record{position:absolute;width:66px;height:66px;top:15px;left:17px;border-radius:50%;background:repeating-radial-gradient(circle,#343b34 0,#343b34 2px,#262d27,#262d27 4px);box-shadow:-4px 5px 12px #0003;display:grid;place-items:center;transform:rotate(-20deg)}.spotify-record span{width:24px;height:24px;border:9px solid #c5d99c;border-radius:50%;background:#2c332b}.spotify-info{min-width:0;line-height:1.4}.spotify-eyebrow{font-size:9px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink-3);margin-bottom:5px}.spotify-track{font-size:16px;font-weight:550;line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.spotify-artist{font-size:11px;color:var(--ink-3);margin-top:5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.spotify-progress{height:3px;border-radius:3px;background:color-mix(in srgb,var(--ink) 9%,transparent);overflow:hidden}.spotify-progress span{display:block;width:100%;height:100%;background:#238b50;border-radius:inherit;transform-origin:left;transition:transform 1s linear}.spotify-times{display:flex;justify-content:space-between;margin-top:5px;font:9px var(--font-mono);color:var(--ink-3)}.spotify-footer{border-top:1px solid var(--line);padding-top:12px;margin-top:14px;gap:8px;font-size:10px;color:var(--ink-3)}.spotify-status{gap:7px}.spotify-footer a{color:var(--ink);text-decoration:none;white-space:nowrap}.spotify-footer a:hover{color:#238b50}.spotify-equalizer{display:flex;align-items:center;gap:2px;height:12px}.spotify-equalizer i{width:2px;height:12px;transform:scaleY(.25);background:currentColor;border-radius:2px}.spotify-equalizer.is-playing{color:#238b50}.spotify-equalizer.is-playing i{animation:spotify-bounce 1.2s ease-in-out infinite alternate}.is-collapsed .spotify-equalizer i{animation-play-state:paused}.spotify-equalizer i:nth-child(2){animation-delay:-.5s}.spotify-equalizer i:nth-child(3){animation-delay:-.2s}.spotify-equalizer i:nth-child(4){animation-delay:-.7s}.spotify-widget.is-collapsed{width:148px;padding:10px 14px;border-radius:22px}@keyframes spotify-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes spotify-track-enter{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes spotify-bounce{0%{transform:scaleY(.25)}to{transform:scaleY(.85)}}@media (prefers-reduced-motion: reduce){.spotify-widget,.spotify-widget *,.spotify-widget *:before,.spotify-widget *:after{animation:none!important;transition:none!important}}@media (max-width: 640px){.spotify-widget{position:relative;left:auto;bottom:auto;margin:24px auto;z-index:1}}.reading-page{max-width:720px;margin:0 auto;padding:140px var(--gutter) 80px}.back-link{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);transition:color var(--dur) var(--ease-soft)}.back-link:hover{color:var(--accent)}.reading-header{margin:36px 0 48px;padding-bottom:36px;border-bottom:1px solid var(--line)}.reading-title{font-size:var(--text-h2);font-weight:550;letter-spacing:-.03em;line-height:1.12;margin-top:14px;text-wrap:balance}.reading-date{margin-top:16px;font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:.08em;color:var(--ink-3)}.reading-content{color:var(--ink-2);line-height:1.75;font-size:1.0625rem}.reading-content h1,.reading-content h2,.reading-content h3,.reading-content h4{color:var(--ink);font-weight:550;letter-spacing:-.02em;line-height:1.25;margin:2.2em 0 .7em}.reading-content h1{font-size:1.75rem}.reading-content h2{font-size:1.4375rem}.reading-content h3{font-size:1.1875rem}.reading-content p{margin:1.1em 0}.reading-content a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px;transition:color var(--dur) var(--ease-soft)}.reading-content a:hover{color:var(--accent)}.reading-content strong{color:var(--ink);font-weight:550}.reading-content ul,.reading-content ol{margin:1.1em 0;padding-left:1.4em}.reading-content li{margin:.45em 0}.reading-content li::marker{color:var(--accent)}.reading-content blockquote{margin:1.6em 0;padding:4px 0 4px 22px;border-left:2px solid var(--accent);color:var(--ink)}.reading-content code{font-family:var(--font-mono);font-size:.85em;background:var(--surface-2);border:1px solid var(--line);border-radius:5px;padding:.15em .4em}.reading-content pre,.reading-content pre[class*=language-]{margin:1.6em 0!important;padding:14px 16px;border-radius:var(--radius)!important;border:1px solid var(--line);background:var(--surface-2);overflow-x:auto;font-size:.8125rem!important}.reading-content pre code{background:none;border:none;padding:0}.reading-content img{border-radius:var(--radius);border:1px solid var(--line)}.reading-content hr{border:none;border-top:1px solid var(--line);margin:2.4em 0}.reading-content table{width:100%;border-collapse:collapse;margin:1.6em 0;font-size:var(--text-small)}.reading-content th,.reading-content td{text-align:left;padding:10px 14px;border-bottom:1px solid var(--line)}.reading-content th{font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-weight:500}@media (max-height: 700px){.hero-copy{padding-top:100px;padding-bottom:70px}.hero-kicker{margin-bottom:16px}.hero-title{font-size:clamp(2.5rem,5.5vw,4rem)}.hero-sub{margin-top:18px;font-size:.9375rem}.hero-actions{margin-top:22px}.hero-foot{bottom:18px;padding-top:10px}}@media (max-width: 640px){.hero-kicker .label{font-size:.625rem;letter-spacing:.08em}.hero-foot>.label{display:none}.section-head{align-items:flex-start;flex-direction:column-reverse;gap:12px}.work-card-caption{grid-template-columns:22px 1fr 24px;gap:4px 8px}.contact{min-height:80svh}.foot{margin-top:72px}}@media (max-width: 860px){.xp-spread{grid-template-columns:1fr;gap:28px}.notebook-page{--rule: 44px}.nb-entry{grid-template-columns:var(--rule) 1fr 28px;row-gap:6px;padding-right:18px}.nb-num{padding-left:12px}.post-meta{grid-column:2;grid-row:2}.nb-entry .post-title{font-size:clamp(1.25rem,5.5vw,1.5rem)}}::view-transition-old(root),::view-transition-new(root){animation-duration:.3s}::view-transition-group(post-title){animation-duration:.5s;animation-timing-function:var(--ease-out)}::view-transition-group(media-preview),::view-transition-group(theatre-preview),::view-transition-group(media-title){animation-duration:.55s;animation-timing-function:var(--ease-out)}::view-transition-old(media-preview),::view-transition-new(media-preview),::view-transition-old(theatre-preview),::view-transition-new(theatre-preview){height:100%;object-fit:cover;overflow:clip}::view-transition-old(post-title),::view-transition-new(post-title){height:100%;object-fit:none;object-position:left top;overflow:clip}@media (prefers-reduced-motion: reduce){::view-transition-group(*),::view-transition-image-pair(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}
