:root{--color-bg:#161826;--color-surface:#232532;--color-text:#e9e9ed;--color-accent:#9184d9;--color-accent-2:#a7a1db;--color-divider:color-mix(in srgb,#e9e9ed 16%,#0000);--color-neutral-100:#f3f5fe;--color-neutral-200:#e4e7f5;--color-neutral-300:#cfd3e5;--color-neutral-400:#b2b6ca;--color-neutral-500:#9397ab;--color-neutral-600:#75798c;--color-neutral-700:#595d6c;--color-neutral-800:#3f424d;--color-neutral-900:#292b31;--color-accent-100:#f5f4ff;--color-accent-200:#e7e5fe;--color-accent-300:#d2cefd;--color-accent-400:#b5abfc;--color-accent-500:#968ae0;--color-accent-600:#796cbf;--color-accent-700:#5d5294;--color-accent-800:#423a6a;--color-accent-900:#2b2741;--font-heading:"Inter",system-ui,sans-serif;--font-heading-weight:500;--font-body:"Inter",system-ui,sans-serif;--radius-sm:4px;--radius-md:8px;--radius-lg:14px;--gutter:7vw;--ease-out:cubic-bezier(0.2,0.8,0.2,1)}*,:after,:before{box-sizing:border-box}html{color-scheme:dark;scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#161826;background:var(--color-bg);color:#e9e9ed;color:var(--color-text);font-family:Inter,system-ui,sans-serif;font-family:var(--font-body);font-size:15px;line-height:1.55;margin:0;overflow-x:hidden}h1,h2,h3,h4{font-family:Inter,system-ui,sans-serif;font-family:var(--font-heading);font-weight:500;font-weight:var(--font-heading-weight);letter-spacing:-.015em;line-height:1.12;margin:0}p{margin:0}a{color:#d2cefd;color:var(--color-accent-300);text-decoration:none}a:hover{color:#e7e5fe;color:var(--color-accent-200)}img{display:block;max-width:100%}button{font:inherit}:focus{outline:none}:focus-visible{outline:2px solid #9184d9;outline:2px solid var(--color-accent);outline-offset:2px}::selection{background:color-mix(in srgb,#9184d9 30%,#0000);background:color-mix(in srgb,var(--color-accent) 30%,#0000)}.card{background:#232532;background:var(--color-surface);border-radius:8px;border-radius:var(--radius-md);display:flex;flex-direction:column;gap:5.6px;padding:8.4px}.tag{align-items:center;border-radius:6px;display:inline-flex;font-size:11px;letter-spacing:.02em;padding:3px 10px}.tag-outline{border:1px solid #9184d9;border:1px solid var(--color-accent);color:#9184d9;color:var(--color-accent)}.lighten{background-color:initial;mix-blend-mode:lighten}@keyframes mm-orbit{to{transform:rotate(1turn)}}@keyframes mm-counter{to{transform:rotate(-1turn)}}@keyframes mm-marquee{to{transform:translateX(-50%)}}@keyframes mm-blink{0%,55%{opacity:1}56%,to{opacity:0}}@keyframes mm-drift{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@keyframes mm-pulse{0%,to{box-shadow:0 0 8px 1px #423a6a;box-shadow:0 0 8px 1px var(--color-accent-800)}50%{box-shadow:0 0 18px 4px #5d5294;box-shadow:0 0 18px 4px var(--color-accent-700)}}.mm-field{height:100vh;inset:0;pointer-events:none;position:fixed;width:100vw;z-index:0}.mm-glow{background:radial-gradient(circle,#5d5294 0,#0000 65%);background:radial-gradient(circle,var(--color-accent-700) 0,#0000 65%);border-radius:50%;height:520px;opacity:.14;pointer-events:none;transform:translate(-999px,-999px);width:520px;will-change:transform;z-index:1}.mm-glow,.mm-progress{left:0;position:fixed;top:0}.mm-progress{background:linear-gradient(90deg,#5d5294,#9184d9);background:linear-gradient(90deg,var(--color-accent-700),var(--color-accent));height:2px;width:0;z-index:50}.mm-orbit{bottom:34px;height:150px;position:fixed;right:34px;width:150px;z-index:40}.mm-orbit-ring{border:1px dashed #595d6c;border:1px dashed var(--color-neutral-700);border-radius:50%;inset:0;position:absolute}.mm-orbit-core{align-items:center;background:#161826;background:var(--color-bg);border:1px solid #9184d9;border:1px solid var(--color-accent);border-radius:50%;box-shadow:0 0 24px 0 #2b2741;box-shadow:0 0 24px 0 var(--color-accent-900);color:#d2cefd;color:var(--color-accent-300);display:flex;font-family:Inter,system-ui,sans-serif;font-family:var(--font-heading);font-size:13px;height:44px;justify-content:center;left:50%;letter-spacing:.08em;position:absolute;top:50%;transform:translate(-50%,-50%);width:44px}.mm-orbit-spin{animation:mm-orbit 46s linear infinite;inset:0;position:absolute}.mm-orbit:hover .mm-orbit-counter,.mm-orbit:hover .mm-orbit-spin{animation-play-state:paused}.mm-orbit-arm{height:0;left:50%;position:absolute;top:50%;width:0}.mm-orbit-counter{animation:mm-counter 46s linear infinite}.mm-orbit-btn{align-items:center;background:#161826;background:var(--color-bg);border:1px solid #5d5294;border:1px solid var(--color-accent-700);border-radius:50%;color:#d2cefd;color:var(--color-accent-300);cursor:pointer;display:flex;height:26px;justify-content:center;margin:-13px 0 0 -13px;padding:0;transition:border-color .25s,color .25s,box-shadow .25s;width:26px}.mm-orbit-btn:hover{border-color:#9184d9;border-color:var(--color-accent);box-shadow:0 0 16px 0 #423a6a;box-shadow:0 0 16px 0 var(--color-accent-800);color:#e7e5fe;color:var(--color-accent-200)}.mm-page{position:relative}.mm-thread{bottom:0;left:30px;pointer-events:none;position:absolute;top:100vh;width:2px;z-index:3}.mm-thread-track{background:linear-gradient(180deg,#0000,#3f424d 60px,#3f424d calc(100% - 60px),#0000);background:linear-gradient(180deg,#0000,var(--color-neutral-800) 60px,var(--color-neutral-800) calc(100% - 60px),#0000);inset:0;position:absolute}.mm-thread-fill{background:linear-gradient(180deg,#0000,#968ae0);background:linear-gradient(180deg,#0000,var(--color-accent-500));height:0;left:0;position:absolute;top:0;transition:height .15s linear;width:2px}.mm-node{background:#161826;background:var(--color-bg);border:1px solid #75798c;border:1px solid var(--color-neutral-600);border-radius:50%;height:10px;left:-4px;position:absolute;top:0;transition:border-color .4s,background .4s,box-shadow .4s;width:10px}.mm-node.is-lit{background:#423a6a;background:var(--color-accent-800);border-color:#9184d9;border-color:var(--color-accent);box-shadow:0 0 10px 1px #423a6a;box-shadow:0 0 10px 1px var(--color-accent-800)}.mm-main{position:relative;z-index:2}.mm-reveal{opacity:0;transform:translateY(46px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.8,.2,1);transition:opacity .9s ease,transform .9s var(--ease-out)}.mm-reveal.is-in{opacity:1;transform:none}.mm-section-head{align-items:baseline;display:flex;gap:20px}.mm-section-head h2{font-size:clamp(30px,3.4vw,46px);letter-spacing:-.01em}.mm-section-head .mm-count,.mm-section-head .mm-sub{color:#9397ab;color:var(--color-neutral-500);font-size:14px}.mm-rule{background:linear-gradient(90deg,#595d6c,#0000);background:linear-gradient(90deg,var(--color-neutral-700),#0000);flex:1 1;height:1px}.mm-kicker{color:#b5abfc;color:var(--color-accent-400);font-size:12px;letter-spacing:.18em;text-transform:uppercase}.mm-ext{align-items:center;display:inline-flex;font-size:14px;gap:6px}.mm-hero{display:flex;flex-direction:column;justify-content:center;min-height:100vh;padding:0 7vw;padding:0 var(--gutter);position:relative}.mm-hero-tag{align-items:center;display:flex;gap:14px;margin-bottom:28px}.mm-hero-tag-line{background:#9184d9;background:var(--color-accent);flex:none;height:2px;width:34px}.mm-hero-tag span:last-child{color:#cfd3e5;color:var(--color-neutral-300);font-size:13px;letter-spacing:.22em;text-transform:uppercase}.mm-name{display:flex;flex-wrap:wrap;font-size:clamp(64px,11.5vw,190px);font-weight:500;letter-spacing:-.03em;line-height:.94}.mm-letter{display:inline-block;transition:transform .35s cubic-bezier(.2,.8,.2,1);transition:transform .35s var(--ease-out);will-change:transform}.mm-hero-blurb{color:#cfd3e5;color:var(--color-neutral-300);font-size:19px;line-height:1.55;margin-top:34px;max-width:620px}.mm-caret{animation:mm-blink 1.1s step-end infinite;background:#9184d9;background:var(--color-accent);display:inline-block;height:20px;margin-left:8px;vertical-align:text-bottom;width:9px}.mm-hero-hint{align-items:center;animation:mm-drift 3.2s ease-in-out infinite;bottom:38px;color:#9397ab;color:var(--color-neutral-500);display:flex;font-size:12px;gap:10px;left:7vw;left:var(--gutter);letter-spacing:.18em;position:absolute;text-transform:uppercase}.mm-hero-hint svg{color:#b5abfc;color:var(--color-accent-400)}.mm-work{padding:120px 7vw;padding:120px var(--gutter)}.mm-work .mm-section-head{margin-bottom:70px}.mm-projects{display:flex;flex-direction:column;gap:90px}.mm-project{grid-gap:40px;align-items:center;display:grid;gap:40px;grid-template-columns:110px 1fr 1.1fr}.mm-project-index{color:#3f424d;color:var(--color-neutral-800);font-family:Inter,system-ui,sans-serif;font-family:var(--font-heading);font-size:64px;font-weight:500;line-height:1}.mm-project-copy{display:flex;flex-direction:column;gap:14px}.mm-project-copy h3{font-size:28px}.mm-project-copy p{color:#cfd3e5;color:var(--color-neutral-300);font-size:15px;line-height:1.6}.mm-tags{display:flex;flex-wrap:wrap;gap:8px}.mm-project-copy .mm-ext{margin-top:4px}.mm-visual{position:relative;transition:transform .5s cubic-bezier(.2,.8,.2,1);transition:transform .5s var(--ease-out)}.mm-visual:hover{transform:perspective(900px) rotateY(-4deg) rotateX(2deg) translateY(-6px)}.mm-frame{background:linear-gradient(160deg,#292b31,#0000);background:linear-gradient(160deg,var(--color-neutral-900),#0000);border:1px solid #3f424d;border:1px solid var(--color-neutral-800);border-radius:8px;inset:0;padding:14px;position:absolute}.mm-frame>div{height:100%;width:100%}.mm-graph{background:linear-gradient(160deg,#292b31,#0000);background:linear-gradient(160deg,var(--color-neutral-900),#0000);border:1px solid #3f424d;border:1px solid var(--color-neutral-800);border-radius:8px;display:flex;flex-direction:column;gap:14px;inset:0;justify-content:center;padding:26px;position:absolute}.mm-graph-grid{grid-gap:3px;display:grid;gap:3px;grid-auto-flow:column;grid-template-columns:repeat(52,1fr);grid-template-rows:repeat(7,1fr)}.mm-graph-grid span{aspect-ratio:1;border-radius:2px}.mm-graph-legend{align-items:center;color:#9397ab;color:var(--color-neutral-500);display:flex;font-size:11px;justify-content:space-between;letter-spacing:.08em}.mm-graph-legend>span:last-child{align-items:center;display:inline-flex;gap:4px}.mm-graph-legend i{border-radius:2px;display:inline-block;height:9px;width:9px}.mm-mobile{aspect-ratio:1/2.05;background:#161826;background:var(--color-bg);border:1px solid #595d6c;border:1px solid var(--color-neutral-700);border-radius:14px;bottom:-22px;box-shadow:0 18px 40px -12px #000000a6,0 0 24px 0 #2b2741;box-shadow:0 18px 40px -12px #000000a6,0 0 24px 0 var(--color-accent-900);overflow:hidden;position:absolute;right:-18px;width:26%}.mm-slot{overflow:hidden;position:relative}.mm-slot,.mm-slot img{height:100%;width:100%}.mm-slot img{object-fit:cover}.mm-slot-empty{align-items:center;background:color-mix(in srgb,#232532 60%,#0000);background:color-mix(in srgb,var(--color-surface) 60%,#0000);border:1px dashed #595d6c;border:1px dashed var(--color-neutral-700);color:#9397ab;color:var(--color-neutral-500);display:flex;font-size:12px;height:100%;justify-content:center;letter-spacing:.06em;padding:16px;text-align:center;width:100%}.mm-play{overflow:hidden;padding:80px 0}.mm-play .mm-section-head{margin-bottom:44px;padding:0 7vw;padding:0 var(--gutter)}.mm-marquee{border-bottom:1px solid #3f424d;border-bottom:1px solid var(--color-neutral-800);border-top:1px solid #3f424d;border-top:1px solid var(--color-neutral-800);overflow:hidden;padding:26px 0;white-space:nowrap}.mm-marquee-track{animation:mm-marquee 26s linear infinite;animation:mm-marquee var(--marquee-dur,26s) linear infinite;display:inline-flex;will-change:transform}.mm-marquee-item{align-items:center;color:#b2b6ca;color:var(--color-neutral-400);display:inline-flex;font-family:Inter,system-ui,sans-serif;font-family:var(--font-heading);font-size:26px;font-weight:500;gap:26px;padding:0 26px;transition:color .25s}.mm-marquee-item:hover{color:#d2cefd;color:var(--color-accent-300)}.mm-marquee-item i{color:#796cbf;color:var(--color-accent-600);font-size:14px;font-style:normal}.mm-play-cards{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr);padding:38px 7vw 0;padding:38px var(--gutter) 0}.mm-play-card{gap:10px}.mm-play-card svg{color:#b5abfc;color:var(--color-accent-400)}.mm-play-card .mm-kicker{font-size:11px}.mm-play-card h3{font-size:18px}.mm-play-card p{color:#b2b6ca;color:var(--color-neutral-400);font-size:14px;line-height:1.6}.mm-about{grid-gap:70px;align-items:start;display:grid;gap:70px;grid-template-columns:1.3fr 1fr;padding:120px 7vw;padding:120px var(--gutter)}.mm-about h2{font-size:clamp(30px,3.4vw,46px);margin-bottom:30px}.mm-about-lead{color:#e4e7f5;color:var(--color-neutral-200);font-size:17px;margin-bottom:18px}.mm-about-body,.mm-about-lead{line-height:1.7;max-width:56ch}.mm-about-body{color:#b2b6ca;color:var(--color-neutral-400);font-size:16px}.mm-stats{display:flex;flex-wrap:wrap;gap:44px;margin-top:44px}.mm-stat-n{color:#d2cefd;color:var(--color-accent-300);font-family:Inter,system-ui,sans-serif;font-family:var(--font-heading);font-size:40px;font-weight:500}.mm-stat-label{color:#9397ab;color:var(--color-neutral-500);font-size:12px;letter-spacing:.14em;margin-top:4px;text-transform:uppercase}.mm-portrait{height:420px;justify-self:end;max-width:340px;width:100%}.mm-portrait .mm-slot{border-radius:8px}.mm-experience{padding:0 7vw 120px;padding:0 var(--gutter) 120px}.mm-experience .mm-section-head{margin-bottom:60px}.mm-job{grid-gap:40px;border-bottom:1px solid #3f424d;border-bottom:1px solid var(--color-neutral-800);display:grid;gap:40px;grid-template-columns:210px 1fr;padding:34px 0}.mm-job-meta{display:flex;flex-direction:column;gap:6px}.mm-job-dates{color:#b5abfc;color:var(--color-accent-400);font-size:13px;letter-spacing:.14em;text-transform:uppercase}.mm-job-where{font-size:13px}.mm-job-note,.mm-job-where{color:#9397ab;color:var(--color-neutral-500)}.mm-job-note{font-size:12px;font-style:italic;line-height:1.5}.mm-job-body{display:flex;flex-direction:column;gap:10px}.mm-job-title{align-items:baseline;display:flex;flex-wrap:wrap;gap:14px}.mm-job-company{color:#e9e9ed;color:var(--color-text);font-family:Inter,system-ui,sans-serif;font-family:var(--font-heading);font-size:22px;font-weight:500}.mm-job-company:hover{color:#d2cefd;color:var(--color-accent-300)}.mm-job-role{color:#b2b6ca;color:var(--color-neutral-400);font-size:14px}.mm-points{display:flex;flex-direction:column;gap:6px}.mm-point{align-items:baseline;color:#cfd3e5;color:var(--color-neutral-300);display:flex;font-size:15px;gap:12px;line-height:1.6}.mm-point i{background:#796cbf;background:var(--color-accent-600);flex:none;height:1px;transform:translateY(-4px);width:14px}.mm-quotes{padding:40px 7vw 120px;padding:40px var(--gutter) 120px}.mm-quotes .mm-section-head{margin-bottom:50px}.mm-quote-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(2,1fr)}.mm-quote{gap:16px;margin:0}.mm-quote>svg{color:#968ae0;color:var(--color-accent-500)}.mm-quote blockquote{color:#e4e7f5;color:var(--color-neutral-200);font-size:15px;line-height:1.6;margin:0}.mm-quote figcaption{font-size:13px}.mm-quote figcaption a,.mm-quote figcaption span{align-items:center;color:#9397ab;color:var(--color-neutral-500);display:inline-flex;gap:4px}.mm-quote figcaption a:hover{color:#d2cefd;color:var(--color-accent-300)}.mm-quote figcaption svg{color:#968ae0;color:var(--color-accent-500)}.mm-now{padding:0 7vw 120px;padding:0 var(--gutter) 120px}.mm-now-card{align-items:flex-start;background:linear-gradient(160deg,#292b31,#0000);background:linear-gradient(160deg,var(--color-neutral-900),#0000);border:1px solid #3f424d;border:1px solid var(--color-neutral-800);border-radius:8px;display:flex;gap:40px;padding:40px}.mm-now-label{align-items:center;display:flex;gap:10px;white-space:nowrap}.mm-now-dot{animation:mm-pulse 2.4s ease-in-out infinite;background:#9184d9;background:var(--color-accent);border-radius:50%;height:8px;width:8px}.mm-now-label span:last-child{color:#d2cefd;color:var(--color-accent-300);font-size:13px;letter-spacing:.2em;text-transform:uppercase}.mm-now-list{color:#cfd3e5;color:var(--color-neutral-300);font-size:15px;gap:8px;line-height:1.7}.mm-contact,.mm-now-list{display:flex;flex-direction:column}.mm-contact{justify-content:center;min-height:70vh;padding:0 7vw 60px;padding:0 var(--gutter) 60px}.mm-contact-prompt{color:#9397ab;color:var(--color-neutral-500);font-size:13px;letter-spacing:.22em;margin-bottom:22px;text-transform:uppercase}.mm-contact-mail{color:#e9e9ed;color:var(--color-text);display:inline-block;font-family:Inter,system-ui,sans-serif;font-family:var(--font-heading);font-size:clamp(34px,5.6vw,88px);font-weight:500;letter-spacing:-.02em;line-height:1.05;overflow-wrap:anywhere;transition:transform .4s cubic-bezier(.2,.8,.2,1),color .3s;transition:transform .4s var(--ease-out),color .3s}.mm-contact-mail:hover{color:#d2cefd;color:var(--color-accent-300);transform:skewX(-6deg) translateX(12px)}.mm-contact-mail svg{color:#9184d9;color:var(--color-accent);vertical-align:initial}.mm-contact-links{display:flex;font-size:14px;gap:26px;margin-top:50px}.mm-footer{color:#75798c;color:var(--color-neutral-600);display:flex;flex-wrap:wrap;font-size:12px;gap:16px;justify-content:space-between;letter-spacing:.08em;margin-top:90px}@media (max-width:1100px){.mm-project{gap:28px;grid-template-columns:80px 1fr 1fr}.mm-project-index{font-size:48px}}@media (max-width:900px){:root{--gutter:6vw}.mm-thread{display:none}.mm-orbit{bottom:18px;height:118px;right:18px;width:118px}.mm-orbit-arm>div{transform:translateY(-59px)!important}.mm-hero-hint{display:none}.mm-work{padding:90px 7vw;padding:90px var(--gutter)}.mm-work .mm-section-head{margin-bottom:50px}.mm-projects{gap:70px}.mm-project{gap:22px;grid-template-columns:1fr}.mm-project-index{font-size:40px}.mm-visual{margin-top:8px}.mm-mobile{bottom:-12px;right:4px}.mm-about,.mm-play-cards{grid-template-columns:1fr}.mm-about{gap:44px;padding:90px 7vw;padding:90px var(--gutter)}.mm-portrait{height:360px;justify-self:start}.mm-job{gap:14px}.mm-job,.mm-quote-grid{grid-template-columns:1fr}.mm-now-card{flex-direction:column;gap:18px;padding:28px}.mm-experience,.mm-now,.mm-quotes{padding-bottom:90px}.mm-contact{padding-bottom:170px}}@media (max-width:520px){.mm-hero-tag span:last-child{font-size:11px;letter-spacing:.16em}.mm-contact-mail{font-size:7vw}.mm-contact-mail svg{display:none}.mm-hero-blurb{font-size:17px}.mm-stats{gap:28px}.mm-graph{padding:14px}.mm-graph-legend{font-size:10px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.mm-caret,.mm-hero-hint,.mm-marquee-track,.mm-now-dot,.mm-orbit-counter,.mm-orbit-spin{animation:none}.mm-reveal{opacity:1;transform:none}.mm-letter,.mm-reveal,.mm-visual{transition:none}}