*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure,blockquote{margin:0}h1,h2,h3{font-weight:inherit}h1{letter-spacing:-.075em;line-height:.98}h2{letter-spacing:-.06em;line-height:1.03}h3{letter-spacing:-.04em}p{line-height:1.65}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}a,button,input,select,textarea{outline-offset:5px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent)}::selection{background:var(--accent);color:var(--bg)}.skip{position:absolute;z-index:999;top:-100px;left:10px;background:var(--text);color:var(--bg);padding:14px}.skip:focus{top:8px}.site-nav{height:91px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 var(--pad);position:relative;z-index:20;border-bottom:1px solid var(--line);background:var(--bg)}.brand{white-space:nowrap;letter-spacing:-.055em;font-size:24px;font-weight:800}.navlinks{display:flex;gap:clamp(18px,3vw,47px);align-items:center}.navlinks a{font-size:13px;opacity:.7;transition:opacity .2s}.navlinks a:hover,.navlinks a:focus-visible{opacity:1}.nav-action{font-size:12px;font-weight:700;letter-spacing:.06em;border:1px solid var(--line);border-radius:100px;padding:15px 21px;white-space:nowrap;transition:background .2s,color .2s}.nav-action:hover{background:var(--text);color:var(--bg)}.menu-button{border:0;background:transparent;color:inherit;width:44px;height:44px;display:none;flex-direction:column;justify-content:center;gap:7px;padding:10px}.menu-button span{height:1px;background:currentColor;width:100%}.section{padding:clamp(84px,10vw,180px) var(--pad)}.micro{font-family:var(--mono);font-size:11px;letter-spacing:.17em;text-transform:uppercase;line-height:1.7;font-weight:500}.demo-note{font-family:var(--mono);letter-spacing:.1em;font-size:10px;opacity:.72;line-height:1.5}.section-head{display:flex;gap:40px;justify-content:space-between;align-items:end;margin:24px 0 60px}.section-head h2{font-size:clamp(54px,6.8vw,112px);max-width:940px}.section-head p{font-size:16px;max-width:315px;opacity:.64}.featured{padding-top:126px}.case-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:72px 30px}.case-card{grid-column:span 6;min-width:0;display:block}.case-card:first-child{grid-column:span 8}.case-card:nth-child(2){grid-column:span 4;margin-top:160px}.case-card:nth-child(3){grid-column:4/span 7}.case-image{position:relative;aspect-ratio:1.3;overflow:hidden;background:var(--surface)}.case-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.16,1,.3,1),filter .7s}.case-card:hover img{transform:scale(1.045)}.card-open{position:absolute;bottom:17px;right:17px;width:45px;height:45px;background:var(--accent);color:var(--bg);display:grid;place-items:center;font-size:24px;border-radius:50%;transform:translateY(10px);opacity:0;transition:.3s}.case-card:hover .card-open,.case-card:focus-visible .card-open{opacity:1;transform:translateY(0)}.case-meta{display:flex;gap:20px;justify-content:space-between;margin-top:20px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;opacity:.64}.case-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:11px}.case-title h3{font-size:clamp(28px,3vw,46px)}.case-title span{font-size:11px;letter-spacing:.12em;white-space:nowrap}.case-card>p{font-size:15px;max-width:480px;margin-top:9px;opacity:.65}.text-link{display:inline-flex;align-items:center;gap:28px;border-bottom:1px solid currentColor;font-size:12px;font-weight:700;letter-spacing:.11em;padding:12px 0;margin-top:36px;text-transform:uppercase;transition:gap .25s}.text-link:hover{gap:46px}.primary-btn{display:inline-flex;gap:35px;align-items:center;justify-content:space-between;border:1px solid transparent;background:var(--accent);color:var(--button-ink);font-size:13px;letter-spacing:.075em;font-weight:700;padding:20px 26px;min-height:58px;border-radius:2px;transition:transform .2s,filter .2s;white-space:normal}.primary-btn:hover{transform:translateY(-3px);filter:brightness(1.06)}.service-section{border-top:1px solid var(--line)}.service-list{border-top:1px solid var(--line)}.service-item{display:grid;grid-template-columns:60px minmax(160px,1.1fr) minmax(260px,.8fr) 30px;align-items:start;gap:25px;padding:35px 0;border-bottom:1px solid var(--line)}.service-item>span:first-child{font-family:var(--mono);font-size:12px;opacity:.58}.service-item h3{font-size:clamp(26px,3.3vw,47px)}.service-item p{max-width:430px;font-size:15px;opacity:.66}.service-item>span:last-child{font-size:23px}.about-band{background:var(--contrast-bg);color:var(--contrast-text)}.about-band-inner{display:grid;grid-template-columns:1.45fr .55fr;align-items:end;gap:60px;margin-top:40px}.about-band h2{font-family:var(--display);font-size:clamp(52px,6.5vw,105px)}.about-band p{font-size:17px;opacity:.75}.endorsement{border-top:1px solid var(--line)}.endorsement blockquote{font-family:var(--display);font-size:clamp(45px,5.7vw,84px);line-height:1.1;max-width:1130px;margin:65px 0 25px;letter-spacing:-.04em}.endorsement p{font-size:13px;opacity:.58}.footer{background:var(--footer-bg);color:var(--footer-text);padding:105px var(--pad) 25px}.footer-top{display:grid;grid-template-columns:1.6fr .4fr;gap:50px;align-items:end}.footer h2{font-family:var(--display);font-size:clamp(54px,7.5vw,124px);max-width:1020px;line-height:1.01;margin:28px 0 32px}.footer-cta{display:inline-flex;gap:42px;align-items:center;border-bottom:1px solid currentColor;padding-bottom:13px;font-size:13px;letter-spacing:.13em}.foot-side{font-size:13px;line-height:1.8;opacity:.72;display:flex;flex-direction:column;gap:14px}.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:15px;font-size:11px;opacity:.55;border-top:1px solid currentColor;margin-top:120px;padding-top:24px;letter-spacing:.05em}.inner-hero{padding-top:130px;padding-bottom:100px;min-height:490px}.inner-hero h1{font-family:var(--display);font-size:clamp(69px,10vw,164px);max-width:1160px;margin:27px 0 31px}.inner-hero>p{max-width:680px;font-size:19px;opacity:.75}.work-page-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:70px 32px;padding-top:30px}.work-page-grid .case-card{grid-column:span 6}.work-page-grid .case-card:first-child{grid-column:span 8}.work-page-grid .case-card:nth-child(2){grid-column:span 4;margin-top:185px}.work-page-grid .case-card:nth-child(3){grid-column:3/span 8}.work-page-grid .case-image{aspect-ratio:1.3}.about-page-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(45px,8vw,150px);align-items:center;padding-top:0}.about-page-art{overflow:hidden;aspect-ratio:4/5}.about-page-art img{width:100%;height:100%;object-fit:cover}.about-page-copy h2{font-family:var(--display);font-size:clamp(40px,5vw,78px);margin:30px 0}.about-page-copy p{font-size:17px;opacity:.75;margin-bottom:20px}.experience h2,.skills-section h2,.detail-process h2,.speciality-end h2{font-size:clamp(50px,5.4vw,92px);margin:30px 0 55px}.timeline-row{display:grid;grid-template-columns:220px 1fr;border-top:1px solid var(--line);padding:28px 0}.timeline-row:last-child{border-bottom:1px solid var(--line)}.timeline-row>span{font-family:var(--mono);font-size:13px;opacity:.6}.timeline-row h3{font-size:26px}.timeline-row p{font-size:15px;opacity:.55;margin-top:6px}.skill-cloud{display:flex;flex-wrap:wrap;gap:10px}.skill-cloud span{padding:15px 20px;border:1px solid var(--line);border-radius:100px;font-size:14px}.fineprint{font-size:12px;opacity:.6;margin-top:30px}.speciality-items{padding-top:0}.speciality-items article{border-top:1px solid var(--line);padding:45px 0;display:grid;grid-template-columns:180px 1fr 1fr;gap:30px}.speciality-items article:last-child{border-bottom:1px solid var(--line)}.speciality-items article h2{font-size:clamp(38px,4vw,65px)}.speciality-items article p{font-size:17px;opacity:.65;max-width:510px}.speciality-end{background:var(--contrast-bg);color:var(--contrast-text)}.speciality-end h2{max-width:1050px}.detail .case-intro{padding-top:105px;padding-bottom:55px}.backlink{display:inline-block;font-size:11px;letter-spacing:.1em;margin-bottom:95px;border-bottom:1px solid currentColor;padding-bottom:12px}.case-intro>.micro{display:block}.case-intro h1{font-family:var(--display);font-size:clamp(75px,10vw,165px);margin:24px 0}.case-intro>p{max-width:750px;font-size:20px;opacity:.7}.case-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-top:1px solid var(--line);margin-top:95px;padding-top:25px}.case-facts span{display:flex;flex-direction:column;gap:10px;font-family:var(--mono);font-size:11px;letter-spacing:.09em;opacity:.65}.case-facts b{font-family:var(--sans);font-size:15px;letter-spacing:0;opacity:1;color:var(--text)}.detail-hero{width:100%;height:75vw;max-height:950px;min-height:450px;overflow:hidden;background:var(--surface)}.detail-hero img{width:100%;height:100%;object-fit:cover}.detail-narrative{display:grid;grid-template-columns:1fr 1fr;row-gap:120px;column-gap:10vw}.detail-narrative h2{font-family:var(--display);font-size:clamp(45px,5vw,80px);margin-top:20px}.detail-narrative p{font-size:clamp(17px,1.7vw,23px);line-height:1.75;max-width:610px;opacity:.76}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.process-grid>div{border-top:1px solid var(--line);padding-top:24px}.process-grid span{font-family:var(--mono);font-size:12px;opacity:.5}.process-grid p{margin-top:32px;font-size:18px;max-width:355px}.detail-numbers{background:var(--contrast-bg);color:var(--contrast-text)}.detail-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-top:45px;margin-bottom:65px}.detail-stat-grid>div{border-top:1px solid currentColor;padding-top:22px;display:flex;flex-direction:column;gap:18px}.detail-stat-grid strong{font-size:clamp(44px,6vw,86px);font-weight:600;letter-spacing:-.07em}.detail-stat-grid span{font-family:var(--mono);font-size:11px;letter-spacing:.1em;opacity:.65}.detail-numbers p{max-width:850px;font-size:19px;opacity:.8;margin-bottom:22px}.detail-gallery{display:grid;grid-template-columns:1.3fr .7fr;gap:24px}.gallery-button{padding:0;position:relative;border:0;background:var(--surface);overflow:hidden;min-width:0;aspect-ratio:1.1}.gallery-button:nth-child(1){grid-row:span 2;aspect-ratio:auto}.gallery-button img{height:100%;width:100%;object-fit:cover;transition:transform .6s}.gallery-button:hover img{transform:scale(1.04)}.gallery-button span{position:absolute;right:15px;bottom:15px;background:var(--bg);color:var(--text);font-size:10px;letter-spacing:.1em;padding:13px;opacity:0;transition:.2s}.gallery-button:hover span{opacity:1}.lightbox{max-width:min(94vw,1200px);max-height:93vh;background:#111;color:#fff;border:1px solid #666;padding:18px}.lightbox::backdrop{background:#000e;backdrop-filter:blur(8px)}.lightbox img{max-height:79vh;margin:auto}.lightbox button{background:transparent;border:0;color:inherit;font-size:12px;letter-spacing:.1em;display:block;margin:0 0 16px auto}.lightbox p{font-size:13px;margin-top:12px;opacity:.8}.next-project{background:var(--surface);display:flex;justify-content:space-between;align-items:end;gap:40px}.next-project>a{font-family:var(--display);font-size:clamp(50px,7vw,100px);line-height:1}.next-project>a span{font-size:.5em}.contact-hero{padding-bottom:35px}.contact-hero h1{font-family:var(--display);font-size:clamp(70px,11vw,177px);max-width:1200px;margin:25px 0}.contact-hero p{font-size:21px;max-width:680px;opacity:.72}.contact-columns{display:grid;grid-template-columns:.8fr 1.2fr;gap:12vw;padding-top:70px}.contact-aside h2{font-size:clamp(36px,3.5vw,55px);margin-bottom:30px}.contact-aside p{font-size:16px;opacity:.68;margin-bottom:18px}.contact-form{display:flex;flex-direction:column;gap:12px}.contact-form label{font-size:11px;letter-spacing:.12em;margin-top:18px}.contact-form input,.contact-form textarea,.contact-form select{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--text);padding:15px 1px;border-radius:0;min-height:54px;resize:vertical}.contact-form option{background:var(--bg)}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--text);opacity:.45}.contact-form button{align-self:start;margin-top:26px}.contact-form small{font-size:11px;opacity:.6;max-width:500px;line-height:1.5}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.impact-strip{display:flex;justify-content:space-between;gap:20px;padding:35px var(--pad);border-bottom:1px solid var(--line)}.impact-strip>div{display:flex;flex-direction:column;gap:10px}.impact-strip strong{font-size:clamp(30px,3.3vw,52px);letter-spacing:-.07em}.impact-strip span{font-family:var(--mono);font-size:10px;letter-spacing:.1em;opacity:.62}.hero{position:relative}.hero h1{font-family:var(--display)}.hero p{max-width:550px}.hero img{width:100%;height:100%;object-fit:cover}.hero-kicker,.topline,.hero-bottom,.motion-eyebrow,.motion-footer{font-family:var(--mono);font-size:11px;letter-spacing:.12em;display:flex;justify-content:space-between;gap:20px}.visible{opacity:1;transform:none}html.enhanced [data-reveal]{transition:opacity .7s,transform .7s}html.enhanced [data-reveal]:not(.visible){opacity:.2;transform:translateY(22px)}
@media(max-width:900px){:root{--pad:5vw}.site-nav{height:74px}.menu-button{display:flex}.nav-action{display:none}.navlinks{position:absolute;left:0;right:0;top:74px;background:var(--bg);padding:18px var(--pad) 34px;display:none;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line);box-shadow:0 20px 40px #0002;gap:0}.navlinks.open{display:flex}.navlinks a{font-size:19px;padding:14px 0;border-bottom:1px solid var(--line);opacity:1}.section-head{display:block}.section-head p{margin-top:25px}.case-grid .case-card:nth-child(2){margin-top:80px}.about-band-inner{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr 1fr}.contact-columns{gap:7vw}.service-item{grid-template-columns:35px 1fr;gap:12px 20px}.service-item p{grid-column:2;grid-row:2}.service-item>span:last-child{grid-column:1;grid-row:2}.speciality-items article{grid-template-columns:100px 1fr}.speciality-items article p{grid-column:2}}
@media(max-width:640px){:root{--pad:22px}.section{padding:78px var(--pad)}.featured{padding-top:80px}.brand{font-size:19px}.site-nav{padding:0 var(--pad)}.section-head{margin:22px 0 35px}.section-head h2{font-size:clamp(46px,13vw,75px)}.section-head p{font-size:15px}.case-grid,.work-page-grid{display:block}.case-card,.work-page-grid .case-card{margin-bottom:52px!important}.case-card:nth-child(2),.work-page-grid .case-card:nth-child(2){margin-top:0}.case-image{aspect-ratio:1.12}.case-meta{font-size:10px;gap:10px}.case-title h3{font-size:33px}.case-title span{font-size:10px}.service-item{padding:25px 0}.service-item h3{font-size:27px}.service-item p{font-size:14px}.about-band-inner{gap:30px}.about-band h2{font-size:clamp(46px,12vw,67px)}.about-band p{font-size:15px}.endorsement blockquote{font-size:clamp(42px,10vw,66px);margin:40px 0 20px}.footer{padding:75px var(--pad) 24px}.footer-top{grid-template-columns:1fr;gap:55px}.footer h2{font-size:clamp(50px,13vw,82px)}.footer-bottom{margin-top:75px;flex-direction:column}.inner-hero{min-height:auto;padding-top:90px;padding-bottom:70px}.inner-hero h1{font-size:clamp(61px,16vw,106px)}.inner-hero>p{font-size:17px}.about-page-layout{grid-template-columns:1fr;gap:45px}.about-page-art{aspect-ratio:1.2}.about-page-copy h2{font-size:49px}.experience h2,.skills-section h2{font-size:55px}.timeline-row{grid-template-columns:100px 1fr;gap:15px}.timeline-row h3{font-size:21px}.speciality-items article{display:block}.speciality-items article h2{font-size:38px;margin:20px 0}.detail .case-intro{padding-top:75px}.backlink{margin-bottom:60px}.case-intro h1{font-size:clamp(64px,16vw,112px)}.case-intro>p{font-size:18px}.case-facts{grid-template-columns:1fr;gap:20px;margin-top:45px}.detail-hero{min-height:320px;height:100vw}.detail-narrative{grid-template-columns:1fr;row-gap:22px}.detail-narrative p{margin-bottom:55px;font-size:17px}.detail-narrative h2{font-size:45px}.process-grid,.detail-stat-grid{grid-template-columns:1fr;gap:30px}.detail-process h2{font-size:55px}.process-grid p{margin-top:15px}.detail-stat-grid strong{font-size:55px}.detail-gallery{display:block}.gallery-button,.gallery-button:nth-child(1){display:block;width:100%;aspect-ratio:1.1;margin:0 0 15px}.next-project{display:block}.next-project>a{display:block;margin-top:32px;font-size:60px}.contact-hero h1{font-size:clamp(66px,16vw,115px)}.contact-hero p{font-size:17px}.contact-columns{grid-template-columns:1fr;gap:50px;padding-top:10px}.impact-strip{padding:26px var(--pad);gap:15px;flex-wrap:wrap}.impact-strip>div{flex:1;min-width:85px}.impact-strip strong{font-size:28px}.impact-strip span{font-size:9px}.hero-kicker,.topline,.hero-bottom,.motion-eyebrow,.motion-footer{font-size:9px}.menu-open{overflow:hidden}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}.enhanced [data-reveal]{opacity:1!important;transform:none!important}}

:root{--bg:#f7f6f2;--text:#202024;--surface:#e9e5f3;--line:#20202427;--accent:#8162dd;--button-ink:#fff;--contrast-bg:#292630;--contrast-text:#f6f3ef;--footer-bg:#ece7e2;--footer-text:#222129;--sans:'Manrope',sans-serif;--display:'Manrope',sans-serif;--mono:'IBM Plex Mono',monospace;--pad:5.5vw}
.brand{font-weight:800}.site-nav{background:#f7f6f2}.nav-action{background:#e9e3fb;color:#6951b5;border:0}.hero-product{padding:35px var(--pad) 0;min-height:900px}.topline{border-bottom:1px solid var(--line);padding-bottom:20px}.hero-product h1{font-size:clamp(75px,10.7vw,177px);font-weight:600;letter-spacing:-.105em;max-width:1200px;margin:80px 0 -12px;z-index:2;position:relative}.hero-product h1 em{font-family:'Instrument Serif',serif;font-weight:400;letter-spacing:-.065em;color:var(--accent)}.product-hero-row{display:grid;grid-template-columns:.45fr .55fr;gap:60px;align-items:center;min-height:510px}.product-hero-row>div:first-child{max-width:350px;padding:30px 0 40px}.product-hero-row p{font-size:19px;opacity:.68}.product-hero-row .primary-btn{margin-top:30px}.product-art{position:relative;width:100%;height:470px;transform:rotate(3deg);background:#e7e0fa;border-radius:120px 20px 120px 20px;overflow:hidden;box-shadow:30px 30px 0 #e8e4ef}.product-art img{width:100%;height:100%;object-fit:cover}.orbit-stamp{position:absolute;right:14px;bottom:20px;font-family:var(--mono);font-size:10px;letter-spacing:.13em;background:#fff;padding:15px;border-radius:100px}.hero-bottom{border-top:1px solid var(--line);padding:20px 0}.featured{background:#fff}.featured .case-grid .case-card:first-child{grid-column:span 7}.featured .case-grid .case-card:nth-child(2){grid-column:span 5;margin-top:140px}.case-image{border-radius:22px}.case-card .case-image img{transition:transform .7s;filter:saturate(.85)}.case-meta{color:#645974}.case-title h3{font-size:clamp(29px,3.4vw,50px);font-weight:600}.section-head h2{font-weight:600}.service-section .service-item{border-top:0}.about-band h2{font-family:'Instrument Serif',serif;font-weight:400;letter-spacing:-.03em;font-size:clamp(58px,8vw,130px)}.endorsement blockquote{font-family:'Instrument Serif',serif;font-weight:400}.footer h2{font-family:'Instrument Serif',serif;font-weight:400}.inner-hero h1,.case-intro h1,.contact-hero h1{font-family:'Instrument Serif',serif;font-weight:400;letter-spacing:-.04em}.detail-narrative h2{font-weight:600}.speciality-end h2{font-weight:500}
@media(max-width:900px){.hero-product{min-height:0}.hero-product h1{margin:70px 0 25px}.product-hero-row{min-height:0}.product-art{height:390px}}
@media(max-width:640px){.hero-product{padding:26px var(--pad) 0}.hero-product h1{font-size:clamp(65px,14vw,100px);margin:64px 0 35px}.product-hero-row{display:flex;flex-direction:column;align-items:stretch;gap:22px}.product-hero-row>div:first-child{max-width:100%;padding:0}.product-hero-row p{font-size:16px}.product-art{height:330px;border-radius:50px 10px;box-shadow:12px 12px 0 #e8e4ef}.hero-bottom{margin-top:45px}.topline span:last-child{display:none}.featured{padding-top:90px}}
