@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@300;400;500&family=IBM+Plex+Mono:wght@400;500&family=Instrument+Sans:wght@400;500;600;700&display=swap";@layer components;@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.fixed{position:fixed}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.hidden{display:none}.inline{display:inline}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--black:#0a0a0b;--graphite:#19191b;--soft:#8e8e92;--ivory:#eeeae0;--white:#f8f5ec;--cobalt:#1947d1;--red:#e33b32;--line:rgba(var(--ink-rgb), .2);--ink-rgb:238, 234, 224;--panel-rgb:10, 10, 11;--shadow-rgb:0, 0, 0;--t-aaa:#aaa;--t-bbb:#bbb;--t-777:#777;--t-666:#666;--t-555:#555;--t-303:#303033;--t-d1:#d1d1d1;--t-link:#9db4ff;--t-err:#d98c87;--t-err2:#dca49f;--paper:#050506;--paper-rgb:0, 0, 0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--mono:"IBM Plex Mono", "DM Mono", monospace;--sans:"Instrument Sans", sans-serif}:root[data-theme=light]{--black:#d6d1c3;--graphite:#c9c4b5;--soft:#6a6a6f;--ivory:#17171b;--white:#0c0c0f;--cobalt:#1947d1;--red:#d8342b;--ink-rgb:23, 23, 27;--panel-rgb:226, 222, 210;--shadow-rgb:214, 209, 195;--t-aaa:#4a4a50;--t-bbb:#3c3c42;--t-777:#6a6a70;--t-666:#75757a;--t-555:#a5a39a;--t-303:#c4bfb0;--t-d1:#26262b;--t-link:#1947d1;--t-err:#b3261e;--t-err2:#a3332c;--paper:#d6d1c3;--paper-rgb:214, 209, 195;--panel:#e2ded2d1;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=light][data-tear=on]{--panel:#e2ded2e6}*{box-sizing:border-box}html,body,#root{background:var(--black);width:100%;height:100%;margin:0;overflow:hidden}body{color:var(--ivory);font-family:var(--sans);-webkit-font-smoothing:antialiased}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--white);outline-offset:3px}.portfolio-shell{--stage-left:clamp(32px, 6vw, 95px);--stage-bottom:122px;isolation:isolate;background:var(--black);width:100%;height:100dvh;min-height:620px;position:relative;overflow:hidden}.colour-frame{z-index:100;pointer-events:none;position:absolute;inset:0}.colour-frame>i{transition:background .5s;display:block;position:absolute}.edge-top,.edge-bottom{height:10px;left:0;right:0}.edge-top{background:linear-gradient(90deg, var(--cobalt) 0 68%, var(--red) 68%);top:0}.edge-bottom{background:linear-gradient(90deg, var(--red) 0 32%, var(--cobalt) 32%);bottom:0}.edge-right,.edge-left{width:10px;top:0;bottom:0}.edge-left{background:var(--cobalt);left:0}.edge-right{background:var(--red);right:0}.corner{z-index:2;border-color:var(--white);opacity:.75;border-style:solid;width:25px;height:25px;position:absolute}.corner.tl{border-width:1px 0 0 1px;top:19px;left:19px}.corner.tr{border-width:1px 1px 0 0;top:19px;right:19px}.corner.br{border-width:0 1px 1px 0;bottom:19px;right:19px}.corner.bl{border-width:0 0 1px 1px;bottom:19px;left:19px}.cinematic{z-index:-2;background:var(--black);transition:opacity .5s;position:absolute;inset:0;overflow:hidden}.video-loader{z-index:20;background:rgba(var(--ink-rgb), .16);width:min(560px,100% - 40px);height:2px;position:absolute;bottom:14px;left:50%;overflow:hidden;transform:translate(-50%)}.video-loader i{background:linear-gradient(90deg, var(--cobalt), var(--red));width:42%;height:100%;animation:1.1s ease-in-out infinite video-loading;display:block}@keyframes video-loading{0%{transform:translate(-110%)}to{transform:translate(350%)}}.youtube-background{z-index:2;opacity:0;background:#1a1a1a;transition:opacity .7s;position:absolute;inset:0;overflow:hidden}.has-video .youtube-background{opacity:.82}.has-video .vignette{background:#05050614}.youtube-background iframe{width:var(--video-w,640px);height:calc(var(--video-w,640px) * 9 / 16);pointer-events:none;transform-origin:50%;transform:translate(-50%, -50%) scale(var(--video-scale,3));filter:grayscale()contrast(1.04);border:0;position:absolute;top:50%;left:50%}.youtube-ui-mask{z-index:3;pointer-events:none;opacity:0;transition:opacity .38s;position:absolute;inset:0;overflow:hidden}.youtube-ui-mask.is-visible{opacity:1;transition-duration:70ms}.crt-core,.crt-edge{background-blend-mode:normal, soft-light, normal;background:repeating-linear-gradient(0deg,#0000 0 2px,#00000061 2px 4px),url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E"),#0e0e109e;position:absolute;inset:0}.youtube-ui-mask.is-visible .crt-core,.youtube-ui-mask.is-visible .crt-edge{-webkit-backdrop-filter:blur(8px)contrast(1.35)brightness(.55)saturate(.4);backdrop-filter:blur(8px)contrast(1.35)brightness(.55)saturate(.4)}.crt-core{background-blend-mode:normal, soft-light, normal;background:repeating-linear-gradient(0deg,#0000 0 2px,#00000059 2px 4px),url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.9'/%3E%3C/svg%3E"),#09090a;-webkit-mask-image:radial-gradient(13% 5.5%,#000 66%,#0000 100%);mask-image:radial-gradient(13% 5.5%,#000 66%,#0000 100%)}.youtube-ui-mask.is-visible .crt-core{animation:.14s steps(2,end) infinite crt-flicker,2.4s ease-in-out infinite crt-warp}.crt-core{opacity:0;transition:opacity .2s}.youtube-ui-mask.is-holding .crt-core{opacity:1}.youtube-ui-mask.is-visible .crt-core{-webkit-backdrop-filter:blur(8px)contrast(1.5)brightness(.3);backdrop-filter:blur(8px)contrast(1.5)brightness(.3)}.crt-tear{position:absolute;inset:0}.crt-tear-strip{will-change:transform, opacity;display:block;position:absolute;left:-25%;right:-25%}.crt-tear-light{background:linear-gradient(90deg,#e61c2df5 0%,#f0f0eceb 32%,#f0f0ecf5 58%,#1685e6f5 100%);box-shadow:0 -2px #e61c2d9e,0 2px #1f91eb9e}.crt-tear-dark{background:linear-gradient(90deg,#050506,#d21423d9 28%,#050506 52%,#1469dcd9);box-shadow:0 -2px #d7192866,0 2px #1973e17a}.crt-edge{opacity:.8;-webkit-mask-image:linear-gradient(#000 0%,#0000 16% 84%,#000 100%);mask-image:linear-gradient(#000 0%,#0000 16% 84%,#000 100%)}.youtube-ui-mask:before{content:"";background:linear-gradient(#0000,#1947d11a,#eeeae012,#e33b3217,#0000);height:14%;position:absolute;top:-15%;left:0;right:0}.youtube-ui-mask.is-visible:before{animation:1.4s linear infinite player-mask-scan}.youtube-ui-mask span{color:#eeeae057;font:11px var(--mono);letter-spacing:.08em;text-transform:uppercase;position:absolute;bottom:22px;right:24px}@keyframes crt-flicker{0%,to{filter:brightness(.92)}35%{filter:brightness(1.08)}70%{filter:brightness(.84)}}@keyframes crt-warp{0%,to{transform:scale(1)skew(0deg)}30%{transform:scale(1.015,.985)skew(.6deg)}60%{transform:scale(.99,1.012)skew(-.5deg)}}@keyframes player-mask-scan{to{transform:translateY(857%)}}@media (prefers-reduced-motion:reduce){.youtube-ui-mask.is-visible .crt-core,.youtube-ui-mask.is-visible:before{animation:none}}.video-filter-overlay{z-index:4;pointer-events:none;opacity:var(--filter-strength,.44);transition:opacity .16s,background .22s;position:absolute;inset:0}.video-filter-overlay.filter-veil{background:#050506}.video-filter-overlay.filter-gradient{background:linear-gradient(105deg,#020203 0%,#020203d1 28%,#02020361 52%,#020203b8 78%,#020203 100%)}.video-filter-overlay.filter-vignette{background:radial-gradient(at 50% 48%,#00000029 0%,#00000047 34%,#000000d1 78%,#000 100%)}.video-filter-overlay.filter-deep{background:#000000f5}.vignette{z-index:9;position:absolute;inset:0;box-shadow:inset 0 0 180px 55px #000000b8}.vignette:after{content:"";background:linear-gradient(#0000 0%,#00000073 18%,#000000d9 38%,#000 55% 100%);height:34%;position:absolute;inset:auto 0 0}.scanlines{z-index:10;opacity:.18;background:repeating-linear-gradient(0deg,#0000 0 3px,#000 3px 5px);position:absolute;inset:0}.film-grain{z-index:11;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.95' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");animation:.2s steps(2,end) infinite grain;position:absolute;inset:-100px}.signal-interference{z-index:12;pointer-events:none;position:absolute;inset:0;overflow:hidden}.signal-split{transform-origin:50%;will-change:transform, opacity;width:100%;animation:steps(2,end) both signal-split;display:block;position:absolute;left:0}.signal-split-light{mix-blend-mode:screen;background:linear-gradient(90deg,#e61c2db8 0%,#f0f0ec47 32%,#f0f0ec6b 58%,#1685e6b8 100%);box-shadow:0 -2px #e61c2d9e,0 2px #1f91eb9e,0 0 9px #ffffff2e}.signal-split-dark{mix-blend-mode:multiply;background:linear-gradient(90deg,#000000e0,#d2142359 28%,#000000a6 52%,#1469dc61);box-shadow:0 -2px #d7192866,0 2px #1973e17a}@keyframes signal-split{0%{transform:translateY(-5px)scaleY(.35)translate(-8px)}20%{transform:translateY(3px)scaleY(1.7)translate(7px)}45%{transform:translateY(-2px)scaleY(.65)translate(-4px)}70%{transform:translateY(5px)scaleY(1.25)translate(9px)}to{opacity:0;transform:translateY(0)scaleY(.1)translate(0)}}@keyframes grain{0%{transform:translate(0)}25%{transform:translate(60px,-40px)}50%{transform:translate(-40px,60px)}75%{transform:translate(40px,40px)}to{transform:translate(-60px,-60px)}}.top-bar{z-index:30;border-bottom:1px solid var(--line);background:rgba(var(--panel-rgb), .58);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);grid-template-columns:1fr auto 1fr;align-items:center;height:70px;padding:0 28px;display:grid;position:absolute;top:10px;left:10px;right:10px}.identity{width:fit-content;color:var(--ivory);cursor:pointer;background:0 0;border:0;align-items:center;gap:12px;padding:0;display:flex}.identity img{object-fit:contain;flex:none;width:35px;height:35px;margin-left:-3px;display:block;transform:translateY(-1px)}.identity strong{font-size:14.5px;font-weight:600}.top-bar>p{color:var(--soft);font:12px var(--mono);text-transform:uppercase;margin:0}.top-bar>.top-bar-right{justify-content:flex-end;align-items:center;gap:20px;display:flex}.location-status{color:var(--soft);font:11.5px var(--mono);text-transform:uppercase;gap:24px;display:flex}.available{color:var(--ivory);align-items:center;gap:7px;display:flex}.available i{background:var(--red);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #e33b3226}.playback-overlay{z-index:35;position:absolute;top:98px;right:26px}.playback-overlay:has(.playback-settings){z-index:90}.playback-controls{--playback-bar-h:32px;position:relative}.playback-bar{z-index:1;height:var(--playback-bar-h);border:1px solid rgba(var(--ink-rgb), .14);background:rgba(var(--panel-rgb), .22);opacity:.72;align-items:stretch;transition:opacity .18s,background .18s;display:flex;position:relative}.playback-controls:hover .playback-bar,.playback-controls:focus-within .playback-bar{opacity:1;background:rgba(var(--panel-rgb), .5)}.playback-bar button{border:0;border-right:1px solid rgba(var(--ink-rgb), .12);min-width:34px;color:rgba(var(--ink-rgb), .72);cursor:pointer;background:0 0;justify-content:center;align-items:center;padding:0 7px;display:flex}.playback-controls:has(.playback-settings) .playback-bar{opacity:1;background:0 0;border-color:#0000}.playback-bar button:last-child{border-right:0}.playback-bar button:hover,.playback-bar button.is-active{background:rgba(var(--ink-rgb), .1);color:var(--white)}.playback-bar svg{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.playback-settings{width:300px;padding-top:var(--playback-bar-h);border:1px solid rgba(var(--ink-rgb), .3);background:rgba(var(--panel-rgb), .94);animation:.26s cubic-bezier(.2,.8,.2,1) both settings-unfold;position:absolute;top:0;right:0;box-shadow:0 18px 50px #00000080}.playback-settings.is-closing{pointer-events:none;animation:.2s cubic-bezier(.4,0,.8,.4) both settings-fold}.settings-title{height:var(--playback-bar-h);letter-spacing:.14em;text-transform:uppercase;color:rgba(var(--ink-rgb), .6);align-items:center;font-size:10px;display:flex;position:absolute;top:0;left:14px}.playback-settings-body{border-top:1px solid rgba(var(--ink-rgb), .14);max-height:calc(100dvh - 98px - var(--playback-bar-h) - 12px);overscroll-behavior:contain;gap:16px;padding:14px;display:grid;overflow-y:auto}.video-select{gap:8px;display:grid}.video-select select,.video-select input{border:1px solid var(--line);background:rgba(var(--panel-rgb), .94);width:100%;color:var(--white);font:12px var(--mono);text-transform:uppercase;border-radius:0;padding:9px 10px}.video-select input[aria-invalid=true]{border-color:var(--red)}.settings-label{color:var(--soft);font:11.5px var(--mono);letter-spacing:.08em;text-transform:uppercase}.filter-options{gap:4px;margin-top:8px;display:grid}.filter-options button{border:1px solid var(--line);color:rgba(var(--ink-rgb), .7);cursor:pointer;font:12px var(--mono);text-align:left;text-transform:uppercase;background:0 0;justify-content:space-between;align-items:center;padding:9px 10px;display:flex}.filter-options button:hover{border-color:rgba(var(--ink-rgb), .4)}.filter-options button.is-selected{border-color:var(--ivory);background:rgba(var(--ink-rgb), .08);color:var(--white)}.filter-options button.is-selected:after{content:"";background:var(--red);border-radius:50%;width:5px;height:5px}.quality-options{grid-template-columns:1fr 1fr}.quality-options button{min-width:0;padding:9px 7px;font-size:11px}.opacity-control{grid-template-columns:1fr 34px;align-items:center;gap:10px;display:grid}.opacity-control .settings-label{grid-column:1/-1}.opacity-control input{appearance:none;cursor:ew-resize;background:0 0;border:0;width:100%;height:16px;margin:0}.opacity-control input::-webkit-slider-runnable-track{background:linear-gradient(90deg, rgba(var(--ink-rgb), .15), rgba(var(--ink-rgb), .9));height:2px}.opacity-control input::-moz-range-track{background:linear-gradient(90deg, rgba(var(--ink-rgb), .15), rgba(var(--ink-rgb), .9));height:2px}.opacity-control input::-webkit-slider-thumb{appearance:none;border:1px solid var(--ivory);background:var(--graphite);border-radius:0;width:7px;height:14px;margin-top:-6px}.opacity-control input::-moz-range-thumb{border:1px solid var(--ivory);background:var(--graphite);border-radius:0;width:7px;height:14px}.opacity-control output{color:rgba(var(--ink-rgb), .62);font:11.5px var(--mono);text-align:right}.content-stage{z-index:20;top:90px;right:clamp(150px,12vw,180px);bottom:var(--stage-bottom);left:var(--stage-left);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(var(--ink-rgb), .25) transparent;transition:opacity .18s,transform .18s;position:absolute;overflow:hidden auto}.content-stage.is-leaving{opacity:0;transform:translateY(10px)}.section-view{width:100%;height:100%;animation:.4s both reveal}@keyframes settings-fold{0%{opacity:1;clip-path:inset(-80px)}to{opacity:0;clip-path:inset(0 0 100% 100%)}}@keyframes settings-unfold{0%{opacity:0;clip-path:inset(0 0 100% 100%)}to{opacity:1;clip-path:inset(-80px)}}@keyframes reveal{0%{opacity:0;transform:translateY(10px)}}.section-code{color:var(--soft);font:11.5px var(--mono);letter-spacing:.12em;position:absolute;top:3%}.index-title{position:absolute;top:17%;left:1%}.index-title>p{color:var(--ivory);font:12px var(--mono);letter-spacing:.09em;text-transform:uppercase;margin:0 0 20px}.index-title h1{color:var(--white);letter-spacing:-.075em;text-shadow:0 2px 30px rgba(var(--shadow-rgb), .6);margin:0;font-size:clamp(68px,9vw,138px);font-weight:600;line-height:.77}.index-statement{border-top:1px solid var(--ivory);background:rgba(var(--panel-rgb), .8);width:min(420px,36vw);padding:24px;position:absolute;bottom:12%;right:5%}.index-statement>span{color:var(--soft);font:11.5px var(--mono);text-transform:uppercase}.index-statement p{margin:18px 0 25px;font-size:clamp(15px,1.4vw,19px);line-height:1.55}.index-statement button,.work-description a,.contact-links a{border:0;border-bottom:2px solid var(--red);width:fit-content;color:var(--ivory);cursor:pointer;font:12px var(--mono);text-transform:uppercase;background:0 0;align-items:center;gap:12px;padding:0 0 7px;display:flex}.arrow{fill:none;stroke:currentColor;stroke-width:1.5px;width:18px;height:18px}.arrow.left{transform:scaleX(-1)}.stage-footer{z-index:20;bottom:calc(var(--stage-bottom) - 38px);left:var(--stage-left);transition:opacity .18s;animation:.4s both reveal;position:absolute}.stage-footer.is-leaving{opacity:0}.film-caption{width:fit-content;color:var(--soft);font:11px var(--mono);text-transform:uppercase;gap:22px;display:flex}.section-heading{max-width:800px;padding-top:3vh}.section-heading>span{color:var(--soft);font:11.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px;display:block}.section-heading h2{color:var(--white);letter-spacing:-.06em;text-shadow:0 2px 25px rgba(var(--shadow-rgb), .65);margin:0;font-size:clamp(45px,6.4vw,94px);font-weight:500;line-height:.94}.section-heading h2 em{color:var(--t-aaa);font-style:normal;font-weight:400}.story-columns{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr;gap:72px;width:min(1320px,100%);margin-top:8vh;padding:26px 0;display:grid}.story-lead{color:var(--white);margin:0;font-size:clamp(16px,1.55vw,22px);line-height:1.55}.story-copy p{color:var(--t-bbb);margin:0 0 15px;font-size:15.5px;line-height:1.65}.reference-line{width:fit-content;font:11px var(--mono);text-transform:uppercase;align-items:center;gap:12px;display:flex}.reference-line>span{color:var(--soft);margin-right:14px}.reference-line p{margin:0}.reference-line i{background:var(--red);border-radius:50%;width:3px;height:3px}.work-layout{grid-template-columns:minmax(245px,.68fr) minmax(430px,1.32fr);align-items:start;gap:4vw;margin-top:3vh;display:grid}.project-index{border-top:1px solid var(--ivory)}.project-index button{border:0;border-bottom:1px solid var(--line);width:100%;min-height:65px;color:var(--soft);cursor:pointer;text-align:left;background:0 0;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:10px 8px 10px 0;transition:color .18s,padding .18s,background .18s;display:grid}.project-index button:hover,.project-index button.active{background:rgba(var(--panel-rgb), .64);color:var(--white);padding-left:10px}.project-index button>span{color:var(--red);font:11px var(--mono)}.project-index button>div{flex-direction:column;gap:5px;display:flex}.project-index strong{font-size:14px;font-weight:500}.project-index small,.project-index em{color:var(--soft);font:10px var(--mono);text-transform:uppercase;font-style:normal}.project-index button.active em{color:var(--ivory)}.project-feature{grid-template-columns:1fr;align-items:start;gap:18px;animation:.32s both reveal;display:grid}.work-description{border-top:1px solid var(--line);padding:20px 0}.work-quote{color:var(--white);letter-spacing:-.025em;margin:0 0 18px;font-size:clamp(20px,2.1vw,30px);line-height:1.25}.work-description>p:not(.work-quote){color:var(--t-bbb);margin:0 0 24px;font-size:14.5px;line-height:1.65}.work-image{border:1px solid rgba(var(--ink-rgb), .4);background:rgba(var(--panel-rgb), .7);padding:7px;box-shadow:0 30px 60px #0000004d}.project-poster{border:1px solid rgba(var(--ink-rgb), .4);background:linear-gradient(135deg, transparent 0 49.5%, rgba(var(--ink-rgb), .14) 49.5% 50.5%, transparent 50.5%), rgba(var(--panel-rgb), .72);flex-direction:column;justify-content:space-between;min-height:255px;padding:25px;display:flex;position:relative;overflow:hidden}.project-poster>span{color:var(--red);font:11.5px var(--mono)}.project-poster>strong{color:rgba(var(--ink-rgb), .92);letter-spacing:-.09em;font-size:clamp(64px,8vw,118px);font-weight:600;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.project-poster>div{z-index:1;flex-direction:column;align-items:flex-start;gap:5px;display:flex;position:relative}.project-poster small{background:rgba(var(--panel-rgb), .72);color:var(--soft);font:10px var(--mono);text-transform:uppercase;padding:4px 6px}.project-poster>i{background:var(--cobalt);width:40px;height:2px;position:absolute;bottom:25px;right:24px}.work-image img{filter:grayscale()contrast(1.1);width:auto;max-width:100%;height:auto;max-height:clamp(200px,46vh,640px);margin:0 auto;display:block}.work-image>div{color:var(--soft);font:11px var(--mono);text-transform:uppercase;justify-content:center;gap:18px;padding:10px 4px 3px;display:flex}.project-facts{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-top:4vh;display:grid}.project-facts div{border-right:1px solid var(--line);grid-template-columns:28px 1fr;padding:16px 20px 0 0;display:grid}.project-facts div:last-child{border:0;padding-left:20px}.project-facts div:nth-child(2){padding-left:20px}.project-facts span{color:var(--red);font:11.5px var(--mono)}.project-facts strong{font-size:14.5px}.project-facts p{color:var(--soft);grid-column:2;margin:6px 0 0;font-size:13px}.skills-layout{grid-template-columns:170px 1fr;gap:35px;width:min(970px,78vw);margin-top:5vh;display:grid}.experience-marker{border-top:1px solid var(--ivory);border-bottom:1px solid var(--line);background:rgba(var(--panel-rgb), .58);flex-direction:column;justify-content:space-between;min-height:255px;padding:20px;display:flex}.experience-marker strong{color:var(--white);letter-spacing:-.08em;font-size:clamp(70px,8vw,115px);font-weight:500;line-height:.8}.experience-marker span{max-width:105px;color:var(--soft);font:11.5px/1.55 var(--mono);text-transform:uppercase}.skill-groups{border-top:1px solid var(--ivory);grid-template-columns:1fr;display:grid}.skill-groups article{border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:12px;min-height:0;padding:16px;display:flex}.skill-groups article>div:first-child{grid-template-columns:28px 1fr;align-items:baseline;width:100%;display:grid}.skill-groups article>div:first-child span{color:var(--red);font:11px var(--mono)}.skill-groups h3{margin:0;font-size:16px;font-weight:500}.skill-tags{flex-wrap:wrap;gap:6px;width:100%;display:flex}.skill-tags span{border:1px solid rgba(var(--ink-rgb), .22);background:rgba(var(--panel-rgb), .48);color:var(--t-bbb);font:13px var(--mono);padding:8px 11px}.contact-copy{width:fit-content;min-width:0;max-width:100%;margin-top:5vh}.contact-copy>p{max-width:430px;color:var(--t-bbb);margin:0 0 28px;font-size:14px;line-height:1.7}.contact-links{gap:30px;display:flex}.contact-links a:first-child{border-color:var(--cobalt)}.conversation-dock{z-index:80;border:1px solid rgba(var(--ink-rgb), .42);background:rgba(var(--panel-rgb), .94);width:min(620px,100% - 40px);transition:width .28s,height .28s,background .28s;position:absolute;bottom:20px;left:50%;right:auto;overflow:hidden;transform:translate(-50%);box-shadow:0 18px 70px #0000007a}.conversation-dock.is-open{grid-template-rows:62px minmax(0,1fr) auto auto;height:min(630px,100dvh - 118px);display:grid}.conversation-dock.is-minimised{cursor:pointer;width:min(560px,100% - 40px);height:58px}.conversation-head{border-bottom:1px solid var(--line);align-items:center;gap:16px;min-height:58px;padding:0 12px 0 17px;display:flex}.is-minimised .conversation-head{border-bottom:0}.conversation-identity{min-width:fit-content;color:var(--ivory);text-align:left;background:0 0;border:0;align-items:center;gap:11px;padding:0;display:flex}.is-minimised .conversation-identity{cursor:pointer}.conversation-pulse{border:1px solid rgba(var(--ink-rgb), .45);border-radius:50%;place-items:center;width:27px;height:27px;display:grid;position:relative}.conversation-pulse:before,.conversation-pulse:after{content:"";border:1px solid #1947d180;border-radius:50%;animation:2.5s ease-out infinite archive-pulse;position:absolute}.conversation-pulse:before{inset:4px}.conversation-pulse:after{animation-delay:.6s;inset:8px}.conversation-pulse i{background:var(--red);border-radius:50%;width:5px;height:5px}@keyframes archive-pulse{50%{border-color:rgba(var(--ink-rgb), .6)}}.conversation-identity>div{flex-direction:column;gap:4px;display:flex}.conversation-identity strong{font-size:13.5px;font-weight:500}.conversation-identity small{color:var(--soft);font:11px var(--mono);text-transform:uppercase}.conversation-head>p{min-width:0;color:var(--t-aaa);font:12px var(--mono);text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;overflow:hidden}.is-minimised .conversation-head>p{pointer-events:none}.dock-toggle{border:1px solid var(--line);width:36px;height:36px;color:var(--ivory);cursor:pointer;z-index:3;background:0 0;flex:none;place-items:center;margin-left:auto;display:grid;position:relative}.dock-toggle>span{background:currentColor;width:13px;height:1px}.dock-toggle .arrow{display:block;transform:rotate(-90deg)}.conversation-log{scrollbar-width:thin;scrollbar-color:var(--t-555) transparent;min-height:0;padding:22px 24px;overflow-y:auto}.conversation-date{color:var(--t-777);font:10px var(--mono);text-transform:uppercase;align-items:center;gap:12px;margin:0 0 24px;display:flex}.conversation-date:before,.conversation-date:after{content:"";background:var(--line);flex:1;height:1px}.conversation-message{width:min(84%,450px);margin:0 0 20px}.conversation-message.you{margin-left:auto}.conversation-message>span{color:var(--soft);font:11px var(--mono);text-transform:uppercase;margin-bottom:7px;display:block}.conversation-message.you>span{color:var(--t-link);text-align:right}.conversation-message p{border:1px solid var(--line);background:rgba(var(--ink-rgb), .035);color:var(--t-d1);font:13px/1.65 var(--mono);margin:0;padding:13px 15px}.conversation-message.you p{font:14px/1.6 var(--sans);background:#1947d11a;border-color:#1947d19e}.thinking-dots{gap:6px;display:flex}.thinking-dots i{background:var(--soft);border-radius:50%;width:5px;height:5px;animation:.65s ease-in-out infinite alternate thinking}.thinking-dots i:nth-child(2){animation-delay:.13s}.thinking-dots i:nth-child(3){animation-delay:.26s}@keyframes thinking{to{opacity:.3;transform:translateY(-2px)}}.conversation-prompts{scrollbar-width:none;gap:7px;padding:0 20px 13px;display:flex;overflow-x:auto}.conversation-prompts button{border:1px solid var(--line);min-width:max-content;color:var(--t-aaa);cursor:pointer;font:11px var(--mono);background:0 0;padding:8px 10px}.conversation-prompts button:hover{border-color:var(--cobalt);color:var(--ivory)}.conversation-form{border-top:1px solid var(--line);padding:14px 20px 17px}.conversation-form label{color:var(--soft);font:11px var(--mono);text-transform:uppercase;margin-bottom:8px;display:block}.conversation-form>div{grid-template-columns:minmax(0,1fr) 54px;gap:8px;width:100%;display:grid}.conversation-form input{border:1px solid rgba(var(--ink-rgb), .34);background:rgba(var(--ink-rgb), .035);width:100%;min-width:0;height:48px;color:var(--ivory);font:14px var(--sans);border-radius:0;padding:0 14px}.conversation-form button{background:var(--cobalt);width:54px;min-width:54px;height:48px;color:var(--white);cursor:pointer;border:0;place-items:center;display:grid}.conversation-form button:disabled{background:var(--t-303);color:var(--t-777);cursor:not-allowed}.conversation-form>small{color:var(--t-666);font:10px var(--mono);margin-top:9px;display:block}.section-nav{z-index:30;flex-direction:column;justify-content:center;width:105px;display:flex;position:absolute;top:146px;bottom:80px;right:26px}.section-nav button{border:0;border-bottom:1px solid var(--line);min-height:53px;color:var(--soft);cursor:pointer;text-align:left;background:0 0;grid-template-columns:30px 1fr;align-items:center;padding:0;transition:color .18s;display:grid;position:relative}.section-nav button:first-child{border-top:1px solid var(--line)}.section-nav button:hover,.section-nav button.active{color:var(--white)}.section-nav span{font:400 11px var(--mono);letter-spacing:.02em}.section-nav strong{font:400 11px/1.3 var(--mono);text-transform:uppercase}.section-nav button.active strong:after{content:"";background:var(--red);width:18px;height:2px;display:block;position:absolute;bottom:9px;left:30px}.section-nav button:nth-child(2n).active strong:after{background:var(--cobalt)}.step-controls{z-index:31;align-items:center;gap:10px;height:45px;display:flex;position:absolute;bottom:23px;right:30px}.step-controls button{border:1px solid var(--line);background:rgba(var(--panel-rgb), .6);width:38px;height:38px;color:var(--ivory);cursor:pointer;place-items:center;padding:0;display:grid}.step-controls button:disabled{opacity:.25;cursor:default}.step-controls button .arrow{display:block}.step-controls span{color:var(--soft);font:11px var(--mono)}.setup-page{background:var(--black);width:100%;height:100dvh;color:var(--ivory);padding:45px max(28px,50vw - 590px);overflow-y:auto}.setup-page>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;padding-bottom:30px;display:flex}.setup-page>header span,.setup-page form>span,.source-library>span{color:var(--soft);font:11.5px var(--mono);letter-spacing:.1em;text-transform:uppercase}.setup-page h1{letter-spacing:-.06em;margin:8px 0 0;font-size:clamp(42px,6vw,76px);font-weight:500}.setup-page h2{letter-spacing:-.03em;margin:10px 0 20px;font-size:27px;font-weight:500}.setup-page>header a,.setup-login a{border-bottom:1px solid var(--red);font:11.5px var(--mono);text-transform:uppercase;padding-bottom:5px}.setup-status{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);margin:28px 0;display:grid}.setup-status>div{border-right:1px solid var(--line);flex-direction:column;justify-content:space-between;min-height:85px;padding:17px;display:flex}.setup-status>div:last-child{border-right:0}.setup-status span,.setup-page label{color:var(--soft);font:11px var(--mono);text-transform:uppercase}.setup-status strong{font-size:17px;font-weight:500}.setup-grid{grid-template-columns:1fr 1fr;gap:50px;display:grid}.source-form,.source-library{padding-top:26px}.source-form>p,.setup-login p{color:var(--t-aaa);font-size:14.5px;line-height:1.65}.setup-page label{margin:18px 0 8px;display:block}.setup-page input,.setup-page textarea{border:1px solid rgba(var(--ink-rgb), .28);background:rgba(var(--ink-rgb), .035);width:100%;color:var(--ivory);font:13px/1.55 var(--mono);resize:vertical;border-radius:0;padding:12px}.setup-page input{height:44px}.setup-page button{background:var(--cobalt);min-height:42px;color:var(--white);cursor:pointer;font:11px var(--mono);text-transform:uppercase;border:0;border-radius:0;padding:0 16px}.setup-page button:disabled{opacity:.4;cursor:not-allowed}.source-form>button{margin-top:16px}.source-library>div:not(.retrieval-results){border-top:1px solid var(--line)}.source-library article{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;min-height:64px;padding:12px 0;display:flex}.source-library article>div{flex-direction:column;gap:5px;display:flex}.source-library article strong{font-size:14.5px;font-weight:500}.source-library article small{color:var(--soft);font:11px var(--mono)}.source-library article button{min-height:30px;color:var(--t-err);background:0 0;border:1px solid #e33b3280;padding:0 10px}.retrieval-test{margin-top:28px}.retrieval-test>div{grid-template-columns:1fr auto;gap:8px;display:grid}.retrieval-results{border-left:2px solid var(--cobalt);background:rgba(var(--ink-rgb), .035);max-height:190px;margin-top:14px;padding:14px;overflow-y:auto}.retrieval-results p{color:var(--t-aaa);font:12px/1.55 var(--mono);margin:0 0 10px}.setup-message{color:var(--t-err2);font:12px var(--mono);margin-top:20px}.setup-login{place-items:center;display:grid}.setup-login>section{border-top:1px solid var(--ivory);border-bottom:1px solid var(--line);background:rgba(var(--ink-rgb), .025);width:min(500px,100%);padding:34px}.setup-login h1{font-size:clamp(38px,5vw,58px)}.setup-login button{width:100%;margin:12px 0 25px}.project-picker{display:none}@media (width<=1200px) and (width>=681px){.work-layout{grid-template-columns:minmax(220px,.75fr) minmax(0,1.25fr);gap:clamp(24px,3vw,38px)}.project-feature{grid-template-columns:1fr;align-items:start;gap:12px}.work-image img{max-height:clamp(150px,32vh,300px)}.project-poster{min-height:190px}.work-description{padding:14px 0}.work-quote{margin-bottom:10px;font-size:clamp(18px,2.4vw,25px)}.work-description>p:not(.work-quote){margin-bottom:16px;font-size:13px;line-height:1.55}}@media (width<=900px){.portfolio-shell{--stage-left:42px}.content-stage{right:150px}.story-columns{width:82%}.work-layout{grid-template-columns:.8fr 1.2fr;gap:35px}.skills-layout{width:85%}.conversation-dock.is-open{height:min(580px,100dvh - 105px)}}@media (width<=680px),(height<=520px) and (width<=950px) and (pointer:coarse){.portfolio-shell{min-height:0}.edge-top,.edge-bottom{height:7px}.edge-left,.edge-right{width:7px}.top-bar{grid-template-columns:1fr auto;height:58px;padding:0 16px;top:7px;left:7px;right:7px}.identity strong{font-size:13px}.identity img{width:32px;height:32px;margin-left:-2px}.top-bar>p,.location-status{display:none}.playback-overlay{top:78px;right:18px}.playback-controls{--playback-bar-h:36px}.playback-bar button{min-width:38px}.playback-settings{width:calc(100vw - 36px)}.playback-settings-body{max-height:calc(100dvh - 90px - var(--playback-bar-h))}.content-stage{-webkit-overflow-scrolling:touch;scroll-padding-bottom:24px;inset:78px 26px 126px}.index-view{flex-direction:column;gap:20px;display:flex}.index-view .section-code,.index-view .index-title,.index-view .index-statement{flex:none;position:static}.index-title>p,.index-statement>span{display:none}.index-title h1{font-size:clamp(62px,20vw,90px)}.index-statement{width:88%;margin:auto 0 0 auto;padding:17px}.film-caption,.section-code,.section-heading>span{display:none}.section-heading{padding-top:8px}.section-heading h2{font-size:clamp(40px,12vw,60px)}.story-columns{grid-template-columns:1fr;gap:15px;width:100%;margin-top:28px;padding:18px 0}.story-lead{font-size:15px}.story-copy p{font-size:14.5px}.reference-line{display:none}.work-layout{grid-template-columns:1fr;gap:15px;margin-top:24px}.project-index{display:none}.project-picker{z-index:5;display:block;position:relative}.project-picker button{width:100%;color:var(--soft);cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:24px 1fr auto;align-items:center;gap:10px;display:grid}.project-picker button>span{color:var(--red);font:11.5px var(--mono)}.project-picker button>div{flex-direction:column;gap:5px;display:flex}.project-picker strong{font-size:14px;font-weight:500}.project-picker small{color:var(--soft);font:11.5px var(--mono);text-transform:uppercase}.project-picker .project-picker-trigger{border-top:1px solid var(--ivory);border-bottom:1px solid var(--line);background:var(--panel);min-height:58px;-webkit-backdrop-filter:var(--panel-blur);backdrop-filter:var(--panel-blur);color:var(--white);padding:10px 12px 10px 0}.project-picker .project-picker-trigger svg{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px;transition:transform .18s}.project-picker .project-picker-trigger[aria-expanded=true] svg{transform:rotate(180deg)}.project-picker-menu{border:1px solid rgba(var(--ink-rgb), .3);background:rgba(var(--panel-rgb), .96);gap:4px;padding:6px;animation:.2s both reveal;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0;box-shadow:0 18px 50px #00000080}.project-picker-menu button{border:1px solid var(--line);min-height:54px;padding:8px 10px}.project-picker-menu button:hover{border-color:rgba(var(--ink-rgb), .4)}.project-picker-menu button.is-selected{border-color:var(--ivory);background:rgba(var(--ink-rgb), .08);color:var(--white)}.project-picker-menu button.is-selected:after{content:"";background:var(--red);border-radius:50%;width:6px;height:6px}.project-feature{grid-template-columns:1fr;gap:13px}.work-description{padding:14px 0}.work-description>p:not(.work-quote){margin-bottom:18px;font-size:13.5px;line-height:1.6}.work-quote{font-size:18px}.work-image img{max-height:220px}.project-poster{min-height:155px;padding:15px}.project-poster>strong{font-size:58px}.project-facts{display:none}.skills-layout{grid-template-columns:1fr;gap:12px;width:100%;margin-top:24px}.experience-marker{flex-direction:row;align-items:flex-end;gap:20px;min-height:0;padding:12px 14px}.experience-marker strong{font-size:56px}.experience-marker span{max-width:130px;font-size:11px}.skill-groups article{gap:10px;min-height:0;padding:10px}.skill-groups article>div:first-child{grid-template-columns:20px 1fr}.skill-groups h3{font-size:13.5px}.skill-tags{gap:4px}.skill-tags span{padding:6px 8px;font-size:11.5px}.contact-copy{width:100%;margin-top:20px}.contact-copy>p{margin:0 0 18px;font-size:13px}.contact-links{flex-wrap:wrap;gap:18px}.section-view{height:auto;min-height:100%}.index-view{min-height:100%}.section-nav{border-top:1px solid var(--line);background:rgba(var(--panel-rgb), .88);flex-direction:row;width:auto;height:53px;inset:auto 7px 7px}.section-nav button{border:0;border-right:1px solid var(--line);flex:1;grid-template-columns:1fr;place-items:center;min-height:0;display:grid}.section-nav button:first-child{border-top:0}.section-nav strong{display:none}.section-nav span{font-size:11.5px}.section-nav button.active{background:var(--cobalt);color:var(--white)}.section-nav button:nth-child(2n).active{background:var(--red)}.step-controls{display:none}.conversation-dock{width:calc(100% - 22px);bottom:66px}.conversation-dock.is-open{width:calc(100% - 22px);height:calc(100dvh - 145px)}.conversation-dock.is-minimised{width:calc(100% - 22px);height:52px}.conversation-head{min-height:52px;padding-left:12px}.conversation-identity small{display:none}.conversation-head>p{font-size:11.5px}.conversation-log{padding:16px 14px}.conversation-message{width:91%}.conversation-message p{font-size:12px}.conversation-form{padding:12px 14px 14px}.setup-page{padding:28px 20px}.setup-page>header{align-items:flex-start}.setup-status{grid-template-columns:1fr 1fr}.setup-status>div:nth-child(2){border-right:0}.setup-status>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.setup-grid{grid-template-columns:1fr;gap:28px}}@media (width<=420px){.top-bar{padding:0 16px}.identity{gap:8px}.identity strong{font-size:12px}.playback-overlay{right:12px}.playback-settings{width:calc(100vw - 24px)}.content-stage{left:22px;right:22px}.index-view{gap:16px}.index-title h1{font-size:clamp(56px,19vw,76px)}.index-statement{width:100%;margin-left:0;padding:15px}.section-heading>span{margin-bottom:12px}.section-heading h2{font-size:clamp(34px,11.5vw,48px)}.story-columns{margin-top:22px}.work-layout,.skills-layout{margin-top:20px}.contact-links{gap:14px}.setup-page>header{flex-direction:column;gap:16px}}@media (height<=700px) and (width>=681px){.content-stage{top:82px}.section-heading{padding-top:1vh}.section-heading h2{font-size:clamp(40px,5.5vw,70px)}.story-columns{margin-top:4vh;padding:18px 0}.work-layout{margin-top:2vh}.work-image img{max-height:175px}.project-facts{margin-top:2vh}.practice-list{margin-top:3vh}}@media (prefers-reduced-motion:reduce){.signal-interference{display:none}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--panel:rgba(var(--panel-rgb), .68);--panel-blur:none}:root[data-tear=on]{--panel:rgba(var(--panel-rgb), .82)}.story-columns,.work-description,.project-index,.skill-groups,.experience-marker,.contact-copy,.reference-line,.film-caption,.step-controls,.section-nav button{background:var(--panel);-webkit-backdrop-filter:var(--panel-blur);backdrop-filter:var(--panel-blur)}.story-columns,.work-description,.project-index,.skill-groups,.experience-marker,.contact-copy,.reference-line,.film-caption,.step-controls{transition:background-color .2s}.section-nav button{transition:color .18s,background-color .2s}.story-columns{gap:48px;padding:26px 30px}.work-description{padding:20px 24px}.contact-copy{padding:32px 36px}.reference-line,.film-caption{padding:8px 14px}@media (width>=681px){.section-nav{width:136px}.section-nav button{padding:0 10px}.section-nav button.active strong:after{left:40px}.step-controls{padding:0 10px}}@media (width<=680px),(height<=520px) and (width<=950px) and (pointer:coarse){.story-columns{gap:15px;padding:18px 16px}.work-description{padding:14px 16px}.contact-copy{padding:22px 20px}.reference-line,.film-caption{padding:6px 10px}}#sf-intro{z-index:2147483000;cursor:pointer;background:#0a0a0b;position:fixed;inset:0;overflow:hidden}#sf-intro canvas{width:100%;height:100%;display:block}#sf-intro:after{content:"";pointer-events:none;mix-blend-mode:multiply;background:repeating-linear-gradient(#00000047 0 1px,#0000 1px 3px),radial-gradient(#0000 55%,#0000008c 100%);position:absolute;inset:0}html.sf-intro-active,html.sf-intro-active body{overflow:hidden}html.sf-intro-skip #sf-intro{display:none}@media (prefers-reduced-motion:reduce){#sf-intro{display:none}}:root[data-theme=light] .youtube-background{background:#c4bfb1}:root[data-theme=light] .has-video .youtube-background{opacity:.9}:root[data-theme=light] .youtube-background iframe{filter:grayscale()contrast(.9)brightness(1.7)}:root[data-theme=light] .has-video .vignette{background:rgba(var(--paper-rgb), .1)}:root[data-theme=light] .video-filter-overlay.filter-veil{background:var(--paper)}:root[data-theme=light] .video-filter-overlay.filter-gradient{background:linear-gradient(105deg, var(--paper) 0%, rgba(var(--paper-rgb), .82) 28%, rgba(var(--paper-rgb), .38) 52%, rgba(var(--paper-rgb), .72) 78%, var(--paper) 100%)}:root[data-theme=light] .video-filter-overlay.filter-vignette{background:radial-gradient(ellipse at 50% 48%, rgba(var(--paper-rgb), .16) 0%, rgba(var(--paper-rgb), .28) 34%, rgba(var(--paper-rgb), .82) 78%, var(--paper) 100%)}:root[data-theme=light] .video-filter-overlay.filter-deep{background:rgba(var(--paper-rgb), .96)}:root[data-theme=light] .vignette{box-shadow:inset 0 0 180px 55px rgba(var(--paper-rgb), .72)}:root[data-theme=light] .vignette:after{background:linear-gradient(to top, var(--paper) 0%, var(--paper) 45%, rgba(var(--paper-rgb), .85) 62%, rgba(var(--paper-rgb), .45) 82%, transparent 100%)}:root[data-theme=light] .scanlines{opacity:.06}:root[data-theme=light] .film-grain{opacity:.1;mix-blend-mode:multiply}.theme-toggle{border:1px solid rgba(var(--ink-rgb), .3);width:34px;height:34px;color:var(--ivory);cursor:pointer;background:0 0;place-items:center;margin-left:18px;padding:0;transition:background-color .18s,border-color .18s;display:inline-grid}.theme-toggle:hover{border-color:rgba(var(--ink-rgb), .6);background:rgba(var(--ink-rgb), .08)}.theme-toggle svg{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}@media (height<=520px) and (width<=950px) and (pointer:coarse){.conversation-dock{bottom:11px;left:auto;right:11px;transform:none}.conversation-dock.is-minimised{width:216px;height:44px}.conversation-dock.is-minimised .conversation-head{gap:12px;min-height:44px}.conversation-dock.is-minimised .conversation-head>p,.conversation-dock.is-minimised .conversation-identity small{display:none}.conversation-dock.is-minimised .dock-toggle{width:30px;height:30px}.conversation-dock.is-open{width:calc(100% - 22px);height:calc(100dvh - 22px)}.section-nav{width:auto;height:44px;inset:auto 230px 11px 11px}.content-stage{inset:84px 30px 66px}.index-view{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:28px}.index-view .index-statement{align-self:flex-end;width:52%;margin:0;padding:14px 16px}.index-statement p{margin:0 0 14px;font-size:14px}.index-title h1{font-size:clamp(52px,18vh,74px);line-height:.85}.section-heading{padding-top:0}.section-heading h2{font-size:clamp(34px,12vh,52px)}.story-columns{margin-top:16px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
