:root{--color-bg:#03070b;--color-bg-deep:#071421;--color-bg-wind:#0c1d2a;--color-ice:#102f42;--color-ice-strong:#1f6b8d;--color-ice-edge:#24485c;--color-frost:#d9f5ff;--color-panel:#05111bbd;--color-panel-strong:#081724e6;--color-text:#f3fbff;--color-text-muted:#a8bdc9;--color-link:#87dbff;--color-link-hover:#c5efff;--color-focus:#7ddcff;--color-snow:#f2fbffeb;--color-shadow:#0000008c;--font-heading:Georgia, "Times New Roman", serif;--font-body:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;color:var(--color-text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:var(--color-bg);font-family:var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.65}:root[data-theme=light]{--color-bg:#fbfeff;--color-bg-deep:#e5f8ff;--color-bg-wind:#c8ecfb;--color-ice:#b9e5f7;--color-ice-strong:#49bfe9;--color-ice-edge:#86d2ec;--color-frost:#8bddfb;--color-panel:#ffffffc2;--color-panel-strong:#ffffffeb;--color-text:#10202d;--color-text-muted:#526879;--color-link:#0b6e99;--color-link-hover:#084c6b;--color-focus:#0ea5d8;--color-snow:#000000e5;--color-shadow:#2a84ae3d;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{scrollbar-width:none;scroll-behavior:smooth;min-width:320px;min-height:100%}body{min-width:320px;min-height:100svh;color:var(--color-text);background:var(--color-bg);-ms-overflow-style:none;margin:0}html::-webkit-scrollbar{display:none}body::-webkit-scrollbar{display:none}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:var(--color-link)}a:hover{color:var(--color-link-hover)}:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}h1,h2,h3,p{margin-block:0}h1,h2,h3{color:var(--color-text);font-family:var(--font-heading);font-weight:650}::selection{color:var(--color-bg);background:var(--color-link)}#root{min-height:100svh}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.site-shell{--route-transition-base:#000;isolation:isolate;min-height:100svh;position:relative;overflow-x:clip}:root[data-theme=light] .site-shell{--route-transition-base:#fff}.site-shell[data-route=foundry]{--color-ember-bg:#050101;--color-ember-bg-deep:#160700;--color-ember-bg-smoke:#2b0d02;--color-ember-surface:#411706;--color-ember-accent:#d85a12;--color-ember-edge:#7a3511;--color-ember-glow:#ffc06f;--color-ember-panel:#180701bd;--color-ember-panel-strong:#200902e6;--color-ember-text:#fff8ef;--color-ember-text-muted:#dfb996;--color-ember-link:#ff8a24;--color-ember-link-hover:#ffd29a;--color-ember-focus:#ff9a2f;--color-ember-spark:#ff8816f0;--color-ember-spark-hot:#ffd780f5;--color-ember-shadow:#0000009e;--color-bg:var(--color-ember-bg);--color-bg-deep:var(--color-ember-bg-deep);--color-bg-wind:var(--color-ember-bg-smoke);--color-ice:var(--color-ember-surface);--color-ice-strong:var(--color-ember-accent);--color-ice-edge:var(--color-ember-edge);--color-frost:var(--color-ember-glow);--color-panel:var(--color-ember-panel);--color-panel-strong:var(--color-ember-panel-strong);--color-text:var(--color-ember-text);--color-text-muted:var(--color-ember-text-muted);--color-link:var(--color-ember-link);--color-link-hover:var(--color-ember-link-hover);--color-focus:var(--color-ember-focus);--color-snow:var(--color-ember-spark);--color-shadow:var(--color-ember-shadow);color:var(--color-text);background:var(--color-bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light] .site-shell[data-route=foundry]{--color-ember-bg:#fffaf3;--color-ember-bg-deep:#ffead1;--color-ember-bg-smoke:#ffd5a3;--color-ember-surface:#ffc182;--color-ember-accent:#d8580d;--color-ember-edge:#ef9345;--color-ember-glow:#ff8a24;--color-ember-panel:#fffaf8c7;--color-ember-panel-strong:#ffffffeb;--color-ember-text:#2b1305;--color-ember-text-muted:#765b3d;--color-ember-link:#a93d06;--color-ember-link-hover:#742803;--color-ember-focus:#d8580d;--color-ember-spark:#df5208db;--color-ember-spark-hot:#ffaa31eb;--color-ember-shadow:#b153133d;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.lake-background{z-index:-3;pointer-events:none;position:fixed;inset:0;overflow:visible}.lake-glow,.lake-sheen{position:absolute;inset:0}.lake-glow{background:radial-gradient(circle at 24% 12%, color-mix(in srgb, var(--color-ice-strong) 40%, transparent), transparent 32rem), radial-gradient(circle at 82% 4%, color-mix(in srgb, var(--color-bg-wind) 70%, transparent), transparent 28rem), linear-gradient(180deg, var(--color-bg-wind) 0%, var(--color-bg) 34%, var(--color-bg-deep) 100%)}.lake-sheen{opacity:.68;background:radial-gradient(ellipse at 18% 72%, color-mix(in srgb, var(--color-frost) 42%, transparent), transparent 34rem), radial-gradient(ellipse at 76% 54%, color-mix(in srgb, var(--color-ice) 48%, transparent), transparent 28rem), radial-gradient(ellipse at 48% 96%, color-mix(in srgb, var(--color-bg-wind) 58%, transparent), transparent 36rem);filter:blur(10px)}.site-shell[data-route=foundry] .lake-glow{background:radial-gradient(circle at 22% 10%, color-mix(in srgb, var(--color-ice-strong) 38%, transparent), transparent 31rem), radial-gradient(circle at 84% 8%, color-mix(in srgb, var(--color-frost) 18%, transparent), transparent 27rem), linear-gradient(180deg, var(--color-bg-wind) 0%, var(--color-bg) 36%, var(--color-bg-deep) 100%)}.site-shell[data-route=foundry] .lake-sheen{opacity:.72;background:radial-gradient(ellipse at 16% 74%, color-mix(in srgb, var(--color-ice-strong) 28%, transparent), transparent 34rem), radial-gradient(ellipse at 78% 52%, color-mix(in srgb, var(--color-frost) 24%, transparent), transparent 28rem), radial-gradient(ellipse at 48% 96%, color-mix(in srgb, var(--color-bg-wind) 52%, transparent), transparent 36rem)}.snowfall{z-index:15;pointer-events:none;position:fixed;inset:0;overflow:hidden}.snow-layer{opacity:var(--snow-opacity,.72);animation:snow-fall var(--snow-duration,26s) linear infinite;will-change:transform;background-repeat:repeat;position:absolute;inset:-20vh 0 0;transform:translateY(-12vh)}.site-shell[data-route=foundry] .snow-layer{animation-name:ember-rise;inset:0 0 -20vh;transform:translateY(112vh)}.site-shell[data-route=foundry] .snow-layer-small{--snow-opacity:.72;background-image:radial-gradient(circle, var(--color-ember-spark-hot) 0 .06rem, var(--color-ember-spark) .07rem, transparent .095rem), radial-gradient(circle, var(--color-ember-spark) 0 .05rem, transparent .075rem)}.site-shell[data-route=foundry] .snow-layer-medium{--snow-opacity:.62;background-image:radial-gradient(circle, var(--color-ember-spark-hot) 0 .085rem, var(--color-ember-spark) .098rem, transparent .13rem), radial-gradient(circle, var(--color-ember-spark) 0 .075rem, transparent .105rem);animation-name:ember-rise-drift}.site-shell[data-route=foundry] .snow-layer-near{--snow-opacity:.42;background-image:radial-gradient(circle, var(--color-ember-spark-hot) 0 .14rem, var(--color-ember-spark) .158rem, transparent .195rem), radial-gradient(circle, var(--color-ember-spark) 0 .115rem, transparent .155rem);filter:blur(.25px) drop-shadow(0 0 .28rem color-mix(in srgb, var(--color-ember-spark) 68%, transparent))}.snow-layer-small{--snow-duration:24s;--snow-opacity:.54;background-image:radial-gradient(circle, var(--color-snow) 0 .055rem, transparent .065rem), radial-gradient(circle, var(--color-snow) 0 .045rem, transparent .055rem);background-position:1.2rem 1.8rem,5.4rem 7.1rem;background-size:8.5rem 9rem,10.8rem 12rem}.snow-layer-medium{--snow-duration:34s;--snow-opacity:.48;background-image:radial-gradient(circle, var(--color-snow) 0 .08rem, transparent .09rem), radial-gradient(circle, var(--color-snow) 0 .07rem, transparent .08rem);background-position:3.6rem 4.2rem,9.3rem 1.4rem;background-size:14rem 16rem,18rem 20rem;animation-name:snow-fall-drift}.snow-layer-near{--snow-duration:18s;--snow-opacity:.28;background-image:radial-gradient(circle, var(--color-snow) 0 .13rem, transparent .145rem), radial-gradient(circle, var(--color-snow) 0 .105rem, transparent .12rem);filter:blur(.5px);background-position:7.2rem 2.5rem,13rem 8.5rem;background-size:22rem 24rem,26rem 28rem}@keyframes snow-fall{to{transform:translate(1.8rem,112vh)}}@keyframes snow-fall-drift{to{transform:translate(-2.4rem,112vh)}}@keyframes ember-rise{to{transform:translate(1.8rem,-112vh)}}@keyframes ember-rise-drift{to{transform:translate(-2.4rem,-112vh)}}.theme-toggle{z-index:20;border:1px solid var(--color-ice-edge);min-width:4.75rem;color:var(--color-text);background:var(--color-panel-strong);box-shadow:0 1rem 2.25rem var(--color-shadow);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;gap:.45rem;padding:.55rem .9rem;display:inline-flex;position:fixed;top:1rem;right:1rem}.theme-toggle-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:1rem;height:1rem;overflow:visible}.theme-toggle:hover{border-color:var(--color-ice-strong);color:var(--color-link-hover)}.route-transition-veil{z-index:16;background:var(--route-transition-base);opacity:0;pointer-events:none;transition:opacity .16s;position:fixed;inset:0}.route-content{opacity:1;will-change:opacity;transition:opacity .16s}.site-shell[data-transition-phase=exiting] .route-transition-veil{opacity:1}.site-shell[data-transition-phase=exiting] .route-content{opacity:0}.site-shell[data-transition-phase=entering] .route-transition-veil{opacity:0;transition-duration:.16s}.site-shell[data-transition-phase=entering] .route-content{animation:.16s both route-content-enter}@keyframes route-content-enter{0%{opacity:0}to{opacity:1}}.page-switcher{--switcher-theme-duration:.16s;--switcher-slide-duration:.32s;--switcher-padding:.35rem;--switcher-gap:.35rem;--switcher-pill-width:calc((100% - (var(--switcher-padding) * 2) - var(--switcher-gap)) / 2);--switcher-portfolio-accent:#87dbff;--switcher-portfolio-accent-strong:#c5efff;--switcher-portfolio-edge:#24485c;--switcher-portfolio-glow:#d9f5ff33;--switcher-portfolio-surface:#081724e6;--switcher-portfolio-pill-surface:#0d2334e0;--switcher-foundry-accent:#ff8a24;--switcher-foundry-accent-strong:#ffd29a;--switcher-foundry-edge:#7a3511;--switcher-foundry-glow:#ff88243d;--switcher-foundry-surface:#200902e6;--switcher-foundry-pill-surface:#391405e6;--switcher-theme-accent:var(--switcher-portfolio-accent);--switcher-theme-accent-strong:var(--switcher-portfolio-accent-strong);--switcher-theme-edge:var(--switcher-portfolio-edge);--switcher-theme-glow:var(--switcher-portfolio-glow);--switcher-theme-surface:var(--switcher-portfolio-surface);--switcher-theme-pill-surface:var(--switcher-portfolio-pill-surface);--switcher-portfolio-layer:1;--switcher-foundry-layer:0;z-index:21;gap:var(--switcher-gap);border:1px solid color-mix(in srgb, var(--switcher-theme-edge) 58%, transparent);width:min(22rem,100vw - 8rem);min-width:13.5rem;padding:var(--switcher-padding);background-color:var(--switcher-theme-surface);box-shadow:0 1.15rem 2.4rem color-mix(in srgb, var(--color-shadow) 72%, transparent), 0 0 1.6rem color-mix(in srgb, var(--switcher-theme-glow) 42%, transparent), inset 0 .04rem 0 color-mix(in srgb, var(--switcher-theme-accent-strong) 13%, transparent), inset 0 -.75rem 1.8rem color-mix(in srgb, var(--switcher-theme-accent) 10%, transparent);isolation:isolate;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transition:border-color var(--switcher-theme-duration) ease, background-color var(--switcher-theme-duration) ease, box-shadow var(--switcher-theme-duration) ease;border-radius:1.2rem;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;position:fixed;top:1rem;left:50%;overflow:hidden;transform:translate(-50%)}.page-switcher[data-theme-route=foundry]{--switcher-theme-accent:var(--switcher-foundry-accent);--switcher-theme-accent-strong:var(--switcher-foundry-accent-strong);--switcher-theme-edge:var(--switcher-foundry-edge);--switcher-theme-glow:var(--switcher-foundry-glow);--switcher-theme-surface:var(--switcher-foundry-surface);--switcher-theme-pill-surface:var(--switcher-foundry-pill-surface);--switcher-portfolio-layer:0;--switcher-foundry-layer:1}:root[data-theme=light] .page-switcher{--switcher-portfolio-accent:#0b6e99;--switcher-portfolio-accent-strong:#084c6b;--switcher-portfolio-edge:#86d2ec;--switcher-portfolio-glow:#49bfe92e;--switcher-portfolio-surface:#ffffffeb;--switcher-portfolio-pill-surface:#e8f8ffe0;--switcher-foundry-accent:#a93d06;--switcher-foundry-accent-strong:#742803;--switcher-foundry-edge:#ef9345;--switcher-foundry-glow:#d8580d33;--switcher-foundry-surface:#ffffffeb;--switcher-foundry-pill-surface:#fff2e5e6}.page-switcher:before,.page-switcher:after{z-index:0;border-radius:inherit;content:"";pointer-events:none;transition:opacity var(--switcher-theme-duration) ease;position:absolute;inset:0}.page-switcher:before{opacity:var(--switcher-portfolio-layer);background:radial-gradient(circle at 18% 0%, color-mix(in srgb, var(--switcher-portfolio-accent-strong) 14%, transparent), transparent 58%), radial-gradient(circle at 88% 100%, var(--switcher-portfolio-glow), transparent 62%)}.page-switcher:after{opacity:var(--switcher-foundry-layer);background:radial-gradient(circle at 18% 0%, color-mix(in srgb, var(--switcher-foundry-accent-strong) 16%, transparent), transparent 58%), radial-gradient(circle at 88% 100%, var(--switcher-foundry-glow), transparent 62%)}.page-switcher-active-pill{top:var(--switcher-padding);bottom:var(--switcher-padding);left:var(--switcher-padding);z-index:1;width:var(--switcher-pill-width);border:1px solid color-mix(in srgb, var(--switcher-theme-accent) 42%, transparent);background-color:var(--switcher-theme-pill-surface);box-shadow:inset 0 0 .9rem color-mix(in srgb, var(--switcher-theme-accent) 13%, transparent), 0 0 1.05rem color-mix(in srgb, var(--switcher-theme-accent) 16%, transparent), 0 .45rem 1.15rem color-mix(in srgb, var(--color-shadow) 52%, transparent);transition:border-color var(--switcher-theme-duration) ease, background-color var(--switcher-theme-duration) ease, box-shadow var(--switcher-theme-duration) ease, transform var(--switcher-slide-duration) cubic-bezier(.22, 1, .36, 1);border-radius:.82rem;position:absolute;overflow:hidden}.page-switcher[data-active-route=foundry] .page-switcher-active-pill{transform:translateX(calc(100% + var(--switcher-gap)))}.page-switcher-active-pill:before,.page-switcher-active-pill:after{border-radius:inherit;content:"";pointer-events:none;transition:opacity var(--switcher-theme-duration) ease;position:absolute;inset:0}.page-switcher-active-pill:before{opacity:var(--switcher-portfolio-layer);background:radial-gradient(circle at 32% 0%, color-mix(in srgb, var(--switcher-portfolio-accent-strong) 20%, transparent), transparent 70%), radial-gradient(circle at 82% 100%, color-mix(in srgb, var(--switcher-portfolio-accent) 28%, transparent), transparent 72%)}.page-switcher-active-pill:after{opacity:var(--switcher-foundry-layer);background:radial-gradient(circle at 32% 0%, color-mix(in srgb, var(--switcher-foundry-accent-strong) 22%, transparent), transparent 70%), radial-gradient(circle at 82% 100%, color-mix(in srgb, var(--switcher-foundry-accent) 30%, transparent), transparent 72%)}.page-switcher-link{z-index:2;min-height:3.1rem;color:color-mix(in srgb, var(--switcher-theme-accent) 38%, var(--color-text-muted));text-shadow:0 0 .8rem color-mix(in srgb, var(--switcher-theme-accent) 14%, transparent);transition:color var(--switcher-theme-duration) ease, text-shadow var(--switcher-theme-duration) ease, transform .18s ease;border-radius:999px;justify-content:center;align-items:center;gap:.48rem;padding:.64rem .82rem;font-size:.94rem;font-weight:850;line-height:1;text-decoration:none;display:inline-flex;position:relative}.page-switcher-link:hover{color:var(--switcher-theme-accent-strong)}.page-switcher-link[aria-current=page]{color:var(--switcher-theme-accent-strong);text-shadow:0 0 .95rem color-mix(in srgb, var(--switcher-theme-accent) 20%, transparent)}.page-switcher-link:focus-visible{outline-offset:.3rem}.page-switcher-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.95px;width:1.18rem;height:1.18rem;filter:drop-shadow(0 0 .35rem color-mix(in srgb, var(--switcher-theme-accent) 22%, transparent));transition:filter var(--switcher-theme-duration) ease;flex:none}.page-flow{width:min(100% - 2rem,72rem);margin:0 auto;padding:5rem 0 3rem}.section-shell{position:relative}.hero-section{text-align:center;justify-items:center;gap:clamp(1.1rem,3vw,1.8rem);min-height:min(52rem,92svh);padding:clamp(3.25rem,7vw,4.75rem) 0 clamp(4rem,7vw,5.5rem);display:grid}.hero-copy{text-align:center;justify-content:center;width:100vw;margin-inline:calc(50% - 50vw);display:flex}.hero-section h1{letter-spacing:-.055em;text-align:center;white-space:nowrap;width:max-content;max-width:calc(100vw - 2rem);margin:0;font-size:clamp(3.8rem,8vw,8.25rem);line-height:.94;display:block}.hero-details{justify-items:center;max-width:47rem;display:grid}.hero-role{min-height:1.2em;color:var(--color-link);font-family:var(--font-heading);letter-spacing:-.04em;font-size:clamp(1.75rem,4vw,3.2rem);font-weight:650;transition:opacity .28s,transform .28s,filter .28s}.hero-role.is-hidden{opacity:0;filter:blur(8px);transform:translateY(.35rem)}.hero-role.is-visible{opacity:1;filter:blur();transform:translateY(0)}.hero-summary{max-width:42rem;color:var(--color-text-muted);margin-top:1.2rem;font-size:clamp(1.08rem,2vw,1.35rem)}.hero-actions{flex-wrap:wrap;justify-content:center;gap:.8rem;margin-top:2rem;display:flex}.hero-action{border:1px solid var(--color-ice-edge);min-height:3rem;box-shadow:0 1rem 2rem color-mix(in srgb, var(--color-shadow) 72%, transparent);border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.7rem 1.15rem;font-weight:800;text-decoration:none;transition:border-color .18s,color .18s,transform .18s,background .18s;display:inline-flex}.hero-action:hover{transform:translateY(-2px)}.hero-action-primary{color:var(--color-bg);background:var(--color-link)}.hero-action-primary:hover{color:var(--color-bg);background:var(--color-link-hover)}.hero-action-secondary{color:var(--color-text);background:var(--color-panel-strong)}.action-icon{flex:none;width:1.18rem;height:1.18rem}svg.action-icon{fill:currentColor}.hero-action-primary .action-icon{filter:brightness(0)invert()}.hero-action-secondary:hover{border-color:var(--color-ice-strong);color:var(--color-link-hover)}.profile-portrait{width:min(82vw,28rem);filter:drop-shadow(0 2rem 3.4rem color-mix(in srgb, var(--color-shadow) 86%, transparent));margin:0 auto;position:relative}.profile-portrait:before,.profile-portrait:after{content:"";pointer-events:none;border-radius:2.2rem;position:absolute}.profile-portrait:before{z-index:-1;background:radial-gradient(circle at 28% 12%, color-mix(in srgb, var(--color-frost) 52%, transparent), transparent 9rem), radial-gradient(circle at 78% 72%, color-mix(in srgb, var(--color-ice-strong) 28%, transparent), transparent 11rem), color-mix(in srgb, var(--color-panel-strong) 24%, transparent);filter:blur(4px);inset:-1.05rem}.profile-portrait:after{z-index:3;border:1px solid color-mix(in srgb, var(--color-frost) 88%, transparent);box-shadow:inset 0 0 1.65rem color-mix(in srgb, var(--color-frost) 34%, transparent), inset 0 -1.25rem 2.3rem color-mix(in srgb, var(--color-ice-strong) 18%, transparent);inset:-.32rem}.profile-photo-frame{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--color-ice-edge) 92%, transparent);background:radial-gradient(circle at 34% 18%, color-mix(in srgb, var(--color-frost) 38%, transparent), transparent 8rem), radial-gradient(circle at 72% 82%, color-mix(in srgb, var(--color-ice) 30%, transparent), transparent 12rem), color-mix(in srgb, var(--color-panel-strong) 34%, transparent);box-shadow:inset 0 0 1.25rem color-mix(in srgb, var(--color-bg-wind) 42%, transparent), inset 0 -1rem 2.2rem color-mix(in srgb, var(--color-ice-strong) 18%, transparent);border-radius:1.75rem;position:relative;overflow:hidden}.profile-photo-frame:before,.profile-photo-frame:after{z-index:2;border-radius:inherit;content:"";pointer-events:none;position:absolute;inset:0}.profile-photo-frame:before{background:radial-gradient(circle at 22% 24%, color-mix(in srgb, var(--color-snow) 46%, transparent) 0 .08rem, transparent .09rem), radial-gradient(circle at 66% 18%, color-mix(in srgb, var(--color-frost) 52%, transparent) 0 .07rem, transparent .08rem), radial-gradient(circle at 84% 58%, color-mix(in srgb, var(--color-snow) 42%, transparent) 0 .085rem, transparent .095rem), radial-gradient(circle at 40% 82%, color-mix(in srgb, var(--color-frost) 46%, transparent) 0 .075rem, transparent .085rem);mix-blend-mode:overlay;opacity:.34;background-size:7rem 8rem,9rem 7rem,10rem 11rem,8rem 10rem}.profile-photo-frame:after{background:radial-gradient(ellipse at 50% 2%, color-mix(in srgb, var(--color-bg-wind) 30%, transparent), transparent 13rem), radial-gradient(ellipse at 50% 108%, color-mix(in srgb, var(--color-ice-strong) 18%, transparent), transparent 14rem), color-mix(in srgb, var(--color-ice) 7%, transparent);-webkit-backdrop-filter:blur(.25px)saturate(1.08);backdrop-filter:blur(.25px)saturate(1.08)}.profile-photo-frame img{object-fit:cover;object-position:center 38%;filter:saturate(1.16)contrast(1.04)brightness(1.02);width:100%;height:100%;transform:scale(1.015)}.quick-links{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:.2rem;display:flex}.quick-link{border:1px solid color-mix(in srgb, var(--color-ice-edge) 82%, transparent);min-height:2.95rem;color:var(--color-text);background:color-mix(in srgb, var(--color-panel-strong) 78%, transparent);box-shadow:0 .9rem 1.9rem color-mix(in srgb, var(--color-shadow) 58%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:999px;align-items:center;gap:.5rem;padding:.58rem .9rem;font-size:.94rem;font-weight:800;line-height:1.15;text-decoration:none;transition:border-color .18s,color .18s,transform .18s,background .18s;display:inline-flex}.quick-link:hover{border-color:var(--color-ice-strong);color:var(--color-link-hover);background:var(--color-panel-strong);transform:translateY(-2px)}.quick-link img{object-fit:contain;width:1.25rem;height:1.25rem}:root:not([data-theme=light]) .quick-link img{filter:drop-shadow(0 0 .4rem color-mix(in srgb, var(--color-frost) 28%, transparent))}.content-section{text-align:center;justify-items:center;padding:4.5rem 0;display:grid}.section-heading-row{justify-items:center;gap:.4rem;margin-bottom:1.5rem;display:grid}.content-section h2{letter-spacing:-.045em;max-width:12ch;margin:0;font-size:clamp(2.3rem,6vw,4.8rem);line-height:1.05}.foundry-section-summary{max-width:39rem;color:var(--color-text-muted);margin:0;font-size:clamp(1rem,1.8vw,1.15rem);line-height:1.55}.foundry-page-flow{padding-top:5rem}.foundry-hero-section{text-align:center;justify-items:center;min-height:min(40rem,76svh);padding:clamp(3.25rem,7vw,4.75rem) 0 clamp(3.5rem,7vw,5rem);scroll-margin-top:7rem;display:grid}.foundry-hero-copy{justify-items:center;width:100%;display:grid}.foundry-hero-eyebrow{color:var(--color-link);letter-spacing:.08em;text-transform:uppercase;text-shadow:0 0 1rem color-mix(in srgb, var(--color-link) 28%, transparent);margin:0 0 .85rem;font-size:clamp(.9rem,1.6vw,1.02rem);font-weight:900;line-height:1.2}.foundry-hero-section h1{letter-spacing:-.055em;width:min(13ch,100%);margin:0;font-size:clamp(3.2rem,7vw,6.5rem);line-height:.96}.foundry-route-summary{max-width:42rem;color:var(--color-text);margin-top:1.2rem;font-size:clamp(1.08rem,2vw,1.35rem);font-weight:700}.foundry-route-detail{max-width:44rem;color:var(--color-text-muted);margin:.85rem 0 0;font-size:clamp(1rem,1.8vw,1.16rem);line-height:1.65}.foundry-route-actions{flex-wrap:wrap;justify-content:center;gap:.8rem;margin-top:2rem;display:flex}.foundry-route-cta{width:fit-content}.foundry-proof-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;width:min(100%,60rem);margin-top:clamp(2rem,4vw,2.8rem);display:grid}.foundry-proof-item{border:1px solid color-mix(in srgb, var(--color-ice-edge) 70%, transparent);background:radial-gradient(circle at 86% 0%, color-mix(in srgb, var(--color-frost) 42%, transparent), transparent 10rem), radial-gradient(circle at 4% 100%, color-mix(in srgb, var(--color-ice) 22%, transparent), transparent 9rem), color-mix(in srgb, var(--color-panel-strong) 66%, transparent);min-height:8.25rem;box-shadow:0 .9rem 2rem color-mix(in srgb, var(--color-shadow) 46%, transparent);text-align:left;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-radius:.82rem;align-content:start;padding:.95rem 1rem;display:grid;position:relative;overflow:hidden}.foundry-proof-item:before{border-radius:inherit;background:linear-gradient(135deg, color-mix(in srgb, var(--color-frost) 14%, transparent), transparent 42%);content:"";pointer-events:none;position:absolute;inset:0}.foundry-proof-item>*{position:relative}.foundry-proof-label{max-width:none;color:var(--color-link);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.92rem;font-weight:900;line-height:1.1}.foundry-proof-item p{color:var(--color-text-muted);margin:.4rem 0 0;font-size:.92rem;line-height:1.4}.foundry-section{padding-block:clamp(3.25rem,7vw,5rem)}.foundry-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;width:min(100%,68rem);display:grid}.foundry-services-list{border-top:1px solid color-mix(in srgb, var(--color-ice-edge) 72%, transparent);border-bottom:1px solid color-mix(in srgb, var(--color-ice-edge) 52%, transparent);width:min(100%,68rem);display:grid}.foundry-service-item{text-align:left;grid-template-columns:minmax(12rem,.95fr) minmax(12rem,1fr) minmax(12rem,1fr);align-items:start;gap:clamp(1rem,3vw,2rem);padding:clamp(1.1rem,3vw,1.55rem) 0;display:grid;position:relative}.foundry-service-item+.foundry-service-item{border-top:1px solid color-mix(in srgb, var(--color-ice-edge) 42%, transparent)}.foundry-service-item:before{background:linear-gradient(90deg, var(--color-link), transparent);content:"";opacity:0;pointer-events:none;width:min(16rem,36%);height:1px;position:absolute;top:-1px;left:0}.foundry-service-item:first-child:before,.foundry-service-item:hover:before{opacity:.85}.foundry-service-intro{gap:.55rem;display:grid}.foundry-service-intro h3{color:var(--color-text);letter-spacing:-.04em;margin:0;font-size:clamp(1.45rem,3vw,2.1rem);line-height:1}.foundry-service-intro p{color:var(--color-text-muted);margin:0;line-height:1.55}.foundry-difference-band{border-block:1px solid color-mix(in srgb, var(--color-ice-edge) 54%, transparent);grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.5rem,4vw,3.4rem);width:min(100%,68rem);padding-block:clamp(1.7rem,4vw,2.45rem);display:grid;position:relative}.foundry-difference-band:before{background:linear-gradient(90deg, var(--color-link), transparent);content:"";opacity:.72;pointer-events:none;width:min(16rem,34%);height:1px;position:absolute;top:-1px;left:0}.foundry-difference-item{text-align:left;align-content:start;gap:.65rem;min-width:0;padding:0;display:grid;position:relative}.foundry-difference-item+.foundry-difference-item{border-left:1px solid color-mix(in srgb, var(--color-ice-edge) 38%, transparent);padding-left:clamp(1.2rem,3vw,2.1rem)}.foundry-difference-item h3{color:var(--color-text);margin:0;font-size:clamp(1.1rem,1.9vw,1.32rem);line-height:1.08}.foundry-difference-item p{color:var(--color-text-muted);margin:0;font-size:clamp(.98rem,1.35vw,1.04rem);line-height:1.58}.foundry-service-detail{gap:.35rem;min-width:0;display:grid}.foundry-service-detail p{margin:0}.foundry-service-label{width:fit-content;color:var(--color-link);letter-spacing:.07em;text-transform:uppercase;font-size:.78rem;font-weight:900;line-height:1.15}.foundry-service-outcome{color:var(--color-text);font-weight:700}.foundry-founder-strengths{flex-wrap:wrap;gap:.5rem;margin:1.05rem 0 0;padding:0;list-style:none;display:flex}.foundry-founder-strengths li{border:1px solid color-mix(in srgb, var(--color-ice-edge) 76%, transparent);color:var(--color-text);background:color-mix(in srgb, var(--color-panel) 72%, transparent);border-radius:999px;padding:.4rem .66rem;font-size:.86rem;font-weight:800;line-height:1.15}.foundry-case-study{border-block:1px solid color-mix(in srgb, var(--color-ice-edge) 56%, transparent);text-align:left;width:min(100%,68rem);padding-block:clamp(1.7rem,4vw,2.45rem);display:grid;position:relative}.foundry-case-study:before{background:linear-gradient(90deg, var(--color-link), transparent);content:"";opacity:.72;pointer-events:none;width:min(18rem,38%);height:1px;position:absolute;top:-1px;left:0}.foundry-case-study>*{position:relative}.foundry-case-study-header{max-width:48rem;display:grid}.foundry-section-eyebrow{color:var(--color-link);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .45rem;font-size:.86rem;font-weight:900}.foundry-case-study h2{max-width:16ch;margin:0;font-size:clamp(2rem,5vw,4rem);line-height:1.02}.foundry-case-study-summary{max-width:42rem;color:var(--color-text);margin:1rem 0 0;font-size:clamp(1rem,1.8vw,1.18rem);font-weight:700;line-height:1.55}.foundry-case-study-context{flex-wrap:wrap;gap:.5rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.foundry-case-study-context li{border:1px solid color-mix(in srgb, var(--color-ice-edge) 76%, transparent);color:var(--color-text);background:color-mix(in srgb, var(--color-panel) 72%, transparent);border-radius:999px;padding:.4rem .66rem;font-size:.86rem;font-weight:800;line-height:1.15}.foundry-case-study-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(1.5rem,4vw,3.4rem);margin-top:clamp(1.6rem,4vw,2.2rem);display:grid}.foundry-case-study-grid article{border-top:1px solid color-mix(in srgb, var(--color-ice-edge) 64%, transparent);align-content:start;padding-top:.9rem;display:grid;position:relative}.foundry-case-study-grid h3{color:var(--color-text);margin:0;font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.1}.foundry-case-study-grid p{color:var(--color-text-muted);margin-top:.65rem}.foundry-steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(.7rem,2vw,1.15rem);width:min(100%,70rem);padding-top:1.15rem;display:grid;position:relative}.foundry-steps:before{background:color-mix(in srgb, var(--color-link) 54%, transparent);height:1px;box-shadow:0 0 1.1rem color-mix(in srgb, var(--color-link) 26%, transparent);content:"";pointer-events:none;position:absolute;top:2.3rem;left:1.5rem;right:.65rem}.foundry-steps:after{border-top:1px solid color-mix(in srgb, var(--color-link) 78%, transparent);border-right:1px solid color-mix(in srgb, var(--color-link) 78%, transparent);width:.56rem;height:.56rem;filter:drop-shadow(0 0 .45rem color-mix(in srgb, var(--color-link) 36%, transparent));content:"";pointer-events:none;position:absolute;top:2.02rem;right:.35rem;transform:rotate(45deg)}.foundry-step{text-align:left;align-content:start;justify-items:start;min-width:0;display:grid;position:relative}.foundry-step-number{z-index:1;border:1px solid color-mix(in srgb, var(--color-ice-edge) 78%, transparent);width:2.25rem;height:2.25rem;color:var(--color-link);background:var(--color-bg);box-shadow:0 0 0 .35rem color-mix(in srgb, var(--color-bg) 72%, transparent), 0 0 1rem color-mix(in srgb, var(--color-link) 22%, transparent);border-radius:50%;justify-content:center;align-items:center;margin-bottom:.85rem;padding:0;font-size:.8rem;font-weight:900;line-height:1;display:inline-flex;position:relative}.foundry-step h3{color:var(--color-text);letter-spacing:-.025em;margin:0;font-size:clamp(1.08rem,2vw,1.35rem);line-height:1.08}.foundry-step p{color:var(--color-text-muted);margin:.55rem 0 0;font-size:.95rem;line-height:1.48}.foundry-founder{padding-bottom:clamp(2rem,5vw,3.5rem)}.foundry-founder-header{text-align:center;justify-items:center;width:min(100%,52rem);display:grid}.foundry-founder-header h2{letter-spacing:-.045em;max-width:12ch;margin:0;font-size:clamp(2.3rem,6vw,4.8rem);line-height:1.05}.foundry-founder-header .foundry-section-eyebrow{margin:.85rem 0 0}.foundry-founder-layout{text-align:left;grid-template-columns:minmax(12rem,.72fr) minmax(0,1fr);align-items:center;gap:clamp(1.4rem,5vw,4rem);width:min(100%,58rem);margin-top:clamp(1.5rem,4vw,2.6rem);display:grid}.foundry-founder-portrait{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--color-link) 52%, transparent);background:radial-gradient(circle at 50% 100%, color-mix(in srgb, var(--color-link) 18%, transparent), transparent 60%), color-mix(in srgb, var(--color-panel-strong) 62%, transparent);width:min(100%,18rem);box-shadow:0 1.4rem 3rem color-mix(in srgb, var(--color-shadow) 58%, transparent), 0 0 1.8rem color-mix(in srgb, var(--color-link) 22%, transparent);border-radius:.85rem;justify-self:end;margin:0;position:relative;overflow:hidden}.foundry-founder-portrait:before{z-index:1;background:linear-gradient(180deg, transparent 58%, color-mix(in srgb, var(--color-link) 16%, transparent)), radial-gradient(circle at 20% 16%, color-mix(in srgb, var(--color-frost) 18%, transparent), transparent 42%);content:"";pointer-events:none;position:absolute;inset:0}.foundry-founder-portrait img{object-fit:cover;width:100%;height:100%;display:block}.foundry-founder-copy{text-align:left;justify-self:start;justify-items:start;gap:1.2rem;max-width:36rem;display:grid}.foundry-founder-copy p{color:var(--color-text-muted);margin:0;font-size:clamp(1.05rem,2vw,1.22rem)}.foundry-founder-strengths{justify-content:center}.foundry-founder-closing{color:var(--color-text);font-weight:750}.experience-section{--experience-card-count:3;--experience-scroll-segment:100svh;--experience-track-height:calc(var(--experience-card-count) * var(--experience-scroll-segment));padding:0}.experience-scroll-track{width:100%;min-height:var(--experience-track-height);justify-items:center;display:grid}.experience-sticky-viewport{align-content:center;justify-items:center;width:100%;height:100dvh;min-height:38rem;padding:clamp(1rem,3svh,1.75rem) 0;display:grid;position:sticky;top:0}.experience-sticky-viewport .section-heading-row{margin-bottom:clamp(.85rem,2svh,1.25rem)}.experience-card-stage{perspective:1200px;perspective-origin:50%;justify-items:center;width:min(100%,58rem);min-height:clamp(27rem,62svh,34rem);display:grid;position:relative}.experience-list{width:100%;min-height:inherit;transform-style:preserve-3d;justify-self:center;gap:0;display:grid;position:relative}.experience-card{min-height:inherit;border:1px solid color-mix(in srgb, var(--color-ice-edge) 82%, transparent);background:radial-gradient(circle at 10% 0%, color-mix(in srgb, var(--color-frost) 52%, transparent), transparent 18rem), color-mix(in srgb, var(--color-panel-strong) 76%, transparent);box-shadow:0 1.4rem 3rem color-mix(in srgb, var(--color-shadow) 70%, transparent);opacity:var(--experience-card-opacity);text-align:left;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);filter:var(--experience-card-filter);transform:var(--experience-card-transform);transform-origin:50%;will-change:transform, opacity, filter;border-radius:.9rem;align-content:start;padding:clamp(1rem,2.5vw,1.35rem);display:grid;position:absolute;inset:0;overflow:hidden}.experience-card[data-experience-card-state=active]{pointer-events:auto}.experience-card[data-experience-card-state=future],.experience-card[data-experience-card-state=past]{pointer-events:none}.experience-card:before{border-radius:inherit;background:radial-gradient(circle at 86% 18%, color-mix(in srgb, var(--color-ice) 38%, transparent), transparent 16rem);content:"";pointer-events:none;position:absolute;inset:0}.experience-card>*{position:relative}.experience-card-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1rem;display:grid}.experience-card h3{max-width:18ch;color:var(--color-text);letter-spacing:-.05em;margin:0;font-size:clamp(1.75rem,4vw,2.65rem);line-height:.98}.experience-company{color:var(--color-link);margin-top:.5rem;font-size:clamp(1rem,2vw,1.18rem);font-weight:850}.experience-dates{border:1px solid color-mix(in srgb, var(--color-ice-edge) 78%, transparent);color:var(--color-text-muted);background:color-mix(in srgb, var(--color-panel) 82%, transparent);white-space:nowrap;border-radius:999px;padding:.34rem .65rem;font-size:.88rem;font-weight:800}.experience-summary{color:var(--color-text-muted);margin-top:.9rem}.experience-proof-list{color:var(--color-text);gap:.42rem;margin:1rem 0 0;padding-left:1.1rem;display:grid}.experience-proof-list li::marker{color:var(--color-link)}.experience-tags{flex-wrap:wrap;gap:.58rem;margin:1.05rem 0 0;padding:0;list-style:none;display:flex}.experience-tags li{border:1px solid color-mix(in srgb, var(--color-ice-edge) 78%, transparent);color:var(--color-text);background:color-mix(in srgb, var(--color-panel) 72%, transparent);border-radius:999px;padding:.46rem .78rem;font-size:.94rem;font-weight:800;line-height:1.15}.project-grid{grid-template-columns:repeat(2,minmax(20rem,1fr));gap:1rem;width:min(100%,68rem);display:grid}.project-gallery{gap:clamp(.78rem,1.8vw,1rem);width:min(100%,68rem);display:grid}.project-focus-card{background:linear-gradient(135deg, color-mix(in srgb, var(--color-panel) 88%, transparent), color-mix(in srgb, var(--color-panel-strong) 72%, transparent));width:100%;min-height:clamp(30rem,58vw,38rem);box-shadow:0 1rem 2.2rem color-mix(in srgb, var(--color-shadow) 52%, transparent), inset 0 1px 0 color-mix(in srgb, var(--color-frost) 18%, transparent), inset 0 0 1.4rem color-mix(in srgb, var(--color-frost) 8%, transparent), inset 0 -1rem 1.8rem color-mix(in srgb, var(--color-shadow) 16%, transparent);grid-template-rows:auto 1fr;grid-template-columns:minmax(14rem,.82fr) minmax(0,1.18fr);align-items:stretch;gap:clamp(1rem,2.5vw,1.5rem)}.project-focus-visual{aspect-ratio:.82;border:1px solid color-mix(in srgb, var(--color-ice-edge) 72%, transparent);background:linear-gradient(145deg, color-mix(in srgb, var(--color-panel-strong) 58%, transparent), color-mix(in srgb, var(--color-panel) 74%, transparent));min-height:100%;box-shadow:inset 0 1px 0 color-mix(in srgb, var(--color-frost) 14%, transparent), inset 0 0 1.4rem color-mix(in srgb, var(--color-frost) 8%, transparent);border-radius:.85rem;place-items:center;display:grid}.project-visual-icon{fill:none;width:min(52%,9rem);min-width:5.5rem;stroke:var(--color-ice-strong);stroke-linecap:round;stroke-linejoin:round;stroke-width:2.8px;filter:drop-shadow(0 0 1.2rem color-mix(in srgb, var(--color-frost) 34%, transparent))}.project-focus-content{align-content:start;min-width:0;display:grid}.project-focus-card[data-project-focus-morphing=true]{opacity:0;transition-duration:0s}.project-selector-row{overscroll-behavior-inline:contain;scroll-snap-type:x proximity;scrollbar-width:none;background:0 0;gap:.75rem;width:100%;padding-block:.12rem .45rem;display:flex;overflow-x:auto}.project-selector-row::-webkit-scrollbar{display:none}.project-selector-card{appearance:none;border:1px solid color-mix(in srgb, var(--color-ice-edge) 78%, transparent);min-height:4.25rem;color:var(--color-text);background:linear-gradient(135deg, color-mix(in srgb, var(--color-panel) 88%, transparent), color-mix(in srgb, var(--color-panel-strong) 72%, transparent));box-shadow:0 .38rem .9rem color-mix(in srgb, var(--color-shadow) 34%, transparent), inset 0 1px 0 color-mix(in srgb, var(--color-frost) 18%, transparent), inset 0 0 1.4rem color-mix(in srgb, var(--color-frost) 8%, transparent), inset 0 -1rem 1.8rem color-mix(in srgb, var(--color-shadow) 16%, transparent);font:inherit;text-align:left;text-shadow:0 0 .8rem color-mix(in srgb, var(--color-frost) 22%, transparent);cursor:pointer;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);scroll-snap-align:start;border-radius:.85rem;flex:1 0 12.5rem;padding:.8rem .95rem;font-size:clamp(.92rem,1.8vw,1rem);font-weight:850;line-height:1.12;transition:border-color .16s,box-shadow .16s,color .16s,opacity .14s;position:relative;overflow:hidden}.project-selector-card:disabled{color:var(--color-text);cursor:default}.project-selector-title{z-index:1;max-width:100%;font-family:var(--font-heading);letter-spacing:-.035em;font-weight:850;display:block;position:relative}.project-selector-card[data-project-selector-morphing=true]{opacity:0;transition-duration:0s}.project-selector-card:before{content:none;display:none}.project-selector-card:hover,.project-selector-card:focus-visible{border-color:var(--color-ice-strong);color:var(--color-link-hover);box-shadow:0 .42rem 1rem color-mix(in srgb, var(--color-shadow) 38%, transparent), inset 0 1px 0 color-mix(in srgb, var(--color-frost) 22%, transparent), inset 0 0 1.5rem color-mix(in srgb, var(--color-frost) 10%, transparent), inset 0 -1rem 1.8rem color-mix(in srgb, var(--color-shadow) 16%, transparent)}.project-morph-layer{z-index:180;border:1px solid color-mix(in srgb, var(--color-ice-edge) 82%, transparent);background:linear-gradient(135deg, color-mix(in srgb, var(--color-panel) 88%, transparent), color-mix(in srgb, var(--color-panel-strong) 72%, transparent));box-shadow:0 1rem 2.2rem color-mix(in srgb, var(--color-shadow) 52%, transparent), inset 0 1px 0 color-mix(in srgb, var(--color-frost) 18%, transparent), inset 0 0 1.4rem color-mix(in srgb, var(--color-frost) 8%, transparent), inset 0 -1rem 1.8rem color-mix(in srgb, var(--color-shadow) 16%, transparent);opacity:1;pointer-events:none;transform:translate3d(var(--project-morph-x), var(--project-morph-y), 0);-webkit-backdrop-filter:blur(22px)saturate(1.16);backdrop-filter:blur(22px)saturate(1.16);will-change:width, height, transform, opacity, filter;border-radius:.9rem;transition:width .52s cubic-bezier(.2,.86,.25,1) 60ms,height .52s cubic-bezier(.2,.86,.25,1) 60ms,transform .52s cubic-bezier(.2,.86,.25,1) 60ms,opacity .52s 60ms,filter .52s 60ms,border-radius .52s 60ms;display:grid;position:fixed;top:0;left:0;overflow:hidden}.project-morph-layer:before{content:none;display:none}.project-morph-layer-incoming{z-index:184;filter:none}.project-morph-layer-outgoing{z-index:178;box-shadow:0 .38rem .9rem color-mix(in srgb, var(--color-shadow) 34%, transparent), inset 0 1px 0 color-mix(in srgb, var(--color-frost) 18%, transparent), inset 0 0 1.4rem color-mix(in srgb, var(--color-frost) 8%, transparent), inset 0 -1rem 1.8rem color-mix(in srgb, var(--color-shadow) 16%, transparent);opacity:1;filter:none}.project-morph-layer-outgoing:before{display:none}.project-morph-layer-shift{z-index:174;border-radius:.85rem}.project-morph-surface{text-align:center;place-items:center;gap:clamp(.42rem,1.4vw,.8rem);min-width:0;height:100%;padding:clamp(.75rem,2vw,1.25rem);display:grid;position:relative}.project-morph-detail{z-index:1;grid-template-columns:minmax(14rem,.82fr) minmax(0,1.18fr);align-items:stretch;gap:clamp(1rem,2.5vw,1.5rem);min-height:0;display:grid;position:absolute;inset:calc(clamp(1rem,2.3vw,1.25rem) + clamp(1.46rem,3.024vw,2.052rem) + clamp(1rem,2.5vw,1.5rem)) clamp(1rem,2.3vw,1.25rem) clamp(1rem,2.3vw,1.25rem)}.project-morph-layer-outgoing .project-morph-detail{opacity:1;filter:blur();transition:opacity 60ms,transform 60ms,filter 60ms;transform:scale(1)}.project-morph-layer-outgoing[data-project-morph-active=true] .project-morph-detail{opacity:0;filter:blur(.65rem);transform:scale(.92)}.project-morph-layer-incoming .project-morph-detail{opacity:0;filter:blur(.65rem);transition:opacity 80ms .58s,transform 80ms .58s,filter 80ms .58s;transform:scale(.92)}.project-morph-layer-incoming[data-project-morph-active=true] .project-morph-detail{opacity:1;filter:blur();transform:scale(1)}.project-morph-visual{border:1px solid color-mix(in srgb, var(--color-ice-edge) 60%, transparent);background:linear-gradient(145deg, color-mix(in srgb, var(--color-panel-strong) 58%, transparent), color-mix(in srgb, var(--color-panel) 74%, transparent));height:100%;box-shadow:inset 0 1px 0 color-mix(in srgb, var(--color-frost) 14%, transparent), inset 0 0 1.4rem color-mix(in srgb, var(--color-frost) 8%, transparent);border-radius:.75rem;place-items:center;display:grid}.project-morph-visual .project-visual-icon{width:min(52%,9rem);min-width:5.5rem}.project-morph-content{text-align:left;align-content:start;min-width:0;display:grid}.project-morph-title-layer{z-index:190;color:var(--project-morph-title-color);font-family:var(--project-morph-title-font-family);font-size:var(--project-morph-title-font-size);font-weight:var(--project-morph-title-font-weight);line-height:var(--project-morph-title-line-height);letter-spacing:var(--project-morph-title-letter-spacing);text-align:left;text-shadow:var(--project-morph-title-shadow);pointer-events:none;transform:translate3d(var(--project-morph-title-x), var(--project-morph-title-y), 0);transform-origin:0 0;will-change:width, height, transform, font-size, color;transition:width .52s cubic-bezier(.2,.86,.25,1) 60ms,height .52s cubic-bezier(.2,.86,.25,1) 60ms,transform .52s cubic-bezier(.2,.86,.25,1) 60ms,font-size .52s cubic-bezier(.2,.86,.25,1) 60ms,line-height .52s cubic-bezier(.2,.86,.25,1) 60ms,letter-spacing .52s cubic-bezier(.2,.86,.25,1) 60ms,color .52s 60ms,text-shadow .52s 60ms,opacity .12s;position:fixed;top:0;left:0;overflow:visible}.project-morph-title-layer-incoming{z-index:194}.project-morph-title-layer-outgoing{z-index:188}.project-morph-title-layer-shift{z-index:186}.project-card{border:1px solid color-mix(in srgb, var(--color-ice-edge) 78%, transparent);background:linear-gradient(135deg, color-mix(in srgb, var(--color-panel) 88%, transparent), color-mix(in srgb, var(--color-panel-strong) 72%, transparent));min-height:100%;box-shadow:0 1rem 2.2rem color-mix(in srgb, var(--color-shadow) 52%, transparent), inset 0 1px 0 color-mix(in srgb, var(--color-frost) 18%, transparent), inset 0 0 1.4rem color-mix(in srgb, var(--color-frost) 8%, transparent), inset 0 -1rem 1.8rem color-mix(in srgb, var(--color-shadow) 16%, transparent);text-align:left;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:.9rem;align-content:start;padding:clamp(1rem,2.3vw,1.25rem);display:grid;position:relative;overflow:hidden}.project-card:before{content:none;display:none}.project-card>*{position:relative}.project-card-header{text-align:center;grid-column:1/-1;width:100%}.project-card h3{font-family:var(--font-heading);letter-spacing:-.035em;margin:0;font-size:clamp(1.35rem,2.8vw,1.9rem);font-weight:850;line-height:1.08}.project-summary{color:var(--color-text-muted);margin-top:.85rem}.project-proof-list{color:var(--color-text);gap:.42rem;margin:1rem 0 0;padding-left:1.1rem;display:grid}.project-proof-list li::marker{color:var(--color-link)}.project-stack{flex-wrap:wrap;gap:.58rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.project-stack li{border:1px solid color-mix(in srgb, var(--color-ice-edge) 76%, transparent);color:var(--color-text);background:color-mix(in srgb, var(--color-panel) 72%, transparent);border-radius:999px;padding:.46rem .78rem;font-size:.94rem;font-weight:800;line-height:1.15}.project-links{flex-wrap:wrap;gap:.58rem;margin-top:1.1rem;display:flex}.project-links a,.project-links span{border:1px solid color-mix(in srgb, var(--color-ice-edge) 78%, transparent);background:color-mix(in srgb, var(--color-panel-strong) 72%, transparent);border-radius:999px;align-items:center;gap:.5rem;padding:.46rem .78rem;font-size:.94rem;font-weight:850;line-height:1.15;text-decoration:none;display:inline-flex}.project-link-icon{flex:none;width:1.12rem;height:1.12rem}svg.project-link-icon{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px}:root:not([data-theme=light]) .project-link-icon{filter:drop-shadow(0 0 .35rem color-mix(in srgb, var(--color-frost) 24%, transparent))}.project-links span{color:var(--color-text-muted)}.project-links a:hover{border-color:var(--color-ice-strong);color:var(--color-link-hover)}.skills-chart{--skill-bubble-size:clamp(3.4rem, 6vw, 4.4rem);--skill-icon-size:1.9rem;cursor:default;flex-direction:column;align-items:center;gap:3.1rem;width:100%;min-height:auto;padding:.2rem 0 1rem;display:flex}.skills-chart-group{flex-direction:column;align-items:flex-start;display:flex}.skills-chart-label{z-index:1;color:var(--color-text);align-items:center;gap:.7rem;margin:0 0 1rem;font-size:clamp(1.05rem,2vw,1.35rem);font-weight:900;line-height:1;display:flex}.skill-icon{border:1px solid color-mix(in srgb, var(--color-ice-edge) 82%, transparent);width:2.5rem;height:2.5rem;color:var(--color-link);background:color-mix(in srgb, var(--color-panel) 78%, transparent);fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.65px;border-radius:.72rem;flex:none;padding:.42rem}.skills-chart-row{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:.8rem;display:flex}.skill-bubble{z-index:2;flex:0 0 var(--skill-bubble-size);width:var(--skill-bubble-size);height:var(--skill-bubble-size);border:1px solid color-mix(in srgb, var(--skill-color) 48%, var(--color-ice-edge));color:var(--color-text);background:radial-gradient(circle at 42% 30%, color-mix(in srgb, var(--skill-color) 14%, transparent), transparent 58%), color-mix(in srgb, var(--color-panel-strong) 80%, transparent);box-shadow:0 .7rem 1.4rem color-mix(in srgb, var(--color-shadow) 42%, transparent), inset 0 1px 0 color-mix(in srgb, var(--color-frost) 16%, transparent);transform-origin:50%;will-change:transform, filter;border-radius:999px;outline:none;place-items:center;padding:0;transition:border-color .18s,background .18s,box-shadow .18s,filter .18s,transform .18s cubic-bezier(.2,.86,.25,1);display:grid;position:relative;top:auto;left:auto;transform:none}.skill-bubble-icon{width:var(--skill-icon-size);height:var(--skill-icon-size);object-fit:contain;filter:drop-shadow(0 0 0 color-mix(in srgb, var(--skill-color) 0%, transparent));transition:filter .18s;display:block}:root:not([data-theme=light]) .skill-bubble[data-skill-invert-icon=true] .skill-bubble-icon{filter:invert(1) drop-shadow(0 0 0 color-mix(in srgb, var(--skill-color) 0%, transparent))}.skill-bubble-monogram{color:var(--skill-color);place-items:center;font-size:.86rem;font-weight:800;line-height:1;display:grid}.skill-tooltip{border:1px solid color-mix(in srgb, var(--skill-color) 54%, var(--color-ice-edge));width:max-content;max-width:min(12rem,100vw - 2rem);color:var(--color-text);background:var(--route-transition-base);box-shadow:0 .55rem 1.2rem color-mix(in srgb, var(--color-shadow) 46%, transparent);opacity:0;pointer-events:none;border-radius:999px;padding:.35rem .62rem;font-size:.82rem;font-weight:850;line-height:1.1;transition:opacity .12s,transform .12s;position:absolute;top:calc(100% + .48rem);bottom:auto;left:50%;transform:translate(-50%)translateY(-.18rem)}.skill-bubble:hover,.skill-bubble:focus-visible{z-index:8;border-color:color-mix(in srgb, var(--skill-color) 82%, var(--color-frost));background:radial-gradient(circle at 42% 30%, color-mix(in srgb, var(--skill-color) 24%, transparent), transparent 62%), color-mix(in srgb, var(--color-panel-strong) 90%, transparent);box-shadow:0 0 1.6rem color-mix(in srgb, var(--skill-color) 52%, transparent), 0 1rem 2rem color-mix(in srgb, var(--color-shadow) 50%, transparent), inset 0 1px 0 color-mix(in srgb, var(--color-frost) 26%, transparent), inset 0 0 1.15rem color-mix(in srgb, var(--skill-color) 18%, transparent);filter:drop-shadow(0 0 .9rem color-mix(in srgb, var(--skill-color) 46%, transparent));transform:scale(1.16)}.skill-bubble:focus-visible{outline:2px solid color-mix(in srgb, var(--skill-color) 76%, var(--color-frost));outline-offset:.28rem}.skill-bubble:hover .skill-bubble-icon,.skill-bubble:focus-visible .skill-bubble-icon{filter:drop-shadow(0 0 .55rem color-mix(in srgb, var(--skill-color) 58%, transparent))}:root:not([data-theme=light]) .skill-bubble[data-skill-invert-icon=true]:hover .skill-bubble-icon,:root:not([data-theme=light]) .skill-bubble[data-skill-invert-icon=true]:focus-visible .skill-bubble-icon{filter:invert(1) drop-shadow(0 0 .55rem color-mix(in srgb, var(--skill-color) 58%, transparent))}.skill-bubble:hover .skill-tooltip,.skill-bubble:focus-visible .skill-tooltip{opacity:1;transform:translate(-50%)translateY(0)}.site-footer{width:min(100% - 2rem,72rem);color:var(--color-text);text-align:center;margin:0 auto;padding:clamp(4rem,8vw,6.5rem) 0 3rem}.footer-contact{justify-items:center;margin-inline:auto;display:grid;position:relative}.footer-contact h2{letter-spacing:-.055em;width:max-content;max-width:calc(100vw - 2rem);margin:0;font-size:clamp(3.2rem,7vw,6.5rem);line-height:.94}.footer-summary{max-width:38rem;color:var(--color-text-muted);margin:1.1rem auto 0;font-size:clamp(1.08rem,2vw,1.35rem)}.footer-links{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:2rem;display:flex}.footer-link{border:1px solid color-mix(in srgb, var(--color-ice-edge) 82%, transparent);min-height:2.95rem;color:var(--color-text);background:color-mix(in srgb, var(--color-panel-strong) 72%, transparent);border-radius:999px;justify-content:center;align-items:center;gap:.5rem;padding:.58rem .9rem;font-size:.94rem;font-weight:850;line-height:1.15;text-decoration:none;transition:border-color .18s,color .18s,transform .18s,background .18s;display:inline-flex}.footer-link:hover{border-color:var(--color-ice-strong);color:var(--color-link-hover);background:var(--color-panel-strong);transform:translateY(-2px)}.footer-link-primary{color:var(--color-bg);background:var(--color-link)}.footer-link-primary:hover{color:var(--color-bg);background:var(--color-link-hover)}.footer-link img{object-fit:contain;width:1.18rem;height:1.18rem}.footer-link-primary img{filter:brightness(0)invert()}:root:not([data-theme=light]) .footer-link:not(.footer-link-primary) img{filter:drop-shadow(0 0 .35rem color-mix(in srgb, var(--color-frost) 24%, transparent))}@media (width<=68rem){.page-flow{width:min(100% - 1.5rem,72rem)}.hero-section{min-height:auto;padding-top:4.25rem}.hero-section h1{max-width:calc(100vw - 1.5rem);font-size:clamp(4.25rem,10vw,7rem)}.profile-portrait{width:min(72vw,24rem)}.project-grid,.foundry-grid,.foundry-steps,.foundry-proof-strip,.foundry-case-study-grid{grid-template-columns:1fr;width:min(100%,42rem)}.project-gallery{width:min(100%,42rem)}.project-focus-card{grid-template-columns:minmax(12rem,.78fr) minmax(0,1.22fr);min-height:auto}.project-morph-detail{grid-template-columns:minmax(12rem,.78fr) minmax(0,1.22fr)}.project-focus-visual{min-height:100%}.foundry-services-list{width:min(100%,42rem)}.foundry-difference-band{grid-template-columns:1fr;gap:0;width:min(100%,42rem)}.foundry-difference-item+.foundry-difference-item{border-top:1px solid color-mix(in srgb, var(--color-ice-edge) 42%, transparent);border-left:0;margin-top:1.35rem;padding-top:1.35rem;padding-left:0}.foundry-service-item{grid-template-columns:1fr;gap:.85rem}.foundry-steps{gap:.85rem;padding-top:0}.foundry-steps:before{background:color-mix(in srgb, var(--color-link) 54%, transparent);width:1px;height:auto;inset:1.1rem auto .35rem 1.12rem}.foundry-steps:after{inset:auto auto .1rem .84rem;transform:rotate(135deg)}.foundry-founder-layout{text-align:center;grid-template-columns:1fr;justify-items:center;width:min(100%,42rem)}.foundry-founder-portrait{justify-self:center;width:min(68vw,17rem)}.foundry-founder-copy{text-align:center;justify-self:center;justify-items:center}.foundry-step{padding-left:clamp(3rem,8vw,3.4rem)}.foundry-step-number{margin-bottom:0;position:absolute;top:0;left:0}.experience-list{width:min(100%,42rem)}.skills-chart{--skill-bubble-size:clamp(3.2rem, 7vw, 4.05rem);--skill-icon-size:1.75rem}}.footer-legal{max-width:38rem;color:var(--color-text-muted);letter-spacing:.02em;opacity:.72;margin:2.2rem auto 0;font-size:.82rem;font-weight:650}@media (width<=48rem){.page-switcher{width:min(15rem,100vw - 6.25rem);min-width:0;top:.75rem;left:.75rem;transform:none}.page-switcher-link{min-height:2.75rem;padding:.54rem .42rem;font-size:.86rem}.page-switcher-icon{width:1rem;height:1rem}.theme-toggle{min-width:4.35rem;padding:.48rem .72rem;font-size:.9rem;top:.75rem;right:.75rem}.page-flow{width:min(100% - 1.25rem,72rem);padding-top:3.75rem}.foundry-page-flow{padding-top:3.75rem}.foundry-hero-section{min-height:auto;padding-top:2.5rem}.hero-section{gap:1rem;min-height:auto;padding:2.5rem 0 3.5rem}.hero-section h1{white-space:normal;width:min(12ch,100vw - 1.25rem);max-width:calc(100vw - 1.25rem);font-size:clamp(3.35rem,14vw,5.5rem)}.hero-role{font-size:clamp(1.55rem,8vw,2.55rem)}.hero-summary{font-size:1.05rem}.hero-actions{width:100%}.hero-action{flex:13rem}.profile-portrait{width:min(82vw,20rem)}.quick-links{width:min(100%,25rem)}.quick-link{flex:9rem;justify-content:center;min-height:2.75rem;padding-inline:.72rem}.content-section{padding:3.25rem 0}.experience-section{padding:0}.experience-sticky-viewport{min-height:100dvh;padding:clamp(.75rem,2.5svh,1.25rem) 0}.experience-sticky-viewport .section-heading-row{margin-bottom:clamp(.55rem,1.6svh,.85rem)}.experience-card-stage{perspective:900px;width:min(100%,27rem);min-height:min(34rem,100dvh - 7rem)}.experience-list{width:100%}.experience-card{padding:clamp(.82rem,3vw,1rem)}.experience-card-header{grid-template-columns:1fr;gap:.55rem}.experience-card h3{letter-spacing:-.035em;max-width:100%;font-size:clamp(1.35rem,6vw,1.9rem)}.experience-company{margin-top:.35rem;font-size:clamp(.9rem,3.8vw,1rem)}.experience-dates{width:fit-content;padding:.26rem .52rem;font-size:.76rem}.experience-summary{margin-top:.62rem;font-size:.9rem;line-height:1.38}.experience-proof-list{gap:.32rem;margin-top:.68rem;font-size:.88rem;line-height:1.35}.experience-tags{gap:.38rem;margin-top:.72rem}.experience-tags li{padding:.32rem .52rem;font-size:.76rem}.project-grid{grid-template-columns:1fr;width:100%}.project-gallery{width:100%}.project-focus-card{grid-template-rows:auto auto auto;grid-template-columns:1fr;min-height:0}.project-morph-detail{grid-template-rows:auto auto;grid-template-columns:1fr}.project-focus-visual,.project-morph-visual{aspect-ratio:16/9;min-height:clamp(10rem,38vw,13rem)}.project-selector-row{gap:.58rem}.project-selector-card{flex-basis:10.5rem;min-height:3.85rem;padding:.72rem .78rem}.skills-chart{--skill-bubble-size:3.65rem;--skill-icon-size:1.7rem}.foundry-grid,.foundry-steps,.foundry-proof-strip,.foundry-case-study-grid{grid-template-columns:1fr;width:100%}.foundry-services-list,.foundry-difference-band,.foundry-founder-layout{width:100%}.foundry-founder-portrait{border-radius:.75rem;width:min(76vw,15rem)}.site-footer{width:min(100% - 1.25rem,72rem);padding:3rem 0 2rem}.footer-links{grid-template-columns:1fr;display:grid}.footer-link{width:100%}}@media (width<=34rem){.page-flow{width:min(100% - 1rem,72rem)}.hero-section h1{width:min(12ch,100vw - 1rem);max-width:calc(100vw - 1rem);font-size:clamp(3rem,15vw,4.2rem)}.profile-portrait{width:min(88vw,18rem)}.profile-portrait:before{inset:-.65rem}.profile-portrait:after{inset:-.22rem}.profile-photo-frame{border-radius:1.25rem}.hero-actions{grid-template-columns:1fr;display:grid}.hero-action{width:100%}.skills-chart{--skill-bubble-size:3.25rem;--skill-icon-size:1.48rem;gap:2rem}.skills-chart-row{gap:.68rem}.skills-chart-label{gap:.55rem;margin-bottom:.5rem;font-size:1rem}.skill-icon{border-radius:.62rem;width:1.85rem;height:1.85rem;padding:.36rem}.skill-tooltip{font-size:.78rem}.experience-card,.project-card{border-radius:.75rem}.project-links a,.project-links span,.experience-tags li,.project-stack li{max-width:100%}.snow-layer-near{--snow-opacity:.18}.site-shell[data-route=foundry] .snow-layer-medium{--snow-opacity:.48}.site-shell[data-route=foundry] .snow-layer-near{--snow-opacity:.28}}@media (prefers-reduced-motion:reduce){.experience-section{padding:4.5rem 0}.experience-scroll-track{min-height:auto}.experience-sticky-viewport{min-height:auto;padding:0;position:static;top:auto}.experience-card-stage{perspective:none;min-height:auto}.experience-list{gap:1rem;min-height:auto;position:static}.experience-card{opacity:1;pointer-events:auto;filter:none;will-change:auto;min-height:0;position:relative;inset:auto;transform:none}.route-transition-veil{transition:none}.route-content{transition:none;animation:none}.page-switcher-active-pill,.page-switcher,.page-switcher-link,.hero-role{transition:none}.hero-role.is-hidden{opacity:1;filter:none;transform:none}.hero-action,.quick-link{transition:none}.hero-action:hover,.quick-link:hover{transform:none}.skill-bubble,.skill-bubble-icon,.skill-tooltip{transition:none}.skill-bubble:hover,.skill-bubble:focus-visible{transform:none}.skill-tooltip,.skill-bubble:hover .skill-tooltip,.skill-bubble:focus-visible .skill-tooltip{transform:translate(-50%)}.footer-link{transition:none}.footer-link:hover{transform:none}.snow-layer{animation:none;transform:none}}
