@font-face{font-family:Manrope;src:url('/assets/manrope-400.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Manrope;src:url('/assets/manrope-600.ttf') format('truetype');font-weight:600;font-display:swap}@font-face{font-family:Manrope;src:url('/assets/manrope-700.ttf') format('truetype');font-weight:700;font-display:swap}
:root{--paper:#f5f3ed;--ink:#181818;--muted:#62645f;--line:#d8dad1;--blue:#314fe8;--curve:cubic-bezier(.22,1,.36,1)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:112px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,sans-serif;font-size:16px;line-height:24px}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{touch-action:manipulation}button{border:0}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}button:active,.button:active{transform:scale(.98)}p{margin:0 0 24px;text-wrap:pretty}h1,h2,h3{margin:0;font-weight:600;text-wrap:balance}img{max-width:100%;display:block}.wrap{max-width:1280px;margin:auto;padding-left:48px;padding-right:48px}.eyebrow{font-size:12px;line-height:16px;letter-spacing:.1em;text-transform:uppercase;font-weight:700;margin-bottom:24px}.header{display:flex;align-items:center;gap:40px;position:relative;z-index:30;width:fit-content;max-width:calc(100% - 32px);margin:24px auto 0;padding:12px 24px;background:#ffffffdf;backdrop-filter:blur(20px);border:1px solid #e2e2db;border-radius:999px}.brand{font-size:30px;line-height:36px;font-weight:700;letter-spacing:-.07em}.brand-dot{color:var(--blue)}.desktop-nav{display:flex;gap:32px;font-size:14px;line-height:20px}.desktop-nav a:hover,.desktop-nav a[aria-current]{color:var(--blue)}.nav-contact{font-size:14px;line-height:20px;font-weight:600;display:flex;gap:24px;align-items:center}.nav-contact span{font-size:20px}.menu-button{display:none}.mobile-nav[hidden]{display:none}.hero{padding-top:80px;padding-bottom:64px;display:grid;grid-template-columns:1.15fr 1fr;gap:48px;align-items:center}.hero .eyebrow{display:flex;gap:8px;align-items:center}.blue-dot{width:8px;height:8px;background:var(--blue);border-radius:50%}h1{font-size:72px;line-height:1;letter-spacing:-.055em;max-width:680px;background:linear-gradient(100deg,#000,#666);color:transparent;background-clip:text;-webkit-background-clip:text}.muted-heading{font-weight:400}.hero-description{font-size:18px;line-height:28px;max-width:470px;color:#525650;margin-top:32px;margin-bottom:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;padding:8px 12px;min-height:48px;border-radius:6px;font-weight:600;font-size:16px;line-height:24px;transition:transform .5s var(--curve),opacity .3s var(--curve)}.button:hover{transform:translateY(-2px);opacity:.9}.button span{font-size:24px;line-height:32px}.primary{background:var(--blue);color:#fff}.hero-caption{font-size:12px;line-height:16px;color:var(--muted);margin:24px 0 0}.hero-art{position:relative;height:560px;background:#e8e9e2;border-radius:16px;overflow:hidden}.art-grid{position:absolute;inset:24px;border:1px solid #cdd0c5;border-radius:12px}.art-label{position:absolute;top:40px;left:40px;font-size:12px;letter-spacing:.1em;line-height:16px;color:#5d655d}.connections{position:absolute;inset:0;width:100%;height:100%}.art-note{position:absolute;display:flex;flex-direction:column;gap:8px;background:#faf9f4;padding:16px 24px;border:1px solid #d9ddd0;border-radius:8px;box-shadow:0 8px 24px #262d3010}.art-note strong{font-size:24px;line-height:32px;letter-spacing:-.04em}.art-note>span:last-child{font-size:12px;line-height:16px;color:#62645f}.note-index{font-size:12px;line-height:16px;letter-spacing:.06em;color:var(--blue)}.note-one{top:96px;left:40px;transform:rotate(-5deg)}.note-two{top:320px;right:32px;transform:rotate(4deg);z-index:2}.note-three{bottom:64px;left:40px;transform:rotate(-3deg)}.portrait-card{position:absolute;top:190px;right:48px;width:224px;background:var(--blue);padding:12px;border-radius:8px;color:white;transform:rotate(5deg);box-shadow:0 16px 40px #16294620}.portrait-card img{width:64px;height:64px;object-fit:cover;border-radius:50%;margin-bottom:16px;border:2px solid #fff}.portrait-card div{display:flex;flex-direction:column}.portrait-card strong{font-size:18px;line-height:28px}.portrait-card div span{font-size:12px;line-height:16px;color:#e2e7ff}.portrait-symbol{position:absolute;top:16px;right:16px;font-size:30px;line-height:36px}.art-footer{position:absolute;bottom:24px;right:32px;font-size:12px;line-height:16px;letter-spacing:.08em}.experience-strip{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:32px;padding-bottom:32px;border-block:1px solid var(--line)}.experience-strip>span{font-size:12px;line-height:16px;color:var(--muted);letter-spacing:.05em}.experience-strip>div{font-size:20px;line-height:28px;font-weight:600;letter-spacing:-.04em;color:#64675f}.section{padding-top:96px;padding-bottom:96px}.section-top{display:flex;justify-content:space-between;gap:64px;align-items:flex-end;margin-bottom:40px}h2{font-size:48px;line-height:1;letter-spacing:-.05em}.section-intro{max-width:330px;color:var(--muted);margin:0}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:32px}.filters button{padding:8px 16px;border:1px solid var(--line);border-radius:999px;background:transparent;font-size:14px;line-height:20px;transition:opacity .3s var(--curve)}.filters button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.filters button:hover{opacity:.7}.filters button span{margin-left:8px;font-size:12px;opacity:.6}.project-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.project[hidden]{display:none}.project-open{width:100%;padding:0;background:none;text-align:left;border-radius:8px}.project-visual{height:256px;position:relative;border-radius:8px;overflow:hidden;transition:transform .5s var(--curve)}.project-open:hover .project-visual{transform:translateY(-4px)}.visual-label,.visual-bottom{position:absolute;left:24px;right:24px;font-size:12px;line-height:16px;letter-spacing:.05em}.visual-label{top:24px}.visual-bottom{bottom:24px;opacity:.75}.visual-change{background:#dfe6f2;color:#34405e}.flow{display:flex;flex-direction:column;position:absolute;inset:64px 32px 48px}.flow>span{border:1px solid #a9b9d9;padding:8px 16px;background:#f3f6fc;border-radius:4px;font-size:14px;line-height:20px;width:fit-content}.flow>span:nth-of-type(2){align-self:center;background:var(--blue);color:white;border-color:var(--blue)}.flow>span:nth-of-type(3){align-self:flex-end}.flow i{height:4px;align-self:center;font-style:normal;position:relative;left:64px;top:-12px}.flow i:first-of-type{left:0;top:-8px}.visual-data{background:#e8e7dc;color:#424b3d}.data-stack{position:absolute;left:24px;right:24px;top:72px;display:flex;flex-direction:column;gap:8px;transform:rotate(-5deg)}.data-stack>span,.data-stack>strong{font-size:14px;line-height:20px;padding:8px 16px;background:#f9f9ef;border:1px solid #d0d3bf;border-radius:4px}.data-stack>span:first-child{margin-right:64px}.data-stack>span:nth-child(2){margin-left:32px;margin-right:32px}.data-stack>strong{background:#d5df9a;margin-left:64px;display:flex;justify-content:space-between}.visual-ops{background:#181818;color:#efeee5}.orbit{position:absolute;left:24px;right:24px;top:80px;display:flex;justify-content:center;align-items:center;gap:8px}.orbit strong{display:flex;align-items:center;justify-content:center;min-width:96px;height:96px;border:1px solid #7790ff;border-radius:50%;color:#e5eaff;font-size:16px}.orbit span{font-size:12px;line-height:16px;padding:8px;background:#313131;border-radius:4px}.project-meta{display:flex;justify-content:space-between;margin-top:24px;color:var(--muted);font-size:12px;line-height:16px}.project h3{font-size:30px;line-height:36px;letter-spacing:-.04em;margin:16px 0}.project p{color:var(--muted);font-size:14px;line-height:20px;max-width:330px}.text-link{display:flex;justify-content:space-between;font-weight:600;font-size:14px;line-height:20px}.manifesto{background:#e8ebdf;padding:80px 0}.word-reveal{font-size:60px;line-height:1;letter-spacing:-.05em;max-width:850px;margin-bottom:32px}.word-reveal span{opacity:.35;transition:opacity .5s var(--curve)}.word-reveal span.lit{opacity:1}.manifesto-signature{font-size:14px;line-height:20px;color:var(--muted);display:flex;justify-content:space-between}.about{display:grid;grid-template-columns:1fr 1.65fr;gap:80px}.about-intro h2{margin-bottom:32px}.about-intro>p:not(.eyebrow){color:var(--muted)}.location{font-weight:600;margin-top:40px}.location>span:first-child{color:var(--blue)}.location>span:last-child{font-size:12px;line-height:16px;color:var(--muted);font-weight:400}.timeline details{border-bottom:1px solid var(--line);padding:24px 0}.timeline details:first-child{padding-top:0}.timeline summary{display:grid;grid-template-columns:140px 1fr 16px;gap:16px;cursor:pointer;list-style:none}.timeline summary::-webkit-details-marker{display:none}.period{font-size:12px;line-height:16px;color:var(--muted);padding-top:4px}.timeline strong{font-size:18px;line-height:28px;font-weight:600;display:block}.timeline small{font-size:14px;line-height:20px;color:var(--muted)}.timeline b{font-size:20px;font-weight:400;transition:transform .5s var(--curve)}.timeline details[open] b{transform:rotate(45deg)}.timeline details p{margin:16px 0 0 156px;color:var(--muted);font-size:14px;line-height:20px;max-width:430px}.credentials{display:grid;grid-template-columns:1fr 2fr;gap:80px;padding-top:40px;padding-bottom:48px;border-block:1px solid var(--line)}.credentials h3{font-size:24px;line-height:32px;letter-spacing:-.03em}.credentials ul{padding:0;margin:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:24px}.credentials li{display:flex;flex-direction:column;gap:4px}.credentials li strong{font-size:14px;line-height:20px;font-weight:600}.credentials li span{font-size:12px;line-height:16px;color:var(--muted)}.journal-board{border:1px solid var(--line);border-radius:8px;overflow:hidden}.journal-heading{display:flex;align-items:center;gap:12px;background:#e9e9e0;padding:24px}.journal-dot{width:8px;height:8px;background:#697d4b;border-radius:50%}.journal-heading strong{font-weight:600;font-size:14px;line-height:20px}.journal-heading>span:last-child{margin-left:auto;font-size:12px;line-height:16px;color:var(--muted);letter-spacing:.06em}.journal-row{display:grid;grid-template-columns:32px 1fr 160px 64px;align-items:center;gap:24px;padding:32px 24px}.journal-row+.journal-row{border-top:1px solid var(--line)}.journal-row h3{font-size:20px;line-height:28px;letter-spacing:-.025em}.journal-row>span{font-size:12px;line-height:16px;color:var(--muted)}.soon{text-align:right}.contact-section{background:#181818;color:var(--paper);padding:80px 0}.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:96px;align-items:end}.contact-section h2{font-size:60px;line-height:1;margin-bottom:24px}.contact-section .eyebrow{color:#a6b6ff}.contact-section p:not(.eyebrow){color:#b2b5ae}.light{background:var(--paper);color:var(--ink)}.contact-details{padding-bottom:8px}.contact-details>a,.contact-details>button{font-size:16px;line-height:24px;width:100%;display:flex;justify-content:space-between;background:none;padding:16px 0;border-bottom:1px solid #454740;text-align:left}.contact-details>a:hover,.contact-details>button:hover{color:#c0ccff}.contact-details>span{display:block;color:#a9ada4;font-size:14px;line-height:20px;margin-top:32px}.copy-status{min-height:24px;font-size:12px;line-height:16px;margin:8px 0 0!important}.footer{display:flex;gap:32px;align-items:center;padding-top:32px;padding-bottom:32px;font-size:12px;line-height:16px;color:var(--muted)}.footer a:last-child{margin-left:auto}.footer a:hover{color:var(--blue)}dialog{max-width:760px;width:calc(100% - 32px);max-height:85dvh;border:0;border-radius:12px;padding:40px;background:var(--paper);color:var(--ink);overflow:auto;box-shadow:0 24px 96px #0003}dialog::backdrop{background:#0009;backdrop-filter:blur(6px)}.dialog-close{display:flex;margin-left:auto;gap:24px;background:none;padding:8px 0;font-size:14px;line-height:20px}.dialog-close span{font-size:24px}.dialog-title{font-size:36px;line-height:40px;margin:24px 0;letter-spacing:-.04em}dialog h3{font-size:20px;line-height:28px;margin:24px 0 12px}dialog p,dialog li{color:var(--muted)}dialog ul{padding-left:24px}dialog li{margin-bottom:8px}dialog .case-footer{font-size:12px;line-height:16px;background:#e8ebdf;padding:16px;border-radius:4px}.skip{position:fixed;z-index:100;top:-80px;left:16px;background:var(--ink);color:white;padding:12px 16px}.skip:focus{top:16px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.legal{max-width:780px;padding-top:80px;padding-bottom:80px}.legal h1{font-size:48px;line-height:1;margin-bottom:40px}.legal h2{font-size:24px;line-height:32px;margin:32px 0 16px}.legal a:not(.brand){text-decoration:underline}.legal p{color:var(--muted)}
@media(min-width:1500px){.hero{gap:80px}}@media(max-width:1100px){.wrap{padding-left:32px;padding-right:32px}.hero{gap:32px}h1{font-size:60px}.hero-art{height:520px}.note-one{left:24px}.note-three{left:24px;bottom:48px}.note-two{right:24px;top:300px}.portrait-card{right:32px;top:180px}.art-note{padding:12px 16px}.art-note strong{font-size:20px;line-height:28px}.about{gap:40px;grid-template-columns:1fr 1.5fr}.timeline summary{grid-template-columns:110px 1fr 16px}.timeline details p{margin-left:126px}.contact-inner{gap:64px}.orbit{left:16px;right:16px;gap:4px}.orbit span{padding:8px 4px}.orbit strong{min-width:80px;height:80px}.credentials{gap:40px}.journal-row{grid-template-columns:24px 1fr 112px 48px;gap:16px}.experience-strip>div{font-size:18px;line-height:28px}.experience-strip{flex-wrap:wrap}}
@media(max-width:760px){html{scroll-padding-top:32px}.wrap{padding-left:24px;padding-right:24px}.header{margin-top:16px;gap:24px;padding:8px 16px;width:calc(100% - 32px);justify-content:space-between}.desktop-nav{display:none}.menu-button{width:32px;height:40px;padding:8px 0;background:none;display:flex;justify-content:center;flex-direction:column;gap:8px}.menu-button span{height:2px;width:24px;background:var(--ink);transition:transform .5s var(--curve)}.menu-button[aria-expanded=true] span:first-child{transform:translateY(5px) rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-5px) rotate(-45deg)}.nav-contact{margin-left:auto}.mobile-nav{position:fixed;inset:0;z-index:25;background:#f5f3edf7;backdrop-filter:blur(24px);padding:128px 32px 48px;display:flex;flex-direction:column;gap:32px;font-size:36px;line-height:40px}.mobile-nav a{animation:enter .5s var(--curve) both}.mobile-nav a:nth-child(2){animation-delay:60ms}.mobile-nav a:nth-child(3){animation-delay:120ms}.mobile-nav a:nth-child(4){animation-delay:180ms}.hero{grid-template-columns:1fr;padding-top:48px;padding-bottom:40px;gap:40px}.hero h1{font-size:60px}.wide-break{display:none}.hero-description{font-size:18px;line-height:28px;max-width:540px;margin-top:24px}.hero-art{height:480px;max-width:520px;width:100%;justify-self:center}.note-one{left:32px;top:80px}.portrait-card{right:32px;top:160px}.note-two{top:280px}.note-three{bottom:48px}.experience-strip{padding-top:24px;padding-bottom:24px;gap:24px;justify-content:flex-start}.experience-strip>span{width:100%;font-size:12px}.experience-strip>span br{display:none}.experience-strip>div{font-size:18px}.section{padding-top:64px;padding-bottom:64px}.section-top{flex-direction:column;align-items:flex-start;gap:24px;margin-bottom:32px}h2{font-size:36px;line-height:40px}.section-intro{max-width:480px}.project-grid{grid-template-columns:1fr;gap:40px}.project-visual{height:280px}.flow{max-width:280px;inset:64px 40px 48px;margin:auto}.data-stack{max-width:320px;margin:auto;left:32px;right:32px}.orbit{top:80px;gap:16px}.orbit strong{min-width:112px;height:112px}.orbit span{padding:8px 16px}.project h3{font-size:30px;line-height:36px}.project p{max-width:none}.manifesto{padding:64px 0}.word-reveal{font-size:36px;line-height:40px}.about{grid-template-columns:1fr;gap:40px}.timeline summary{grid-template-columns:112px 1fr 16px;gap:12px}.timeline details p{margin-left:124px}.credentials{grid-template-columns:1fr;gap:32px;padding-top:32px;padding-bottom:32px}.credentials ul{gap:24px}.journal-heading{flex-wrap:wrap;padding:16px}.journal-heading>span:last-child{margin-left:20px;width:100%}.journal-row{grid-template-columns:24px 1fr 48px;gap:12px;padding:24px 16px}.journal-row h3{font-size:18px;line-height:28px}.journal-row>span:nth-child(3){grid-column:2;grid-row:auto}.journal-row .soon{grid-column:3;grid-row:1}.journal-row{position:relative}.journal-row .soon{grid-row:auto}.contact-inner{grid-template-columns:1fr;gap:40px}.contact-section{padding:64px 0}.contact-section h2{font-size:48px}.footer{flex-wrap:wrap;gap:16px;padding-top:24px;padding-bottom:24px}.footer>a:last-child{margin-left:0}.footer>span{flex:1}.footer>a:nth-child(3){width:calc(100% - 128px)}dialog{padding:24px}.dialog-title{font-size:30px;line-height:36px}}
@media(max-width:380px){.hero h1{font-size:48px}.hero-art{height:460px}.portrait-card{right:24px;width:200px}.note-one{left:24px}.timeline summary{grid-template-columns:1fr 16px}.timeline .period{grid-column:1/-1}.timeline details p{margin-left:0}.credentials ul{grid-template-columns:1fr}.nav-contact{gap:8px}.hero .eyebrow{font-size:12px;letter-spacing:.03em}.art-note{max-width:225px}}
@media(max-width:760px){.hero-art{height:560px}.portrait-card{top:80px;left:24px;right:24px;width:auto;display:flex;align-items:center;gap:16px;padding:16px;transform:rotate(2deg)}.portrait-card img{margin:0;flex-shrink:0}.portrait-card .portrait-symbol{top:8px;right:12px;font-size:20px}.art-note{left:24px;right:24px;width:auto;max-width:none;padding:12px 16px;gap:4px;transform:none}.note-one{top:208px}.note-two{top:312px}.note-three{top:416px;bottom:auto}.art-label{left:24px;top:40px}.art-footer{bottom:16px;right:24px;letter-spacing:0}.connections{opacity:.35}}
@keyframes enter{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.word-reveal span{opacity:1}}
