@font-face{font-family:Mulish;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/817e411a5e01ed4b-s.3mmhyaxk8nf40.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Mulish;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/69c910a8dbdebe03-s.2csjwd2kj9786.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Mulish;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/4aa1cac135eb7d75-s.31_j8g9fmg02t.woff2)format("woff2");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:Mulish;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/59000b645a38f9c6-s.0eweg9n4xoxd5.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Mulish;font-style:normal;font-weight:200 1000;font-display:swap;src:url(../media/fed68dff3ca987ed-s.p.12-p1fgtf6kxs.woff2)format("woff2");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:Mulish Fallback;src:local(Arial);ascent-override:96.56%;descent-override:24.02%;line-gap-override:0.0%;size-adjust:104.08%}.mulish_15a61264-module__4Jqj6a__className{font-family:Mulish,Mulish Fallback;font-style:normal}.mulish_15a61264-module__4Jqj6a__variable{--font-body:"Mulish", "Mulish Fallback"}
@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/32687112bd2dd8db-s.0v2ipp7s07_p9.woff2)format("woff2");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:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/28868e710e86be81-s.44ks8kcggj012.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.1ii7211jqpzi_.woff2)format("woff2");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:Space Grotesk Fallback;src:local(Arial);ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.0%;size-adjust:109.69%}.space_grotesk_287ae551-module__XeIgIq__className{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.space_grotesk_287ae551-module__XeIgIq__variable{--font-heading:"Space Grotesk", "Space Grotesk Fallback"}
@font-face{font-family:Caveat;font-style:normal;font-weight:400 700;font-display:swap;src:url(../media/da4b870ab52b3094-s.2uxt0u9yugpfw.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Caveat;font-style:normal;font-weight:400 700;font-display:swap;src:url(../media/86d70b7c76b6ec6e-s.2zeei6axiu3qn.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Caveat;font-style:normal;font-weight:400 700;font-display:swap;src:url(../media/11cc37d7380d16b4-s.27211fhlic14m.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Caveat;font-style:normal;font-weight:400 700;font-display:swap;src:url(../media/a85fe84266768609-s.p.00hx3ibfyf9qx.woff2)format("woff2");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:Caveat Fallback;src:local(Arial);ascent-override:124.77%;descent-override:38.99%;line-gap-override:0.0%;size-adjust:76.94%}.caveat_f799c735-module__BoK5Ma__className{font-family:Caveat,Caveat Fallback;font-style:normal}.caveat_f799c735-module__BoK5Ma__variable{--font-handwritten:"Caveat", "Caveat Fallback"}
:root{--bg:#fbf8f4;--bg-elev:#fff;--bg-alt:#f2ece4;--ink:#241019;--ink-soft:#5c4a52;--ink-faint:#766570;--line:#e8ded6;--line-soft:#f1eae2;--cool:#4b40e6;--mid:#7c4de0;--warm:#e07b12;--link:#4b40e6;--link-hover:#3a30c4;--grad:linear-gradient(100deg, var(--cool) 0%, var(--mid) 50%, var(--warm) 100%);--halo-cool:#4b40e638;--halo-warm:#e07b1233;--btn-face:#4b40e6;--btn-edge:#352bb0;--highlight:var(--cool);--shadow-sm:0 1px 2px #1b1e2e0d, 0 2px 8px #1b1e2e0d;--shadow-lg:0 10px 30px -12px #2b247838, 0 4px 10px -6px #1b1e2e14;--r-sm:9px;--r:14px;--r-lg:22px;--r-pill:999px;--font-sans:var(--font-body), system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display:var(--font-heading), var(--font-body), system-ui, sans-serif;--font-hand:var(--font-handwritten), "Segoe Print", ui-rounded, cursive;--measure:64ch;--wrap:1200px;--wrap-narrow:820px;--ease:cubic-bezier(.22, .61, .36, 1);--swap-dur:.35s;--swap-ease:cubic-bezier(.41, .1, .13, 1)}:root[data-theme=dark]{--bg:#0e1020;--bg-elev:#171a2e;--bg-alt:#14172a;--ink:#ecedf6;--ink-soft:#b3b7d1;--ink-faint:#8085a6;--line:#272b45;--line-soft:#1e2238;--cool:#8e86ff;--mid:#a98cff;--warm:#f6b45a;--link:#a39bff;--link-hover:#c3bdff;--halo-cool:#6e64ff42;--halo-warm:#f6b45a2e;--btn-face:#5b51f2;--btn-edge:#3a30c4;--shadow-sm:0 1px 2px #0000004d;--shadow-lg:0 18px 44px -18px #0009, 0 6px 16px -10px #00000080}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;transition:background-color var(--swap-dur) var(--swap-ease), color var(--swap-dur) var(--swap-ease);margin:0;font-size:1.0625rem;line-height:1.65}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;font-weight:700}a{color:var(--link);text-decoration:none}img,svg{max-width:100%;display:block}::selection{background:var(--halo-cool);color:var(--ink)}:focus-visible{outline:2.5px solid var(--cool);outline-offset:3px;border-radius:3px}.skip-link{background:var(--ink);color:var(--bg);border-radius:0 0 var(--r-sm) 0;z-index:100;padding:.6rem 1rem;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:clamp(1.1rem,4vw,2.5rem)}.wrap.narrow{max-width:var(--wrap-narrow)}.section{padding-block:clamp(5.5rem,12vw,11rem)}.section-alt{background:var(--bg-alt)}.prose{max-width:var(--measure)}.prose p{color:var(--ink-soft);margin:0 0 1.15rem;font-size:1.1875rem}.kicker{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.2em;color:var(--ink-soft);align-items:center;gap:.65rem;margin:0 0 1.5rem;font-size:.78rem;font-weight:600;display:flex}.kicker-mark{background:var(--grad);border-radius:2px;flex:none;width:11px;height:11px}.kicker-arrow{color:var(--cool);letter-spacing:0;font-size:1rem;font-weight:400}.section-title{letter-spacing:-.03em;max-width:16ch;margin:0 0 2rem;font-size:clamp(2.4rem,1rem + 6.5vw,5.5rem);line-height:1}.site-header{z-index:50;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(12px);transition:border-color .3s var(--ease), background-color .3s var(--ease);border-bottom:1px solid #0000;position:sticky;top:0}.site-header.scrolled{border-bottom-color:var(--line)}.nav{max-width:var(--wrap);align-items:center;gap:1.25rem;margin-inline:auto;padding:.85rem clamp(1.1rem,4vw,2.5rem);display:flex;position:relative}.brand{color:var(--ink);align-items:center;gap:.6rem;font-weight:600;display:inline-flex}.brand-name{letter-spacing:-.01em;font-size:.98rem}.brand-mark{flex:none;align-items:center;display:inline-flex}.brand-mark:after{content:"MP";font-family:var(--font-display);letter-spacing:-.07em;background:var(--grad);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text;font-size:1.25rem;font-weight:700;line-height:1}.brand-mark.small:after{font-size:1.05rem}.brand-mark.small{border-radius:6px;width:18px;height:18px}.nav-links{gap:.35rem;margin:0 auto 0 1rem;padding:0;list-style:none;display:flex}.nav-links a{color:var(--ink-soft);border-radius:var(--r-sm);transition:color .2s var(--ease), background-color .2s var(--ease);padding:.4rem .7rem;font-size:.93rem;font-weight:500;position:relative}.nav-links a:hover{color:var(--ink);background:var(--bg-alt)}.nav-links a.active{color:var(--ink)}.nav-links a.active:after{content:"";background:var(--grad);border-radius:2px;height:2px;position:absolute;bottom:.1rem;left:.7rem;right:.7rem}.nav-controls{align-items:center;gap:.6rem;display:flex}.menu-toggle{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--bg-elev);cursor:pointer;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:4px;width:38px;height:38px;display:none}.menu-toggle span{background:var(--ink);width:16px;height:2px;transition:transform .25s var(--ease);border-radius:2px;display:block}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3px)rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3px)rotate(-45deg)}.lang-toggle{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--bg-elev);align-items:center;padding:2px;display:inline-flex}.lang-btn{appearance:none;font:inherit;letter-spacing:.02em;color:var(--ink-faint);border-radius:var(--r-pill);cursor:pointer;transition:color .2s var(--ease), background-color .2s var(--ease);background:0 0;border:0;padding:.28rem .6rem;font-size:.78rem;font-weight:600}.lang-btn[aria-pressed=true]{color:#fff;background:var(--cool)}:root[data-theme=dark] .lang-btn[aria-pressed=true]{color:#12131f;background:var(--cool)}.lang-sep{background:var(--line);width:1px;height:14px}.theme-toggle{border:1px solid var(--line);border-radius:var(--r-pill);background:var(--bg-elev);cursor:pointer;width:38px;height:38px;transition:border-color .2s var(--ease), background-color .2s var(--ease);flex:none;place-items:center;display:grid;position:relative}.theme-toggle:hover{border-color:var(--ink-faint)}.theme-icon{transition:opacity .3s var(--ease), transform .4s var(--ease);position:absolute}.theme-icon.sun{background:var(--warm);width:16px;height:16px;box-shadow:0 0 0 3px color-mix(in srgb, var(--warm) 30%, transparent);border-radius:50%}.theme-icon.moon{width:15px;height:15px;box-shadow:inset -5px -3px 0 0 var(--cool);background:0 0;border-radius:50%;transform:rotate(-30deg)}:root[data-theme=light] .theme-icon.sun{opacity:1;transform:scale(1)}:root[data-theme=light] .theme-icon.moon{opacity:0;transform:scale(.4)rotate(-30deg)}:root[data-theme=dark] .theme-icon.sun{opacity:0;transform:scale(.4)}:root[data-theme=dark] .theme-icon.moon{opacity:1;transform:scale(1)rotate(-20deg)}.hero{padding-block:clamp(3.5rem,8vw,6.5rem) clamp(3rem,7vw,5.5rem);position:relative;overflow:hidden}.hero-aurora{background:radial-gradient(42% 55% at 18% 28%, var(--halo-cool), transparent 70%), radial-gradient(40% 50% at 82% 20%, var(--halo-warm), transparent 72%), radial-gradient(38% 48% at 60% 70%, color-mix(in srgb, var(--mid) 16%, transparent), transparent 72%);filter:blur(8px);z-index:0;height:120%;animation:drift 22s var(--ease) infinite alternate;position:absolute;inset:-20% -10% auto}@keyframes drift{0%{transform:translate(-2%,-1%)scale(1)}to{transform:translate(3%,2%)scale(1.08)}}.hero-canvas{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.hero-portrait-wrap{z-index:0;pointer-events:none;width:fit-content;height:min(78vh,720px);position:absolute;top:clamp(1rem,3vw,3.5rem);right:clamp(-2rem,-1vw,.5rem)}.hero-portrait{opacity:.95;filter:saturate(1.05);width:auto;height:100%;display:block;-webkit-mask-image:linear-gradient(#000 50%,#000000d9 72%,#0006 88%,#0000 100%);mask-image:linear-gradient(#000 50%,#000000d9 72%,#0006 88%,#0000 100%)}.portrait-pointer{z-index:1;opacity:0;pointer-events:none;width:clamp(90px,9vw,130px);height:auto;transition:opacity .35s;position:absolute;top:clamp(10rem,22vw,19rem);right:clamp(19rem,25vw,31rem);overflow:visible}.portrait-pointer path{fill:none;stroke:var(--cool);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.hero.laser-hit .portrait-pointer{opacity:.6;animation:.2s steps(2,end) infinite arrowZap}@keyframes arrowZap{0%{transform:translate(0)rotate(0)}25%{transform:translate(1.5px,-1px)rotate(1.4deg)}50%{transform:translate(-1.5px,1px)rotate(-1.4deg)}75%{transform:translate(1px,1.5px)rotate(.8deg)}to{transform:translate(-1px,-1px)rotate(-1.2deg)}}.hero-char{background-image:var(--grad);-webkit-text-fill-color:var(--ink);color:var(--ink);background-repeat:no-repeat;-webkit-background-clip:text;background-clip:text;transition:-webkit-text-fill-color .32s ease-out}.hero-char.lit{-webkit-text-fill-color:transparent}@media (max-width:1000px){.portrait-pointer{display:none}}@media (prefers-reduced-motion:reduce){.hero.laser-hit .portrait-pointer,.hero-char.lit{animation:none}}.laser-beam{transform-origin:0;opacity:0;pointer-events:none;will-change:width, transform;background:linear-gradient(90deg,#ff4432b8 0%,#ff73463d 45%,#ff965000 82%);border-radius:2px;width:0;height:1.4px;transition:opacity .6s;position:absolute;box-shadow:0 0 4px #ff5a3740}.laser-l{top:46.5%;left:41%}.laser-r{top:46%;left:61%}.hero-portrait-wrap.lit .laser-beam{opacity:.52}@media (prefers-reduced-motion:reduce){.laser-beam{display:none}}@media (max-width:1000px){.hero-portrait-wrap{opacity:.3;height:min(42vh,340px);display:block;top:2.5rem;right:-2rem}.hero-portrait{opacity:1;filter:saturate(1.05)blur(1px);-webkit-mask-composite:source-in;-webkit-mask-image:linear-gradient(#0000 0%,#000 20% 70%,#0000 100%),linear-gradient(90deg,#0000 0%,#000 26% 100%);mask-image:linear-gradient(#0000 0%,#000 20% 70%,#0000 100%),linear-gradient(90deg,#0000 0%,#000 26% 100%);-webkit-mask-composite:source-in;mask-composite:intersect}.laser-beam,.portrait-pointer{display:none}}.hero-inner{z-index:1;position:relative}.hero-greeting{font-family:var(--font-sans);color:var(--cool);letter-spacing:.01em;margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.hero-name{letter-spacing:-.05em;margin:0 0 1.5rem;font-size:clamp(3.4rem,1.5rem + 12vw,10.5rem);font-weight:700;line-height:.88}.hero-lead{font-family:var(--font-display);letter-spacing:-.025em;background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text;max-width:16ch;margin:0 0 1.6rem;font-size:clamp(1.7rem,1rem + 4vw,4rem);font-weight:700;line-height:1.08}.hero-sub{color:var(--ink-soft);max-width:50ch;margin:0 0 2.4rem;font-size:clamp(1.1875rem,1rem + .6vw,1.45rem)}.hero-actions{flex-wrap:wrap;gap:.8rem;margin-bottom:clamp(3rem,7vw,4.5rem);display:flex}.btn{border-radius:var(--r-pill);cursor:pointer;will-change:transform;transition:transform .12s var(--ease), box-shadow .2s var(--ease), background-color .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease);border:1px solid #0000;justify-content:center;align-items:center;padding:.82rem 1.5rem;font-size:1rem;font-weight:700;display:inline-flex}.btn-primary{background:var(--btn-face);color:#fff;box-shadow:0 3px 0 var(--btn-edge), 0 7px 16px -7px var(--halo-cool);transform:translateY(0)}.btn-primary:hover{box-shadow:0 5px 0 var(--btn-edge), 0 14px 24px -8px var(--halo-cool);transform:translateY(-2px)}.btn-primary:active{box-shadow:0 1px 0 var(--btn-edge), 0 4px 10px -7px var(--halo-cool);transition-duration:60ms;transform:translateY(2px)}.btn-ghost{color:var(--ink);border-color:var(--line);background:0 0}.btn-ghost:hover{border-color:var(--cool);color:var(--cool);background:color-mix(in srgb, var(--cool) 7%, transparent);transform:translateY(-2px)}.btn-ghost:active{transform:translateY(0)}.bridge{max-width:720px;margin:.6rem 0 0}.bridge-svg{width:100%;height:auto;overflow:visible}.grad-cool{stop-color:var(--cool)}.grad-mid{stop-color:var(--mid)}.grad-warm{stop-color:var(--warm)}.bridge-deck{stroke-dasharray:720;stroke-dashoffset:720px;animation:draw 1.6s var(--ease) .25s forwards}@keyframes draw{to{stroke-dashoffset:0}}.bridge-stay{stroke:var(--line);stroke-width:1.5px;opacity:0;animation:.6s 1.5s forwards fadeIn}.bridge-node{opacity:0;animation:pop .5s var(--ease) forwards}.n-cool{fill:var(--cool);animation-delay:.45s}.n-mid{fill:var(--mid);animation-delay:1s}.n-warm{fill:var(--warm);animation-delay:1.55s}@keyframes pop{0%{opacity:0;transform:scale(.2)}to{opacity:1;transform:scale(1)}}@keyframes fadeIn{to{opacity:1}}.bridge-node{transform-box:fill-box;transform-origin:50%}.bridge-halo{fill:none;stroke-width:2.5px;transform-box:fill-box;transform-origin:50%;opacity:0;animation:2.8s ease-out infinite bridgeHalo}.h-cool{stroke:var(--cool);animation-delay:1s}.h-mid{stroke:var(--mid);animation-delay:1.9s}.h-warm{stroke:var(--warm);animation-delay:2.5s}@keyframes bridgeHalo{0%{opacity:.55;transform:scale(.7)}70%{opacity:0;transform:scale(2.4)}to{opacity:0;transform:scale(2.4)}}.bridge-pulse{opacity:0;filter:drop-shadow(0 0 6px #ffffffe6);animation:.6s 2s forwards bridgePulseIn}@keyframes bridgePulseIn{to{opacity:.95}}@media (prefers-reduced-motion:reduce){.bridge-halo,.bridge-pulse{opacity:0;animation:none}}.bridge-labels{letter-spacing:.01em;justify-content:space-between;margin-top:.5rem;font-size:.98rem;font-weight:600;display:flex}.bridge-label{color:var(--ink-faint)}.l-cool{color:var(--cool)}.l-mid{color:var(--mid);text-align:center}.l-warm{color:var(--warm);text-align:right}.hand-note{font-family:var(--font-hand);color:var(--cool);opacity:.9;white-space:nowrap;align-self:center;align-items:center;gap:.5rem;font-size:1.4rem;font-weight:600;line-height:1;display:inline-flex;transform:rotate(-3deg)}.hand-arrow{opacity:.85;flex:none;width:54px;height:30px;overflow:visible}.hand-arrow path{fill:none;stroke:var(--cool);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.hand-arrow .arrow-head{stroke-width:1.8px}.facets{grid-template-columns:repeat(3,1fr);gap:1.5rem;margin:2.75rem 0 0;padding:0;list-style:none;display:grid}.facet{border-top:1px solid var(--line);padding-top:1.1rem}.facet-dot{border-radius:50%;width:11px;height:11px;margin-bottom:.7rem;display:block}.d-cool{background:var(--cool)}.d-mid{background:var(--mid)}.d-warm{background:var(--warm)}.facet-title{margin:0 0 .3rem;font-size:1.2rem}.facet-desc{color:var(--ink-soft);margin:0;font-size:.98rem;line-height:1.55}.work-grid{grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2.5rem;display:grid}.work-card:first-child{grid-column:1/-1;padding:clamp(1.8rem,3.5vw,3rem)}.work-card:first-child .work-name{font-size:clamp(1.8rem,1rem + 2.6vw,2.9rem)}.work-card:first-child .work-desc{max-width:62ch;font-size:1.1rem}.work-card:first-child:before{height:6px}.work-card,.course-card{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-lg);transition:transform .25s var(--ease), box-shadow .3s var(--ease), border-color .3s var(--ease);padding:clamp(1.5rem,3vw,2.25rem);position:relative;overflow:hidden}.work-card:before,.course-card:before{content:"";background:var(--grad);opacity:.9;height:4px;position:absolute;inset:0 0 auto}.work-card--in-development:before{background:linear-gradient(100deg, var(--warm), var(--mid))}.work-card:hover,.course-card:hover{box-shadow:var(--shadow-lg), 0 0 0 1px color-mix(in srgb, var(--cool) 28%, transparent), 0 26px 52px -26px var(--halo-cool);border-color:#0000;transform:translateY(-4px)}.work-sketch{opacity:.5;pointer-events:none;z-index:0;width:clamp(58px,10vw,92px);height:auto;position:absolute;top:clamp(1.1rem,2.5vw,1.9rem);right:clamp(1.1rem,2.5vw,1.9rem)}.work-card:first-child .work-sketch{opacity:.58;width:clamp(130px,16vw,200px);top:50%;transform:translateY(-50%)}.work-logo{opacity:.9;pointer-events:none;z-index:0;width:clamp(48px,8vw,76px);height:auto;position:absolute;top:clamp(1.1rem,2.5vw,1.9rem);right:clamp(1.1rem,2.5vw,1.9rem)}.work-card:first-child .work-logo{opacity:.95;width:clamp(104px,13vw,164px);top:50%;transform:translateY(-50%)}.work-card>.work-head,.work-card>.work-meta,.work-card>.work-desc{z-index:1;position:relative}.work-head{flex-direction:column;align-items:flex-start;gap:.7rem;margin-bottom:.45rem;display:flex}.work-name{letter-spacing:-.01em;margin:0;font-size:clamp(1.4rem,1rem + 1.4vw,1.9rem)}.work-pill{font-family:var(--font-sans);color:var(--cool);background:color-mix(in srgb, var(--cool) 12%, transparent);border-radius:var(--r-pill);max-width:100%;padding:.25rem .6rem;font-size:.74rem;font-weight:600}.work-pill.pill-in-development{color:var(--warm);background:color-mix(in srgb, var(--warm) 15%, transparent)}.work-meta{color:var(--ink-faint);margin:0 0 1rem;font-size:.9rem}.work-desc{color:var(--ink-soft);max-width:46ch;margin:0}.section-title-note{letter-spacing:-.01em;color:var(--ink-faint);margin-top:.5em;font-size:.42em;font-weight:400;line-height:1.2;display:block}.teaching-intro{color:var(--ink-soft);max-width:60ch;margin:1rem 0 0;font-size:1.1875rem}.course-grid{grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:2.5rem;display:grid}.ext-link{color:inherit;text-underline-offset:.18em;text-decoration:underline;text-decoration-thickness:2px;-webkit-text-decoration-color:color-mix(in srgb, var(--cool) 40%, transparent);text-decoration-color:color-mix(in srgb, var(--cool) 40%, transparent);transition:text-decoration-color .2s var(--ease), color .2s var(--ease)}.ext-link:hover{color:var(--cool);-webkit-text-decoration-color:var(--cool);text-decoration-color:var(--cool)}.timeline{margin:2.5rem 0 0;padding:0;list-style:none;position:relative}.timeline:before{content:"";background:linear-gradient(var(--cool), var(--mid), var(--warm));opacity:.4;width:2px;position:absolute;top:8px;bottom:8px;left:7px}.tl-item{grid-template-columns:5rem 1fr;gap:.6rem 1.5rem;padding:0 0 1.9rem 1.6rem;display:grid;position:relative}.tl-item:before{content:"";background:var(--bg);border:2.5px solid var(--cool);border-radius:50%;width:14px;height:14px;position:absolute;top:7px;left:1px}.tl-item.warm:before{border-color:var(--warm)}.tl-year{font-family:var(--font-display);color:var(--ink-faint);grid-column:1;padding-top:.1rem;font-size:1.05rem;font-weight:600}.tl-body{grid-column:2}.tl-role{margin:0 0 .15rem;font-size:1.12rem}.tl-org{color:var(--cool);margin:0 0 .4rem;font-size:.95rem;font-weight:500}.tl-desc{color:var(--ink-soft);max-width:52ch;margin:0;font-size:.98rem}.tl-item{opacity:1}.reveal-on .tl-item{opacity:0;transition:opacity .55s var(--ease), transform .55s var(--ease);transform:translateY(14px)}.reveal-on .tl-item.in{opacity:1;transform:none}.edu{border-top:1px solid var(--line);margin-top:1.5rem;padding-top:2rem}.edu-title{color:var(--ink-faint);margin:0 0 1rem;font-size:1.1rem;font-weight:500}.edu-list{gap:.9rem;margin:0;padding:0;list-style:none;display:grid}.edu-item{border-bottom:1px dashed var(--line-soft);flex-wrap:wrap;justify-content:space-between;gap:.3rem 1rem;padding-bottom:.9rem;display:flex}.edu-degree{font-weight:600}.edu-org{color:var(--ink-faint);font-size:.95rem}.beliefs{gap:2.4rem;max-width:100%;margin:2.75rem 0 0;padding:0;list-style:none;display:grid}.belief{font-family:var(--font-display);letter-spacing:-.01em;border-left:4px solid;border-image:var(--grad) 1;color:var(--ink);max-width:24ch;padding-left:1.75rem;font-size:clamp(1.55rem,1rem + 2.8vw,3rem);font-weight:600;line-height:1.22}.contact-title{margin-bottom:1.5rem;font-size:clamp(3rem,1.5rem + 9vw,8rem)}.contact-sub{color:var(--ink-soft);max-width:44ch;margin:0 0 2rem;font-size:1.1875rem}.contact-links{flex-direction:column;gap:1rem;display:flex}.contact-primary{font-family:var(--font-display);letter-spacing:-.025em;width:fit-content;color:var(--ink);text-underline-offset:6px;text-decoration:underline;text-decoration-thickness:3px;-webkit-text-decoration-color:var(--cool);text-decoration-color:var(--cool);transition:text-decoration-color .25s var(--ease), text-underline-offset .2s var(--ease);font-size:clamp(1.5rem,1rem + 2.6vw,2.75rem);font-weight:500}.contact-primary:hover{-webkit-text-decoration-color:var(--warm);text-decoration-color:var(--warm);text-underline-offset:9px}.contact-secondary{flex-wrap:wrap;gap:1.5rem;display:flex}.contact-secondary a{color:var(--ink-soft);font-weight:500;position:relative}.contact-secondary a:after{content:"";background:var(--cool);height:2px;transition:right .25s var(--ease);position:absolute;bottom:-3px;left:0;right:100%}.contact-secondary a:hover{color:var(--ink)}.contact-secondary a:hover:after{right:0}.marquee{border-block:1px solid var(--line);background:var(--bg-elev);padding-block:1.8rem;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 7% 93%,#0000);mask-image:linear-gradient(90deg,#0000,#000 7% 93%,#0000)}.marquee-track{width:max-content;animation:32s linear infinite marquee;display:inline-flex}.marquee-group{align-items:center;display:inline-flex}.marquee-group>span{font-family:var(--font-display);letter-spacing:-.02em;text-transform:uppercase;color:var(--ink);white-space:nowrap;padding:0 1.6rem;font-size:clamp(2rem,1rem + 4.5vw,5rem);font-weight:600}.marquee-group>span:nth-child(4n+1){background:var(--grad);color:#0000;-webkit-background-clip:text;background-clip:text}.marquee-group i{background:var(--grad);border-radius:2px;flex:none;width:10px;height:10px;transform:rotate(45deg)}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.marquee:hover .marquee-track{animation-play-state:paused}.site-footer{border-top:1px solid var(--line);padding-block:clamp(2.5rem,6vw,4.5rem) 2rem}.footer-name{width:100vw;font-family:var(--font-display);letter-spacing:-.05em;color:var(--ink);text-underline-offset:clamp(5px, 1.2vw, 16px);text-decoration:underline;text-decoration-thickness:clamp(2px,.5vw,7px);-webkit-text-decoration-color:var(--line);text-decoration-color:var(--line);transition:text-decoration-color .3s var(--ease);margin-bottom:2.5rem;margin-left:calc(50% - 50vw);padding-inline:clamp(1.1rem,4vw,2.5rem);font-size:clamp(2.6rem,1rem + 15vw,12rem);font-weight:700;line-height:.82;display:block}.footer-name:hover{-webkit-text-decoration-color:var(--cool);text-decoration-color:var(--cool)}.footer-inner{flex-wrap:wrap;align-items:center;gap:1rem;display:flex}.colophon{color:var(--ink-faint);margin:0;font-size:.9rem}.to-top{color:var(--ink-soft);margin-left:auto;font-size:.9rem;font-weight:600;position:relative}.to-top:after{content:"";background:var(--highlight);height:2px;transition:right .25s var(--ease);border-radius:2px;position:absolute;bottom:-3px;left:0;right:100%}.to-top:hover{color:var(--ink)}.to-top:hover:after{right:0}.belief .belief-word{opacity:.48;transition:opacity .55s var(--ease)}.belief.lit .belief-word{opacity:1}.grain{z-index:40;pointer-events:none;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.82' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px;position:fixed;inset:0}:root[data-theme=dark] .grain{opacity:.07;mix-blend-mode:screen}@media (max-width:820px){.menu-toggle{display:flex}.nav-links{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow-lg);flex-direction:column;gap:.1rem;min-width:180px;padding:.5rem;display:none;position:absolute;top:calc(100% + .4rem);right:clamp(1.1rem,4vw,2.5rem)}.nav-links.open{display:flex}.nav-links a{padding:.6rem .8rem;display:block}.nav-links a.active:after{display:none}.nav-links a.active{background:var(--bg-alt)}.facets{grid-template-columns:1fr;gap:0}.facet{padding-block:1.1rem}.work-grid,.course-grid{grid-template-columns:1fr}}@media (max-width:540px){body{font-size:1rem}.tl-item{grid-template-columns:1fr;gap:.15rem;padding-left:1.5rem}.tl-year{grid-column:1}.bridge-labels{font-size:.72rem}.nav{gap:.6rem}.brand-name{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.hero-aurora{animation:none}.bridge-deck{stroke-dashoffset:0}.bridge-stay,.bridge-node{opacity:1}.reveal-on .tl-item{opacity:1;transform:none}.marquee-track{transform:none;animation:none!important}}.cc{z-index:100;max-width:min(420px,100vw - 2rem);animation:ccIn .4s var(--ease,ease) both;position:fixed;bottom:clamp(1rem,3vw,2rem);left:clamp(1rem,3vw,2rem)}@keyframes ccIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}.cc-inner{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);padding:1.25rem 1.25rem 1.1rem}.cc-title{font-family:var(--font-display);color:var(--ink);margin-bottom:.3rem;font-size:1.05rem;display:block}.cc-body{color:var(--ink-soft);margin:0 0 .9rem;font-size:.9rem;line-height:1.5}.cc-cats{gap:.6rem;margin:0 0 1rem;display:grid}.cc-cat{color:var(--ink-soft);align-items:flex-start;gap:.55rem;font-size:.85rem;line-height:1.4;display:flex}.cc-cat input{accent-color:var(--cool);flex:none;margin-top:.15rem}.cc-cat b{color:var(--ink);font-weight:600}.cc-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.cc-btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:999px;padding:.5rem .95rem;font-size:.86rem;font-weight:600;transition:border-color .2s,color .2s,filter .2s}.cc-ghost{border-color:var(--line);color:var(--ink);background:0 0}.cc-ghost:hover{border-color:var(--cool);color:var(--cool)}.cc-primary{background:var(--cool);color:#fff;margin-left:auto}.cc-primary:hover{filter:brightness(1.08)}.footer-cc{font:inherit;color:inherit;cursor:pointer;opacity:.8;background:0 0;border:none;padding:0}.footer-cc:hover{opacity:1;text-decoration:underline}@media (max-width:520px){.cc{max-width:none;bottom:.75rem;left:.75rem;right:.75rem}.cc-primary{margin-left:0}}.cms-form{flex-wrap:wrap;gap:1rem;margin-top:1.5rem;display:flex}.form-field{flex-direction:column;flex:calc(50% - 1rem);gap:.35rem;min-width:12rem;display:flex}.form-field label{font-size:.95rem;font-weight:600}.form-field input,.form-field textarea,.form-field select{font:inherit;color:var(--ink);background:#fff;border:1px solid #0e102029;border-radius:10px;padding:.7rem .85rem}.form-field textarea{resize:vertical}.form-field input:focus,.form-field textarea:focus,.form-field select:focus{border-color:var(--cool);outline:none;box-shadow:0 0 0 3px #4b40e624}.form-field-checkbox{flex-direction:row;align-items:center}.form-field-checkbox label{font-weight:500}.form-message{opacity:.85;flex-basis:100%;margin:0}.form-actions{flex-basis:100%;align-items:center;gap:1rem;margin-top:.25rem;display:flex}.form-confirmation{background:#4b40e614;border-radius:12px;margin-top:1.5rem;padding:1rem 1.25rem;font-weight:600}.form-error{color:#c0392b;margin:0}
