._eyebrow_85snn_1{font:10px/1.8 var(--mono);letter-spacing:.1em;color:var(--accent);display:block}._mediaPlayer_85snn_2{width:100%;min-width:0}._gallery_85snn_3{min-width:0}._galleryNavigation_85snn_4{justify-content:center;align-items:center;gap:20px;margin-top:20px;font-size:14px;display:flex}._galleryNavigation_85snn_4 button{border:1px solid var(--border);border-radius:50%;place-items:center;width:44px;height:44px;display:grid}._galleryThumbnails_85snn_20{gap:10px;padding:12px 3px;display:flex;overflow-x:auto}._galleryThumbnails_85snn_20 button{border:2px solid #0000;border-radius:4px;flex:0 0 84px;height:64px;padding:3px;position:relative}._galleryThumbnails_85snn_20 button[aria-pressed=true]{border-color:var(--accent)}._galleryThumbnails_85snn_20 img{object-fit:cover;width:100%;height:100%}._galleryThumbnails_85snn_20 svg{color:#fff;filter:drop-shadow(0 1px 3px #000);margin:auto;position:absolute;inset:0}._galleryCaption_85snn_49{color:var(--muted);margin-top:10px;font-size:14px;line-height:1.6}._dialog_85snn_55{border:1px solid var(--border);background:var(--bg);color:var(--ink);border-radius:10px;width:min(1040px,100% - 40px);max-height:90svh;padding:0;box-shadow:0 30px 150px #0008}._dialog_85snn_55::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#040b13c9}._dialogInner_85snn_69{padding:28px 36px 40px}._dialogHeading_85snn_72{justify-content:space-between;align-items:center;display:flex}._closeButton_85snn_77{border:1px solid var(--border);border-radius:50%;place-items:center;width:42px;height:42px;display:grid}._dialog_85snn_55 h2{font-family:var(--display);letter-spacing:-.05em;font-size:42px;font-weight:500}._dialogSummary_85snn_91{color:var(--muted);margin:10px 0 25px;font-size:14px;line-height:1.8}._playerStage_85snn_97{background:#10171b;width:100%;max-height:58svh;position:relative}._playerStage_85snn_97>img,._playerStage_85snn_97>video,._playerStage_85snn_97>iframe{object-fit:contain;border:0;width:100%;height:100%;position:absolute;inset:0}._portraitStage_85snn_113{max-width:340px;margin:auto}._playLarge_85snn_117{color:#fff;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#10171bc9;border:1px solid #ffffff70;border-radius:4px;justify-content:center;align-items:center;gap:13px;width:max-content;max-width:90%;padding:17px 24px;font-size:13px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}._playLarge_85snn_117:disabled{opacity:.6}._mediaToolbar_85snn_139,._mediaToolbar_85snn_139>div,._mediaToolbar_85snn_139>span,._mediaToolbar_85snn_139 a,._mediaToolbar_85snn_139 button{align-items:center;gap:10px;display:flex}._mediaToolbar_85snn_139{color:var(--muted);flex-wrap:wrap;justify-content:space-between;margin-top:16px;font-size:11px}._mediaToolbar_85snn_139>div{gap:18px}._mediaToolbar_85snn_139 a,._mediaToolbar_85snn_139 button{color:var(--ink);padding:5px 0}._attribution_85snn_163,._embedNote_85snn_164{color:var(--muted);margin-top:12px;font-size:11px;line-height:1.7}._projectDetails_85snn_170{border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:28px;margin-top:35px;padding-top:28px;display:grid}._projectDetails_85snn_170 h3{margin-bottom:12px;font-size:14px;font-weight:600}._projectDetails_85snn_170 p{color:var(--muted);font-size:13px;line-height:1.85}._tags_85snn_188{flex-wrap:wrap;gap:7px;display:flex}._tags_85snn_188 span{border:1px solid var(--border);padding:7px 10px;font-size:11px}._cardCaption_85snn_198 p{font-size:12px}._cardSummary_85snn_201{font-size:14px}._dialogSummary_85snn_91,._projectDetails_85snn_170 p{font-size:16px}._mediaToolbar_85snn_139,._attribution_85snn_163,._embedNote_85snn_164{font-size:12px}._mediaToolbar_85snn_139 button,._mediaToolbar_85snn_139 a,._playLarge_85snn_117{font-size:14px}@media (width<=760px){._sectionHeading_85snn_219{flex-direction:column;align-items:flex-start;gap:20px;margin-bottom:35px}._sectionHeading_85snn_219>p{max-width:100%}._cardCaption_85snn_198{gap:12px;padding-top:18px}._cardCaption_85snn_198 h3{font-size:24px}._dialog_85snn_55{width:calc(100% - 24px);max-height:92svh}._dialogInner_85snn_69{padding:22px 18px 30px}._dialog_85snn_55 h2{font-size:34px}._dialogHeading_85snn_72{gap:15px}._closeButton_85snn_77{flex-shrink:0}._projectDetails_85snn_170{grid-template-columns:1fr;gap:22px}._mediaToolbar_85snn_139{gap:12px}._playLarge_85snn_117{padding:13px 15px}._playerStage_85snn_97{max-height:50svh}._videoPill_85snn_264{top:12px;left:12px}}._mount_vevcc_1{pointer-events:none;position:absolute;inset:0}._scene_vevcc_7{pointer-events:none;isolation:isolate;contain:layout paint;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}._scene_vevcc_7 canvas{display:block}._fallback_vevcc_22{opacity:.4;position:absolute;inset:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 4%,#000 28% 78%,#0000);mask-image:linear-gradient(90deg,#0000 4%,#000 28% 78%,#0000)}._fallback_vevcc_22 span{border-top:1px solid var(--accent,#98b9c6);opacity:.4;border-radius:50%;width:120%;height:45%;position:absolute;top:35%;left:-10%}._scene_vevcc_7[data-scene="2"] ._fallback_vevcc_22 span{border-radius:50% 45%;height:60%}._scene_vevcc_7[data-scene="3"] ._fallback_vevcc_22 span{border-radius:15% 80%}@media (prefers-reduced-motion:reduce){._scene_vevcc_7{transition:none}}._portrait_xb4k6_1{object-fit:contain;opacity:.8;filter:saturate(.65)brightness(.9);width:100%;height:100%;-webkit-mask-image:linear-gradient(#000 0% 55%,#000000a6 70%,#0000 84%);mask-image:linear-gradient(#000 0% 55%,#000000a6 70%,#0000 84%)}._background_155bq_1{--dot-spacing:14px;--dot-radius:.75px;--dot-base:color-mix(in srgb, var(--ink) 10%, transparent);--dot-wave:color-mix(in srgb, var(--accent) 17%, transparent);--dot-cursor:color-mix(in srgb, var(--accent) 32%, transparent);--glow-accent:color-mix(in srgb, var(--accent) 10%, transparent);--glow-secondary:color-mix(in srgb, var(--secondary) 9%, transparent);pointer-events:none;contain:layout paint;position:absolute;inset:0;overflow:hidden}.world[data-tone=light] ._background_155bq_1{--glow-accent:color-mix(in srgb, color-mix(in srgb, var(--surface) 92%, var(--accent)) 65%, transparent);--glow-secondary:color-mix(in srgb, color-mix(in srgb, var(--surface) 92%, var(--secondary)) 55%, transparent)}._gradient_155bq_30,._dots_155bq_31,._ambient_155bq_32{position:absolute;inset:0}._gradient_155bq_30{background:radial-gradient(ellipse at 15% 22%, var(--glow-accent), transparent 62%), radial-gradient(ellipse at 76% 72%, var(--glow-secondary), transparent 65%);-webkit-mask-image:linear-gradient(#000 65%,#0000);mask-image:linear-gradient(#000 65%,#0000)}._dots_155bq_31{background:var(--dot-base);-webkit-mask-image:radial-gradient(circle, #000 var(--dot-radius), transparent var(--dot-radius));mask-image:radial-gradient(circle, #000 var(--dot-radius), transparent var(--dot-radius));-webkit-mask-size:var(--dot-spacing) var(--dot-spacing);mask-size:var(--dot-spacing) var(--dot-spacing);-webkit-mask-repeat:repeat;mask-repeat:repeat}._ambient_155bq_32{opacity:1;transition:opacity 1.2s}._wave_155bq_69{background:linear-gradient(125deg, transparent 35%, var(--dot-wave) 50%, transparent 65%);animation:10s linear -3s infinite paused _light-wave_155bq_1;position:absolute;inset:-50%}._cursor_155bq_83{background:radial-gradient(circle, var(--dot-cursor), transparent 70%);width:360px;height:360px;transform:translate3d(var(--pointer-x,-360px), var(--pointer-y,-360px), 0);opacity:0;transition:opacity 1.2s;position:absolute;top:-180px;left:-180px}._background_155bq_1[data-motion=animated] ._wave_155bq_69{animation-play-state:running}._background_155bq_1[data-interacting=true] ._ambient_155bq_32{opacity:.25}._background_155bq_1[data-interacting=true] ._cursor_155bq_83{opacity:1;transition-duration:.25s}._background_155bq_1[data-motion=static] ._ambient_155bq_32,._background_155bq_1[data-motion=static] ._cursor_155bq_83{display:none}@keyframes _light-wave_155bq_1{0%{opacity:0;transform:translate(-40%,-25%)}20%,80%{opacity:1}to{opacity:0;transform:translate(40%,25%)}}@media (prefers-reduced-motion:reduce){._wave_155bq_69{animation:none}._ambient_155bq_32,._cursor_155bq_83{display:none}}@supports not ((-webkit-mask-image:radial-gradient(#000, transparent)) or (mask-image:radial-gradient(#000, transparent))){._dots_155bq_31{background:radial-gradient(circle, var(--dot-base) var(--dot-radius), transparent var(--dot-radius));background-size:var(--dot-spacing) var(--dot-spacing)}._ambient_155bq_32,._cursor_155bq_83{display:none}}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-mono-latin-400-normal-4GdczIuU.woff2)format("woff2"),url(/assets/dm-mono-latin-400-normal--0xN8mdc.woff)format("woff")}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/caveat-latin-500-normal-B9SDL8cy.woff2)format("woff2"),url(/assets/caveat-latin-500-normal-Do9veZfZ.woff)format("woff")}:root{color:#dce9e7;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--mono:"DM Mono", monospace;--hand:"Caveat", cursive;background:#173d43;font-family:Manrope Variable,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{min-width:320px;margin:0}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:0 0;border:0}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid var(--accent);outline-offset:5px}h1:focus{outline:none}::selection{background:var(--accent);color:var(--bg)}[inert]{pointer-events:none}.design-scope{--border:color-mix(in srgb, var(--ink) 20%, transparent);--display:"Manrope Variable", sans-serif;--round:8px;--line:1px;--space:7vw;--title-size:clamp(42px, 5.4vw, 96px);--body-font:"Manrope Variable", sans-serif;color:var(--ink);font-family:var(--body-font)}.portfolio{background:var(--bg);min-height:100svh;color:var(--ink);font-family:var(--body-font);overflow:clip}.design-scope[data-font=hand]{--display:var(--hand)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{background:var(--ink);color:var(--bg);z-index:200;padding:14px;position:fixed;top:-100px;left:12px}.skip-link:focus{top:12px}.header{z-index:10;justify-content:space-between;align-items:center;gap:25px;width:100%;padding:34px 5.5%;display:flex;position:absolute;top:0;left:0}.brand{flex:none;align-items:center;display:flex}.brand-mark{width:100px;height:96px;color:var(--ink);flex:none;display:block}.logo-symbol{width:100%;height:100%;display:block}.logo-symbol svg,.brand-mark svg{width:100%;height:100%;display:block;overflow:visible}.header nav{border:1px solid var(--border);border-radius:var(--round);background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);gap:28px;padding:12px 20px;font-size:12px;display:flex}.header nav a{padding:5px 0}.header nav a[aria-current]{color:var(--accent);border-bottom:1px solid}.header-note{color:var(--ink);font:9px/1.9 var(--mono);text-align:right;letter-spacing:.09em}.eyebrow{font:10px/1.8 var(--mono);letter-spacing:.1em;color:var(--accent);text-transform:uppercase;align-items:center;gap:10px;display:flex}.hero{isolation:isolate;height:100svh;min-height:780px;transition:height .95s cubic-bezier(.65,0,.18,1);position:relative}.world{background:var(--bg);transition:clip-path .95s cubic-bezier(.65,0,.18,1),opacity .65s;position:absolute;inset:0;overflow:hidden}.world-software{clip-path:polygon(0 0,62% 0,43% 100%,0 100%);z-index:1}.world-climbing{clip-path:polygon(62% 0,100% 0,100% 100%,43% 100%);z-index:2}.world-backdrop{position:absolute;inset:0;overflow:hidden}.hero-photo{object-fit:cover;object-position:65% 48%;opacity:.65;filter:saturate(.5);width:100%;height:100%;transition:left .95s,top .95s,width .95s,height .95s,border-radius .95s,object-position .95s,opacity .95s,transform .95s;position:absolute}.world-shade{background:linear-gradient(100deg, var(--bg), transparent 78%);z-index:1;position:absolute;inset:0}.world-climbing .world-shade{background:linear-gradient(90deg, var(--bg) 20%, color-mix(in srgb, var(--bg) 56%, transparent) 60%, color-mix(in srgb, var(--bg) 25%, transparent))}.hero-copy{z-index:4;width:34%;transition:left .95s cubic-bezier(.65,0,.18,1),top .95s cubic-bezier(.65,0,.18,1),width .95s cubic-bezier(.65,0,.18,1),padding .95s,transform .95s;position:absolute;top:31%;left:7%}.world-climbing .hero-copy{width:32%;top:32%;left:62%}.hero h1{font:var(--title-weight) var(--title-size) / 1.06 var(--display);letter-spacing:-.055em;overflow-wrap:normal;margin:25px 0;transition:font-size .95s cubic-bezier(.65,0,.18,1)}.hero h1 em{color:var(--accent);font-style:normal;display:block}.hero-description{max-width:330px;color:var(--muted);text-wrap:pretty;font-size:14px;line-height:1.85}.hero-action{align-items:center;gap:30px;margin-top:30px;font-size:13px;font-weight:600;display:inline-flex}.hero-action>span{border:1px solid var(--border);border-radius:50%;place-items:center;width:43px;height:43px;transition:background .25s;display:grid}.hero[data-hero-page=home] .world:hover .hero-action>span,a.hero-action:hover>span,a.hero-action:focus-visible>span{background:var(--accent);color:var(--bg)}.world-link{z-index:5;position:absolute;inset:0;outline-offset:-8px!important}.world:has(.world-link:focus-visible) .hero-copy{outline:2px solid var(--accent);outline-offset:15px;border-radius:var(--round)}.world-caption{z-index:3;font:9px var(--mono);letter-spacing:.14em;color:var(--muted);transition:left .95s,top .95s;position:absolute;top:22%;left:7%}.world-climbing .world-caption{top:26%;left:65%}.photo-credit{font:8px var(--mono);color:var(--muted);z-index:4;position:absolute;bottom:130px;right:5.5%}.hero-scene{opacity:.25;z-index:1;position:absolute;inset:0}.seam{z-index:6;border:1px solid var(--border);background:var(--bg);pointer-events:none;border-radius:50%;place-items:center;width:46px;height:46px;transition:opacity .3s;display:grid;position:absolute;top:50%;left:52.3%;transform:translate(-50%,-50%)}.landing-foot{z-index:5;pointer-events:none;justify-content:space-between;width:84%;display:flex;position:absolute;bottom:130px;left:7%}.landing-foot>span:first-child{color:var(--muted);font-size:12px;line-height:1.8}.landing-foot strong{color:var(--ink);font-weight:500}.landing-foot>span:last-child{color:var(--ink);font:9px var(--mono);align-items:center;gap:20px;margin-right:0;display:flex}.hero:not([data-hero-page=home]) .seam,.hero:not([data-hero-page=home]) .landing-foot{opacity:0;visibility:hidden}.hero[data-hero-page=software] .world-software,.hero[data-hero-page=climbing] .world-climbing{clip-path:polygon(0 0,100% 0,100% 100%,0 100%);z-index:3}.hero[data-hero-page=software] .world-climbing,.hero[data-hero-page=climbing] .world-software{opacity:0}.hero:not([data-hero-page=home]) .world:not([inert]) .hero-copy{width:65%;top:28%;left:9%}.hero:not([data-hero-page=home]) .world:not([inert]) .world-caption{transition:left .95s,top .95s;top:20%;left:9%}.hero:not([data-hero-page=home]) .hero-description{max-width:440px;font-size:16px}.hero:not([data-hero-page=home]) .hero-photo{object-position:70% 48%;opacity:.65;transform:scale(1.025)}.hero:not([data-hero-page=home]) h1{font-size:clamp(64px,7.7vw,130px)}.page-content{position:relative}.page-running-head{padding:30px var(--space);border-top:1px solid var(--border);border-bottom:1px solid var(--border);font:9px var(--mono);color:var(--muted);justify-content:space-between;gap:25px;display:flex}.section{padding:100px var(--space);max-width:1700px;margin:0 auto}.section-heading{justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:55px;display:flex}.section-heading h2,.about-copy h2,.contact-main h2{font:500 clamp(32px, 4vw, 62px) / 1.15 var(--display);letter-spacing:-.045em;text-wrap:balance;margin-top:18px}.section-heading>p{max-width:280px;color:var(--muted);font-size:13px;line-height:1.85}.section-number{font-size:10px}.project-explorer{grid-template-columns:var(--index-width) minmax(0, 1fr);align-items:start;gap:7%;display:grid}.project-index{min-width:0;position:sticky;top:30px}.index-label{font:9px var(--mono);color:var(--muted);border-bottom:1px solid var(--border);justify-content:space-between;padding:0 0 20px;display:flex}.project-choice{text-align:left;border-bottom:1px solid var(--border);width:100%;font-family:var(--display);align-items:center;gap:15px;padding:24px 4px;font-size:21px;transition:padding .2s,background .2s,color .2s;display:flex}.project-choice>span:nth-child(2){flex:1}.project-number{font:9px var(--mono);color:var(--muted)}.project-choice svg{opacity:0;flex-shrink:0}.project-choice:hover,.project-choice[aria-pressed=true]{color:var(--accent);padding-left:12px}.project-choice[aria-pressed=true] svg{opacity:1}.index-note{color:var(--muted);margin-top:28px;font-size:11px;line-height:1.85}.project-preview{min-width:0}.surface-card{border:var(--line) solid var(--border);border-radius:var(--round);background:var(--surface)}.preview-image{width:100%;padding:24px 24px 0;display:block;position:relative;overflow:hidden}.preview-topline{font:8px var(--mono);color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.preview-topline>span:first-child{gap:4px;display:flex}.preview-topline i{background:var(--muted);border-radius:50%;width:5px;height:5px}.preview-image>img{aspect-ratio:1.6;object-fit:cover;object-position:top;border-radius:3px 3px 0 0;width:100%;height:auto;transition:transform .4s}.preview-image:hover>img{transform:translateY(-5px)}.preview-open{background:var(--bg);color:var(--ink);border:1px solid var(--border);border-radius:var(--round);align-items:center;gap:10px;padding:12px;display:flex;position:absolute;bottom:22px;right:22px}.preview-open>span{font-size:10px}.preview-caption{justify-content:space-between;align-items:flex-end;gap:20px;padding-top:26px;display:flex}.preview-caption h3{font:500 32px/1.2 var(--display);letter-spacing:-.03em;margin-top:9px}.preview-caption p{color:var(--muted);margin-top:8px;font-size:13px;line-height:1.7}.text-link{border-bottom:1px solid var(--border);white-space:nowrap;align-items:center;gap:18px;padding:10px 0;font-size:12px;display:inline-flex}.sample-note{font:10px/1.8 var(--mono);color:var(--muted);border-top:1px solid var(--border);margin-top:45px;padding-top:22px}.about-section{border-top:1px solid var(--border);grid-template-columns:38% 1fr;align-items:center;gap:12%;display:grid}.portrait-placeholder{aspect-ratio:4/5;background:linear-gradient(140deg, var(--surface), var(--bg));place-items:center;min-width:0;display:grid;position:relative;overflow:hidden}.portrait-placeholder>img{object-fit:cover;object-position:center top;transform-origin:50% 10%;width:100%;height:100%;position:absolute;transform:scale(1.3)}.portrait-outline{opacity:.5;flex-direction:column;justify-content:flex-end;align-items:center;width:58%;height:65%;display:flex}.portrait-outline>span{aspect-ratio:1;border:1px solid var(--accent);border-radius:50%;width:45%;margin-bottom:12px}.portrait-outline>i{border:1px solid var(--accent);border-bottom:0;border-radius:50% 50% 0 0;width:100%;height:52%}.portrait-label{font:9px var(--mono);color:var(--muted);align-items:center;gap:10px;display:flex;position:absolute;bottom:25px;left:25px}.portrait-corner{font:12px var(--mono);color:var(--accent);position:absolute;top:25px;right:25px}.about-copy h2 em,.contact-main h2 em{color:var(--accent);font-style:normal}.about-copy>p{color:var(--muted);max-width:520px;margin:28px 0;font-size:15px;line-height:1.95}.about-tags{font:9px var(--mono);color:var(--accent);flex-wrap:wrap;align-items:center;gap:12px;margin:30px 0;display:flex}.contact-section{border-top:1px solid var(--border);grid-template-columns:1.5fr 1fr;gap:15%;padding-top:90px;padding-bottom:100px;display:grid}.contact-main h2{font-size:clamp(45px,6vw,88px)}.contact-main>p{color:var(--muted);margin:24px 0;font-size:14px;line-height:1.9}.contact-button{border-radius:var(--round);background:var(--accent);color:var(--bg);justify-content:space-between;align-items:center;gap:45px;padding:18px 24px;font-size:13px;font-weight:600;display:inline-flex}.contact-button:disabled{background:var(--surface);color:var(--muted);border:1px solid var(--border)}.contact-main .contact-placeholder{font:10px var(--mono);margin-top:13px}.contact-details{align-self:center;margin:55px 0 0}.contact-details>div{border-bottom:1px solid var(--border);padding:24px 0}.contact-details dt{font:9px var(--mono);color:var(--accent);align-items:center;gap:10px;margin-bottom:13px;display:flex}.contact-details dd{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:14px}.timeline{margin:0;padding:0;list-style:none;position:relative}.timeline-entry{border-left:1px solid var(--border);grid-template-columns:23% minmax(0,1fr);gap:7%;padding:0 0 65px 30px;display:grid;position:relative}.timeline-date{font:11px var(--mono);color:var(--accent);align-self:start;align-items:center;gap:12px;padding-top:8px;line-height:1.5;display:flex;position:relative}.timeline-date>i{border:2px solid var(--accent);background:var(--bg);border-radius:50%;width:11px;height:11px;position:absolute;top:10px;left:-36px}.timeline-card{min-width:0}.timeline-copy{padding-bottom:27px}.timeline-copy h3{font:500 clamp(26px, 3vw, 40px) / 1.15 var(--display);letter-spacing:-.035em;margin:10px 0 16px}.timeline-copy p{color:var(--muted);max-width:580px;font-size:14px;line-height:1.85}.timeline-media{width:100%;padding:0;display:block;position:relative;overflow:hidden}.timeline-media>img{aspect-ratio:1.8;object-fit:cover;filter:saturate(.7);width:100%;height:auto;transition:transform .5s}.timeline-media:hover>img{transform:scale(1.025)}.media-kind{background:var(--bg);max-width:calc(100% - 20px);color:var(--ink);font:12px / 1.5 var(--mono);border-radius:var(--round);align-items:center;gap:6px;padding:8px 10px;display:flex;position:absolute;top:10px;left:10px}.media-open{background:var(--bg);width:44px;height:44px;color:var(--ink);border-radius:50%;place-items:center;display:grid;position:absolute;bottom:20px;right:20px}.future-entry{border-left-style:dashed}.future-heading{border-top:1px solid var(--border);grid-column:1/-1;padding:20px 0 30px}.future-heading h3{font:500 38px var(--display);margin-top:14px}.future-entry .timeline-card{border:1px dashed var(--border);border-radius:var(--round);padding:25px}.future-entry .timeline-copy{padding:0}.footer{padding:30px var(--space);border-top:1px solid var(--border);font:10px var(--mono);color:var(--muted);justify-content:space-between;align-items:center;gap:30px;display:flex}.footer>a{color:var(--ink);gap:20px;display:flex}.not-found{min-height:85svh;padding:200px 8%}.not-found h1{font:500 60px var(--display);margin:25px 0}.not-found a{text-decoration:underline}.ornament{aspect-ratio:1;width:38%;color:var(--accent);z-index:2;pointer-events:none;opacity:.6;transition:left .95s,top .95s,width .95s,height .95s,transform .95s;position:absolute;top:12%;left:24%}.ornament svg{width:100%;height:100%}.world-climbing .ornament{opacity:.28;width:28%;top:10%;left:65%}.hero:not([data-hero-page=home]) .world:not([inert]) .ornament{width:38%;top:18%;left:56%}@media (width>=1700px){.hero-copy{top:32%}.ornament{width:32%}}@media (width<=1000px){.section{padding:75px 6%}.project-explorer{gap:5%}.project-choice{gap:10px;font-size:18px}.preview-caption{flex-direction:column;align-items:flex-start}.about-section{gap:8%}.header{padding:25px 5%}.hero{height:100svh}.hero-copy{width:38%;left:6%}.world-climbing .hero-copy{width:35%;left:60%}.hero h1{font-size:clamp(36px,5.2vw,68px)}.hero-description{font-size:13px}}@media (width<=760px){.portfolio{--space:7%}.header{gap:10px;padding:22px 7%}.brand-mark{width:72px;height:69px}.header-note{font-size:7px}.header nav{gap:14px;padding:10px 12px;font-size:10px}.hero{height:max(1280px,145svh)}.world-software{clip-path:polygon(0 0,100% 0,100% 47%,0 53%)}.world-climbing{clip-path:polygon(0 53%,100% 47%,100% 100%,0 100%)}.hero-copy{width:84%;top:15%;left:8%}.world-climbing .hero-copy{width:84%;top:59%;left:8%}.hero h1{margin:18px 0;font-size:clamp(44px,9.8vw,70px)}.hero-description{max-width:300px;font-size:13px;line-height:1.8}.hero-eyebrow{font-size:8px}.hero-action{gap:25px;margin-top:19px;font-size:12px}.hero-action>span{width:35px;height:35px}.world-caption{font-size:7px;top:11%;left:8%}.world-climbing .world-caption{top:56%;left:8%}.seam{width:36px;height:36px;top:50%;left:50%}.landing-foot{display:none}.photo-credit{font-size:6px;bottom:175px;right:8%}.hero:not([data-hero-page=home]){height:max(780px,100svh)}.hero:not([data-hero-page=home]) .world:not([inert]) .hero-copy{width:84%;top:28%;left:8%}.hero:not([data-hero-page=home]) .world:not([inert]) .world-caption{top:21%;left:8%}.hero:not([data-hero-page=home]) h1{font-size:clamp(44px,10.5vw,76px)}.hero:not([data-hero-page=home]) .hero-description{max-width:350px;font-size:14px}.world-climbing .world-shade{background:linear-gradient(90deg, color-mix(in srgb, var(--bg) 85%, transparent), color-mix(in srgb, var(--bg) 40%, transparent))}.hero-photo{object-position:64% center}.ornament{opacity:.35;width:60%;top:13%;left:46%}.world-climbing .ornament{opacity:.23;width:45%;top:58%;left:55%}.hero:not([data-hero-page=home]) .world:not([inert]) .ornament{width:65%;top:50%;left:45%}.page-running-head{padding:25px 7%;font-size:8px}.page-running-head>span:last-child{display:none}.section{padding:60px 7%}.section-heading{margin-bottom:35px;display:block}.section-heading>p{max-width:100%;margin-top:20px;font-size:12px}.section-heading h2{font-size:36px}.project-explorer{grid-template-columns:1fr;gap:28px}.project-index{grid-template-columns:1fr 1fr;gap:0 18px;display:grid;position:static}.index-label{grid-column:1/-1;padding-bottom:15px}.project-choice{gap:9px;padding:17px 2px;font-size:19px}.index-note{display:none}.preview-image{padding:14px 14px 0}.preview-topline{margin-bottom:14px}.preview-open{padding:9px;bottom:12px;right:12px}.preview-open>span{display:none}.preview-caption{gap:10px;padding-top:20px}.preview-caption h3{font-size:30px}.preview-caption .eyebrow{font-size:8px}.sample-note{margin-top:30px;font-size:9px}.about-section{grid-template-columns:1fr;gap:40px}.portrait-placeholder{aspect-ratio:1.1;width:100%;max-width:380px}.about-copy h2{font-size:38px}.about-copy>p{font-size:14px}.about-tags{gap:8px;font-size:8px}.contact-section{grid-template-columns:1fr;gap:30px}.contact-main h2{font-size:55px}.contact-details{margin:0}.contact-main>p{font-size:13px}.timeline-entry{grid-template-columns:1fr;gap:18px;padding:0 0 40px 23px}.timeline-date>i{left:-29px}.timeline-copy h3{font-size:29px}.timeline-copy p{font-size:13px}.timeline-copy .eyebrow{font-size:8px}.timeline-media>img{aspect-ratio:1.3}.media-kind{padding:7px;font-size:7px;top:12px;left:12px}.future-entry .timeline-card{padding:18px}.future-heading{padding:20px 0 10px}.footer{flex-wrap:wrap;gap:20px;padding:25px 7%;font-size:9px}.footer>span:nth-child(2){display:none}}@media (width<=360px){.hero h1{font-size:41px}.hero-description{font-size:12px}.header-note{font-size:6px}.section-heading h2{font-size:31px}.project-choice{font-size:16px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.design-scope[data-style=neumorphism]{--round:26px;--title-size:clamp(44px, 5.1vw, 100px);--raised:12px 12px 28px color-mix(in srgb, var(--bg) 72%, #000), -9px -9px 25px color-mix(in srgb, var(--bg) 83%, var(--ink));--pressed:inset 5px 5px 11px color-mix(in srgb, var(--bg) 70%, #000), inset -4px -4px 10px color-mix(in srgb, var(--bg) 85%, var(--ink))}.design-scope[data-style=scrapbook]{--round:2px;--title-size:clamp(52px, 5.5vw, 115px)}.world[data-style=neumorphism] .hero-copy{top:29%}.world[data-style=neumorphism] h1{letter-spacing:-.065em;font-weight:500}.world[data-style=neumorphism] .world-shade{background:0 0}.world[data-style=neumorphism] .hero-scene{opacity:.06}.world[data-style=neumorphism] .hero-action{box-shadow:var(--raised);background:var(--bg);border-radius:50px;padding:12px 12px 12px 23px}.world[data-style=neumorphism] .hero-action>span{box-shadow:var(--pressed);border:0}.world[data-style=neumorphism] .ornament{opacity:1;width:34%;top:10%;left:43%;transform:translate(-50%)}.page-content[data-style=neumorphism] .work-section{padding-top:120px}.page-content[data-style=neumorphism] .project-explorer{grid-template-columns:minmax(0, 1fr) var(--index-width);background:var(--bg);box-shadow:var(--pressed);border-radius:34px;gap:5%;padding:40px}.page-content[data-style=neumorphism] .project-index{grid-area:1/2;padding-top:8px}.page-content[data-style=neumorphism] .project-preview{grid-area:1/1}.page-content[data-style=neumorphism] .surface-card{background:var(--bg);border:1px solid color-mix(in srgb, var(--ink) 7%, transparent);box-shadow:var(--raised)}.page-content[data-style=neumorphism] .preview-image{padding:18px 18px 0}.page-content[data-style=neumorphism] .project-choice{box-shadow:var(--raised);border:1px solid #0000;border-radius:12px;margin:14px 0;padding:17px 14px;font-size:17px}.page-content[data-style=neumorphism] .project-choice[aria-pressed=true]{box-shadow:var(--pressed);border-color:var(--border)}.page-content[data-style=neumorphism] .index-label{border:0;font-size:8px}.page-content[data-style=neumorphism] .preview-caption{flex-direction:column;align-items:flex-start}.page-content[data-style=neumorphism] .about-section{border:0;grid-template-columns:1.2fr .8fr;gap:14%}.page-content[data-style=neumorphism] .portrait-placeholder{aspect-ratio:1;border-radius:50%;grid-area:1/2}.page-content[data-style=neumorphism] .about-copy{grid-area:1/1}.page-content[data-style=neumorphism] .contact-section{border:0}.page-content[data-style=neumorphism] .contact-details{box-shadow:var(--pressed);border-radius:24px;padding:15px 30px}.page-content[data-style=neumorphism] .contact-button{box-shadow:var(--raised);border-radius:40px}.page-content[data-style=neumorphism] .contact-details>div:last-child{border:0}.world[data-style=scrapbook] .hero-photo{z-index:3;background:var(--surface);filter:none;opacity:1;grid-template-rows:minmax(0,1fr) auto;width:29%;height:41%;margin:0;padding:10px 10px 12px;display:grid;top:13%;left:67%;transform:rotate(5deg);box-shadow:8px 16px 25px #0004}.world[data-style=scrapbook] .hero-photo img{object-fit:cover;object-position:inherit;width:100%;height:100%;min-height:0}.world[data-style=scrapbook] .hero-photo figcaption{color:var(--ink);font:22px/1.2 var(--hand);text-align:right;padding-top:8px}.world[data-style=scrapbook] .world-shade{background:0 0}.world[data-style=scrapbook] .hero-copy{width:34%;top:51%;left:60%}.world[data-style=scrapbook] .hero-eyebrow{background:var(--surface);width:fit-content;box-shadow:0 0 0 8px var(--surface)}.world[data-style=scrapbook] h1{letter-spacing:-.025em;line-height:.95;transform:rotate(-2deg)}.world[data-style=scrapbook] h1 em{text-underline-offset:7px;text-decoration:underline;text-decoration-thickness:1px}.world[data-style=scrapbook] .hero-description{max-width:350px}.world[data-style=scrapbook] .hero-action{font:500 24px var(--hand);gap:18px}.world[data-style=scrapbook] .hero-action>span{border:1px dashed var(--accent)}.world[data-style=scrapbook] .world-caption{background:var(--surface);color:var(--ink);padding:10px 13px;top:37%;left:61%;transform:rotate(-3deg)}.world[data-style=scrapbook] .ornament{opacity:1;z-index:auto;width:35%;height:30%;top:12%;left:58%}.scrap-photo{z-index:2;aspect-ratio:1;background:var(--surface);grid-template-rows:minmax(0,1fr) auto;width:62%;margin:0;padding:10px 10px 15px;display:grid;position:relative;left:-25%;transform:rotate(-9deg);box-shadow:5px 9px 16px #0005}.scrap-photo:before{content:"";background:color-mix(in srgb, var(--accent) 60%, var(--bg));opacity:.8;width:45%;height:25px;position:absolute;top:-12px;left:25%;transform:rotate(-5deg)}.scrap-photo img{object-fit:cover;object-position:center 45%;width:100%;height:100%;min-height:0}.scrap-photo figcaption{font:18px/1.2 var(--hand);color:var(--ink);padding-top:10px}.scrap-stamp{z-index:4;border:2px solid var(--accent);text-align:center;width:100px;height:100px;font:500 27px/.95 var(--hand);background:var(--bg);border-radius:50%;align-content:center;display:grid;position:absolute;top:-4%;right:-4%;transform:rotate(13deg)}.scrap-stamp span{font:7px var(--mono);margin-top:10px}.page-content[data-style=scrapbook]{background-image:radial-gradient(var(--border) .7px, transparent .7px);background-size:7px 7px}.page-content[data-style=scrapbook] .section-heading h2{font-size:clamp(42px,5.4vw,80px);transform:rotate(-2deg)}.page-content[data-style=scrapbook] .timeline-entry{border-left-style:dashed;grid-template-columns:16% minmax(0,1fr);gap:5%;padding-bottom:90px}.page-content[data-style=scrapbook] .timeline-date>span{background:var(--surface);font-family:var(--hand);padding:10px 12px;font-size:22px;transform:rotate(-4deg)}.page-content[data-style=scrapbook] .timeline-card{background:var(--surface);box-shadow:6px 8px 0 color-mix(in srgb, var(--surface) 60%, var(--bg));padding:30px;position:relative;transform:rotate(-.6deg)}.page-content[data-style=scrapbook] .timeline-card:before{content:"";background:color-mix(in srgb, var(--accent) 58%, var(--bg));opacity:.8;width:100px;height:28px;position:absolute;top:-14px;left:40%;transform:rotate(3deg)}.page-content[data-style=scrapbook] .timeline-entry:nth-child(2n) .timeline-card{transform:rotate(.7deg)}.page-content[data-style=scrapbook] .timeline-card:has(.timeline-media){grid-template-columns:1fr .85fr;align-items:center;gap:30px;display:grid}.page-content[data-style=scrapbook] .timeline-card:has(.timeline-media) .timeline-copy{grid-area:1/2}.page-content[data-style=scrapbook] .timeline-media{border:7px solid var(--bg);border-bottom-width:35px;grid-area:1/1;transform:rotate(-2deg)}.page-content[data-style=scrapbook] .timeline-media img{aspect-ratio:.95;filter:none}.page-content[data-style=scrapbook] .timeline-copy h3{letter-spacing:-.02em;font-size:clamp(33px,3.7vw,52px)}.page-content[data-style=scrapbook] .timeline-copy .eyebrow{font-size:8px}.page-content[data-style=scrapbook] .timeline-copy{padding:0}.page-content[data-style=scrapbook] .future-entry .timeline-card{background:var(--bg);border:1px dashed var(--accent);box-shadow:none}.page-content[data-style=scrapbook] .future-heading h3{font-size:54px}@media (width>=761px){.hero:not([data-hero-page=home]) .world[data-style=neumorphism] .hero-copy{width:49%;top:29%;left:12%}.hero:not([data-hero-page=home]) .world[data-style=neumorphism] h1{font-size:clamp(65px,7.5vw,132px)}.hero:not([data-hero-page=home]) .world[data-style=neumorphism] .ornament{width:26%;top:24%;left:65%}.hero:not([data-hero-page=home]) .world[data-style=scrapbook] .hero-copy{width:48%;top:34%;left:12%}.hero:not([data-hero-page=home]) .world[data-style=scrapbook] h1{font-size:clamp(78px,8.5vw,145px)}.hero:not([data-hero-page=home]) .world[data-style=scrapbook] .hero-photo{width:27%;height:52%;top:17%;left:64%;transform:rotate(6deg)}.hero:not([data-hero-page=home]) .world[data-style=scrapbook] .ornament{width:35%;height:35%;top:24%;left:57%}.hero:not([data-hero-page=home]) .world[data-style=scrapbook] .world-caption{top:23%;left:12%}}@media (width<=1150px) and (width>=761px){.world[data-style=scrapbook] .hero-photo{height:36%}.world[data-style=scrapbook] h1{font-size:58px}.world[data-style=neumorphism] h1{font-size:50px}.page-content[data-style=neumorphism] .project-explorer{padding:25px}.page-content[data-style=scrapbook] .timeline-card:has(.timeline-media){grid-template-columns:1fr}.page-content[data-style=scrapbook] .timeline-copy,.page-content[data-style=scrapbook] .timeline-media{grid-area:auto!important}.scrap-stamp{width:70px;height:70px;font-size:23px}.scrap-stamp span{margin-top:6px;font-size:6px}}@media (width<=760px){.world[data-style] .hero-copy{width:84%;top:14%;left:8%}.world-climbing[data-style] .hero-copy{width:84%;top:59%;left:8%}.world[data-style] .world-caption{font-size:7px;top:10.5%;left:8%}.world-climbing[data-style] .world-caption{top:55.5%}.world[data-style] .hero-eyebrow{font-size:7px}.world[data-style=neumorphism] h1{font-size:clamp(42px,11vw,65px)}.world[data-style=scrapbook] h1{font-size:clamp(45px,12vw,78px)}.world[data-style=scrapbook] .hero-action{font-size:21px}.world[data-style=neumorphism] .hero-action{padding:8px 8px 8px 18px}.world[data-style=neumorphism] .ornament{opacity:.45;width:42%;top:16%;left:60%}.world[data-style=scrapbook] .hero-photo{width:40%;height:14%;padding:7px 7px 9px;top:53%;left:53%}.world[data-style=scrapbook] .hero-photo figcaption{padding-top:6px;font-size:16px}.world[data-style=scrapbook] .ornament{opacity:.7;width:36%;height:18%;top:71%;left:66%}.scrap-photo{width:90%;padding:6px 6px 10px}.scrap-photo figcaption{font-size:14px}.scrap-stamp{display:none}.hero:not([data-hero-page=home]) .world[data-style] .hero-copy{width:84%;top:25%;left:8%}.hero:not([data-hero-page=home]) .world[data-style] .world-caption{top:17%;left:8%}.hero:not([data-hero-page=home]) .world[data-style=neumorphism] .ornament{width:42%;top:33%;left:64%}.hero:not([data-hero-page=home]) .world[data-style=scrapbook] .hero-photo{width:35%;height:26%;top:12%;left:58%}.hero:not([data-hero-page=home]) .world[data-style=scrapbook] .ornament{width:34%;height:20%;top:56%;left:65%}.page-content[data-style=neumorphism] .work-section{padding-top:65px}.page-content[data-style=neumorphism] .project-explorer{border-radius:24px;grid-template-columns:1fr;gap:30px;padding:18px}.page-content[data-style=neumorphism] .project-index,.page-content[data-style=neumorphism] .project-preview{grid-area:auto}.page-content[data-style=neumorphism] .project-choice{margin:5px 0;padding:14px 10px;font-size:14px}.page-content[data-style=neumorphism] .project-index{gap:6px 12px}.page-content[data-style=neumorphism] .about-section{grid-template-columns:1fr;gap:45px}.page-content[data-style=neumorphism] .portrait-placeholder,.page-content[data-style=neumorphism] .about-copy{grid-area:auto}.page-content[data-style=neumorphism] .portrait-placeholder{width:85%;margin:0 auto}.page-content[data-style=scrapbook] .section-heading h2{font-size:46px}.page-content[data-style=scrapbook] .timeline-entry{grid-template-columns:1fr;gap:25px;padding:0 0 60px 18px}.page-content[data-style=scrapbook] .timeline-date>i{left:-24px}.page-content[data-style=scrapbook] .timeline-date>span{padding:5px 10px;font-size:20px}.page-content[data-style=scrapbook] .timeline-card{padding:20px}.page-content[data-style=scrapbook] .timeline-card:has(.timeline-media){grid-template-columns:1fr;gap:25px}.page-content[data-style=scrapbook] .timeline-media{grid-area:auto}.page-content[data-style=scrapbook] .timeline-card:has(.timeline-media) .timeline-copy{grid-area:auto}.page-content[data-style=scrapbook] .timeline-copy h3{font-size:34px}.page-content[data-style=scrapbook] .timeline-media img{aspect-ratio:1.15}}@media (width<=380px){.world[data-style=scrapbook] .hero-photo{height:10%}.hero:not([data-hero-page=home]) .world[data-style=scrapbook] .hero-photo{height:20%}.project-index{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.project-choice>span:nth-child(2){min-width:0}.project-choice svg,.project-number{display:none}.page-content[data-style=neumorphism] .project-choice{font-size:13px}}@media (width>=761px){.hero:not([data-hero-page=home]) .world[data-style=neumorphism] .ornament{width:min(55%,105svh);top:11%;left:73%}}@media (width<=760px){.world[data-style=neumorphism] .ornament{opacity:1;width:52%;top:6%;left:74%}.hero[data-hero-page=software]{height:max(900px,110svh)}.hero[data-hero-page=software] .world[data-style=neumorphism] .hero-copy{top:20%}.hero:not([data-hero-page=home]) .world[data-style=neumorphism] .ornament{opacity:1;width:min(90%,420px);top:max(50%,490px);left:65%}}
