@font-face{font-family:Editorial;src:local("Baskerville")}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:#f9f9f7;color:#171719;font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.55}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #1d32ff;outline-offset:5px}.skip{position:fixed;top:-70px;background:white;padding:15px;z-index:100}.skip:focus{top:5px}header{display:flex;justify-content:space-between;align-items:center;padding:23px 4.6%;border-bottom:1px solid #dadada;background:#f9f9f7f5;position:sticky;top:0;z-index:20;backdrop-filter:blur(10px)}.wordmark{font-size:23px;font-weight:700;letter-spacing:-1px;line-height:1.2}.wordmark span{display:block;font-size:12px;letter-spacing:0;font-weight:400;margin-top:6px}nav{display:flex;align-items:center;gap:31px;font-size:14px}.contact{border:1px solid;border-radius:50px;padding:8px 18px}nav a:hover,.text-link:hover{color:#1d32ff}.hero{padding:54px 4.6% 44px}.eyebrow{font-size:12px;letter-spacing:.09em;text-transform:uppercase}.hero>.eyebrow{display:flex;justify-content:space-between;color:#595959}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(58px,8.6vw,140px);font-weight:400;letter-spacing:-.065em;line-height:.98;margin:36px 0 29px}em{font-family:Editorial,Baskerville,Georgia,serif;font-weight:400;letter-spacing:-.05em}h1 em{color:#1d32ff}.hero-bottom{display:flex;justify-content:space-between;align-items:end}.hero-bottom p{max-width:480px;font-size:19px;margin:0}.text-link{font-size:15px;display:inline-block;border-bottom:1px solid;padding-bottom:5px;white-space:nowrap}.feature{margin:0 4.6%;position:relative;background:#131416;overflow:hidden}.feature a{display:block;height:560px}.feature img{width:100%;height:100%;object-fit:cover;transition:transform 1s}.feature a:hover img{transform:scale(1.025)}.feature-caption{position:absolute;bottom:0;left:0;width:100%;padding:100px 42px 35px;background:linear-gradient(transparent,#000d);color:white;display:flex;justify-content:space-between;align-items:end}.feature h2{font-size:42px;line-height:1.1;letter-spacing:-1.5px;margin:13px 0 0}.pill{display:inline-block;border:1px solid;border-radius:100px;padding:11px 19px;font-size:14px;white-space:nowrap}.section{padding:110px 4.6% 0}.section-top{display:grid;grid-template-columns:1fr 2fr;gap:30px;align-items:start}.section-top h2,.about h2{font-size:clamp(40px,4.4vw,72px);line-height:1.06;font-weight:400;letter-spacing:-.045em;margin-bottom:48px}.toolbar{border-top:1px solid #aaa;display:flex;align-items:center;justify-content:space-between;padding:23px 0 33px;gap:15px}.filters{display:flex;gap:9px;flex-wrap:wrap}.filters button{padding:9px 16px;border:1px solid #c8c8c8;border-radius:100px;background:transparent;font-size:14px}.filters button.active{background:#171719;color:white;border-color:#171719}.filters button:hover{border-color:#1d32ff}.toolbar>span{font-size:12px;white-space:nowrap;color:#5a5a5a}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:60px 28px}.card:nth-child(4n+2){padding-top:90px}.visual{height:370px;overflow:hidden;position:relative;background:#e9e9e6}.visual img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.card a:hover .visual img{transform:scale(1.035)}.card-meta{display:flex;justify-content:space-between;align-items:center;margin-top:17px;font-size:12px;color:#555;gap:15px}.card h3{font-size:29px;line-height:1.12;letter-spacing:-.035em;margin:9px 0}.card p{font-size:16px;max-width:440px;color:#505052;margin-bottom:0}.card a:hover h3{color:#1d32ff}.view-label{position:absolute;right:18px;bottom:18px;background:#f9f9f7;color:#171719;border-radius:100px;padding:8px 16px;font-size:13px;opacity:0;transform:translateY(7px);transition:.25s}.card a:hover .view-label,.card a:focus-visible .view-label{opacity:1;transform:none}.diagram{padding:35px;color:white;display:flex;flex-direction:column;justify-content:space-between;background:#1d32ff}.diagram .diagram-title{font-size:48px;line-height:1.02;letter-spacing:-.05em;max-width:400px}.diagram .steps{display:flex;border-top:1px solid #ffffff60;padding-top:20px;gap:12px;font-size:14px}.steps span{flex:1}.diagram .stamp{font-size:11px;letter-spacing:.08em;text-transform:uppercase}.diagram.black{background:#19191b}.diagram.orange{background:#f24d25;color:#181818}.diagram.paper{background:#e7e7e3;color:#181818}.diagram.paper .steps,.diagram.orange .steps{border-color:#17171966}.index-intro{margin-left:34%;max-width:530px;color:#555;margin-top:-18px;margin-bottom:46px}.index-row{display:grid;grid-template-columns:60px 1.3fr 1fr 120px;gap:20px;border-top:1px solid #ccc;padding:24px 0;align-items:center}.index-row:last-child{border-bottom:1px solid #ccc}.index-row:hover{color:#1d32ff}.index-row span:first-child,.index-row span:last-child{font-size:12px}.index-row strong{font-size:21px;font-weight:400;line-height:1.25}.index-row .scope{font-size:14px;color:#626262}.index-row span:last-child{text-align:right}.about{background:#171719;color:white;margin-top:110px;padding-bottom:95px}.about>.eyebrow{color:#b4b4b4;margin-bottom:48px}.about-lead{display:grid;grid-template-columns:1.1fr 1fr;gap:10%}.about-lead p{font-size:21px;line-height:1.6;color:#dbdbdc}.about h2 em{color:#bcc3ff}.methods{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:65px}.methods>div{border-top:1px solid #666;padding-top:22px}.methods span{font-size:12px;color:#aaa}.methods h3{font-size:30px;font-weight:400;margin:18px 0 14px}.methods p{color:#bdbdbd;font-size:17px}footer{padding:95px 4.6% 30px}.footer-title{font-size:clamp(50px,8vw,120px);letter-spacing:-.06em;line-height:1;display:inline-block;margin:30px 0 75px}.footer-title em{color:#1d32ff}.footer-meta{border-top:1px solid #ccc;display:flex;justify-content:space-between;gap:20px;padding-top:25px;font-size:13px}.case-top{padding:38px 4.6% 55px}.back{display:inline-block;font-size:14px;border-bottom:1px solid;margin-bottom:50px}.case-top h1{font-size:clamp(48px,6.8vw,108px);max-width:1150px;margin-bottom:45px}.case-summary{display:grid;grid-template-columns:1fr 2fr;gap:35px}.case-summary p{font-size:24px;max-width:700px}.case-meta{font-size:14px;color:#575759}.case-meta b{font-weight:400;display:block;color:#171719;margin-top:10px}.case-visual{margin:0 4.6%}.case-visual .visual{height:520px}.case-visual .diagram-title{font-size:clamp(45px,7vw,90px);max-width:800px}.case-visual .stamp{font-size:13px}.case-visual .steps{font-size:21px}.caption{font-size:12px;color:#666;margin:13px 0}.case-body{padding:80px 4.6%}.case-block{display:grid;grid-template-columns:1fr 2fr;gap:35px;border-top:1px solid #ccc;padding:30px 0 55px}.case-block h2{font-size:16px;font-weight:400}.case-block p{font-size:23px;max-width:780px;line-height:1.6}.deliverables{display:flex;flex-wrap:wrap;gap:10px}.deliverables span{padding:10px 17px;border:1px solid #bbb;border-radius:50px;font-size:15px}.case-next{display:block;background:#1d32ff;color:white;padding:55px 4.6%}.case-next h2{font-size:clamp(34px,4vw,64px);font-weight:400;line-height:1.1;margin:20px 0}.case-next .eyebrow{opacity:.8}[hidden]{display:none!important}@media(max-width:760px){header{padding:18px 5%;align-items:start}.wordmark{font-size:20px}.wordmark span{font-size:11px}nav{gap:15px;font-size:13px}nav .contact{display:none}h1{font-size:clamp(46px,10vw,74px)}.hero{padding:33px 5%}.hero>.eyebrow span:last-child{display:none}.hero-bottom{display:block}.hero-bottom p{font-size:17px;margin-bottom:22px}.feature{margin:0 5%}.feature a{height:400px}.feature-caption{padding:70px 22px 23px}.feature h2{font-size:32px}.feature-caption .pill{display:none}.feature .eyebrow{font-size:10px}.section{padding:70px 5% 0}.section-top{display:block}.section-top h2{font-size:45px;margin-bottom:28px}.toolbar{display:block}.toolbar>span{display:block;margin-top:15px}.filters{gap:7px}.filters button{font-size:12px;padding:8px 12px}.grid{grid-template-columns:1fr;gap:40px}.card:nth-child(4n+2){padding:0}.visual{height:330px}.diagram .diagram-title{font-size:46px}.index-intro{margin:0 0 30px}.index-row{grid-template-columns:30px 1fr 62px;gap:10px;padding:21px 0}.index-row strong{font-size:20px}.index-row .scope{grid-column:2;grid-row:2}.index-row span:last-child{grid-column:3;grid-row:1}.about{margin-top:70px;padding-bottom:60px}.about-lead{display:block}.about h2{font-size:47px}.about-lead p{font-size:19px}.methods{grid-template-columns:1fr;gap:25px;margin-top:45px}.footer-meta{flex-wrap:wrap}footer{padding:60px 5% 30px}.footer-title{margin-bottom:50px}.case-top{padding:30px 5%}.case-top h1{font-size:49px}.case-summary{display:block}.case-meta{margin-bottom:25px}.case-summary p{font-size:21px}.case-visual .visual{height:370px}.case-visual .steps{font-size:14px}.case-body{padding:55px 5%}.case-block{display:block;padding-bottom:35px}.case-block h2{color:#555}.case-block p{font-size:20px}.diagram{padding:28px}.footer-meta>span{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}.case-visual .view-label{display:none}
body[data-theme="cinema"]{background:#141414;color:#f5f5f3}body[data-theme="cinema"] header{background:#141414f2;border-color:#444}body[data-theme="cinema"] h1 em,body[data-theme="cinema"] .footer-title em{color:#ff7b4f}body[data-theme="cinema"] .hero>.eyebrow,body[data-theme="cinema"] .card p,body[data-theme="cinema"] .card-meta,body[data-theme="cinema"] .index-intro,body[data-theme="cinema"] .scope,body[data-theme="cinema"] .case-meta,body[data-theme="cinema"] .caption,body[data-theme="cinema"] .case-meta b{color:#bbb}body[data-theme="cinema"] .filters button{color:white;border-color:#666}body[data-theme="cinema"] .filters button.active{background:#ff7b4f;color:#141414;border-color:#ff7b4f}body[data-theme="cinema"] .toolbar>span{color:#bbb}body[data-theme="cinema"] .feature{margin:0}body[data-theme="cinema"] .feature a{height:650px}body[data-theme="cinema"] .hero{padding-top:80px;padding-bottom:65px}body[data-theme="cinema"] .card a:hover h3,body[data-theme="cinema"] nav a:hover{color:#ff7b4f}body[data-theme="cinema"] .case-next{background:#ff7b4f;color:#141414}
body[data-theme="studio"]{background:#f0ff6a}body[data-theme="studio"] header{background:#f0ff6af5;border-color:#171719}body[data-theme="studio"] h1{font-weight:700;text-transform:uppercase;font-size:clamp(46px,7.8vw,125px)}body[data-theme="studio"] em{font-family:Arial,Helvetica,sans-serif;font-weight:700;font-style:normal}body[data-theme="studio"] h1 em,body[data-theme="studio"] .footer-title em{color:#171719}body[data-theme="studio"] .feature{margin:0 4.6% 0 26%}body[data-theme="studio"] .grid{gap:65px 40px}body[data-theme="studio"] .card:nth-child(4n+2){padding-top:130px}body[data-theme="studio"] .filters button{border-color:#171719}body[data-theme="studio"] .about em{color:#f0ff6a}body[data-theme="studio"] .case-next{background:#171719}body[data-theme="studio"] .section-top h2{font-weight:700}body[data-theme="studio"] .feature a{height:480px}
@media(max-width:760px){body[data-theme="studio"] .feature{margin:0 5%}body[data-theme="studio"] .card:nth-child(4n+2){padding:0}body[data-theme="cinema"] .feature a{height:400px}body[data-theme="cinema"] .hero{padding:35px 5%}}
.case-top h1:focus{outline:none}.feature a{height:auto!important}.feature img{display:block;aspect-ratio:16/7;object-fit:cover}.feature-caption{position:relative;padding:28px 36px;background:#171719}.feature h2{font-size:34px}.feature-caption .eyebrow{font-size:11px}@media(max-width:760px){.feature img{aspect-ratio:16/9}.feature-caption{padding:24px}.feature h2{font-size:29px}.feature-caption .eyebrow{font-size:11px}}
/* October revision: descriptive copy, original project galleries, and a fuller biography. */
.revised-hero h1{font-size:clamp(53px,7.2vw,108px);line-height:1.02;letter-spacing:-.05em;margin:38px 0}.intro-copy{max-width:850px}.hero-bottom .intro-copy p{max-width:780px;font-size:20px;line-height:1.65;margin-bottom:20px}.hero-bottom .intro-copy p:last-child{font-size:18px;color:#4c4c50}.hero-bottom{gap:55px;align-items:start}.hero-bottom>.text-link{margin-top:7px}.project-strip{display:grid;grid-template-columns:1.05fr .8fr 1.05fr;gap:18px;margin:18px 4.6% 0}.project-strip a{overflow:hidden}.project-strip img{display:block;width:100%;height:330px;object-fit:cover;transition:transform .5s}.project-strip a:nth-child(2){padding-top:52px}.project-strip a:nth-child(2) img{height:278px}.project-strip a>span{display:block;font-size:19px;margin:14px 0 0;font-weight:600}.project-strip small{display:block;font-size:13px;font-weight:400;margin-top:3px;color:#555}.project-strip a:hover img{transform:scale(1.015)}.experience-summary{margin:65px 4.6% 0;display:grid;grid-template-columns:repeat(3,1fr);gap:50px;border-top:1px solid #aaa;padding-top:25px}.experience-summary strong{font-size:22px;font-weight:400;line-height:1.2;display:block}.experience-summary p{font-size:15px;color:#555;margin:12px 0 0}.section-description{max-width:720px;color:#555;margin:-20px 0 40px;font-size:18px}.diagram .diagram-title{font-size:clamp(31px,3vw,47px);letter-spacing:-.04em;line-height:1.12}.steps{flex-wrap:wrap}.steps span{min-width:85px}.card p{max-width:550px;line-height:1.6}.revised-feature{margin-top:90px}.feature-caption{gap:40px}.feature-caption p{max-width:700px;font-size:18px;margin:14px 0 0;line-height:1.55}.about-photo{margin:0}.about-photo img{width:100%;display:block;max-height:420px;object-fit:cover}.about-photo figcaption{font-size:12px;color:#bdbdbd;margin-top:14px}.about-lead{gap:7%;grid-template-columns:1fr 1.1fr}.about-lead p{font-size:19px;line-height:1.7}.about h2{font-size:clamp(40px,4.4vw,68px)}.methods{margin-top:65px}.methods h3{font-size:26px;margin-top:0}.footer-title{font-weight:400;font-size:clamp(48px,7vw,90px);margin:24px 0 28px}.footer-description{font-size:20px;max-width:650px;margin-bottom:65px}.footer-description a{border-bottom:1px solid}.case-top h1{font-size:clamp(43px,5.8vw,88px);line-height:1.06;letter-spacing:-.045em}.case-summary p{font-size:23px;line-height:1.5}.case-meta{margin:0}.case-meta dt{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#666;margin-bottom:3px}.case-meta dd{margin:0 0 15px;font-size:15px;max-width:330px;color:#171719}.case-summary .credits{font-size:14px;color:#555;line-height:1.6;margin-top:20px}.case-visual .visual{height:auto;background:transparent}.case-visual img{max-height:660px;object-fit:contain;display:block}.case-body{padding-top:65px}.case-block h2{font-size:18px;line-height:1.4;max-width:230px}.case-block p{font-size:20px;line-height:1.75}.case-gallery{padding:5px 0 65px}.gallery-heading{display:flex;justify-content:space-between;gap:20px;margin-bottom:25px;align-items:baseline}.gallery-heading h2,.case-video h2,.related h2{font-size:24px;font-weight:400;margin:0}.gallery-heading p{font-size:14px;color:#555;margin:0}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:35px 28px}.gallery-grid figure{margin:0}.gallery-grid figure:last-child:nth-child(odd){grid-column:1 / -1}.gallery-image{border:0;padding:0;background:#e8e8e5;width:100%;position:relative;display:block}.gallery-image img{width:100%;height:370px;object-fit:contain;display:block}.gallery-grid figure:last-child:nth-child(odd) img{height:470px}.gallery-image span{position:absolute;right:15px;bottom:15px;padding:7px 12px;border-radius:30px;background:#fff;color:#171719;font-size:12px}.gallery-grid figcaption{font-size:14px;line-height:1.5;color:#555;margin-top:12px;max-width:750px}.case-video{padding:0 0 60px}.case-video video{width:100%;max-height:650px;background:#151515;margin-top:24px;display:block}.related{padding:15px 0 30px}.related a{border-top:1px solid #ccc;display:flex;justify-content:space-between;gap:20px;font-size:21px;padding:20px 0}.related h2{margin-bottom:25px}.related span{font-size:15px;color:#555;max-width:360px}.related a:hover{color:#1d32ff}dialog{border:0;background:#171719;color:white;padding:60px 25px 25px;width:min(1200px,95vw);max-height:95vh}dialog::backdrop{background:#000c}dialog img{width:100%;max-height:72vh;object-fit:contain}dialog p{margin:15px 0 0;font-size:15px}.image-close{position:absolute;right:20px;top:15px;border:1px solid #aaa;background:transparent;color:white;border-radius:30px;font-size:14px;padding:7px 16px}body[data-theme="cinema"] .intro-copy p:last-child,body[data-theme="cinema"] .project-strip small,body[data-theme="cinema"] .experience-summary p,body[data-theme="cinema"] .section-description,body[data-theme="cinema"] .case-meta dt,body[data-theme="cinema"] .case-meta dd,body[data-theme="cinema"] .credits,body[data-theme="cinema"] .gallery-grid figcaption,body[data-theme="cinema"] .gallery-heading p,body[data-theme="cinema"] .related span{color:#ccc}body[data-theme="studio"] .revised-hero h1{font-size:clamp(45px,6.8vw,105px)}
@media(max-width:760px){.revised-hero h1{font-size:clamp(43px,10.6vw,69px);margin:30px 0}.hero-bottom .intro-copy p{font-size:18px}.hero-bottom .intro-copy p:last-child{font-size:17px}.hero-bottom>.text-link{margin:0}.project-strip{margin:15px 5% 0;grid-template-columns:1fr 1fr;gap:18px 14px}.project-strip a:first-child{grid-column:1 / -1}.project-strip img{height:210px}.project-strip a:first-child img{height:245px}.project-strip a:nth-child(2){padding:0}.project-strip a:nth-child(2) img{height:210px}.project-strip a>span{font-size:16px}.project-strip small{font-size:12px}.experience-summary{margin:45px 5% 0;gap:24px;grid-template-columns:1fr}.experience-summary strong{font-size:21px}.experience-summary p{font-size:15px;max-width:490px}.section-description{font-size:17px;margin:0 0 30px}.section-top h2{font-size:40px}.revised-feature{margin-top:60px}.feature-caption p{font-size:16px}.about-photo{margin-bottom:35px}.about-lead p{font-size:18px}.case-summary p{font-size:21px}.case-top h1{font-size:43px}.case-block p{font-size:18px;line-height:1.75}.case-block h2{max-width:none;font-size:18px}.gallery-heading{display:block}.gallery-heading h2{font-size:23px}.gallery-heading p{margin-top:8px}.gallery-grid{grid-template-columns:1fr;gap:30px}.gallery-grid figure:last-child:nth-child(odd){grid-column:auto}.gallery-image img,.gallery-grid figure:last-child:nth-child(odd) img{height:330px}.related a{display:block;font-size:21px}.related span{display:block;margin-top:5px}.footer-description{font-size:18px}.case-gallery{padding-bottom:40px}.diagram .diagram-title{font-size:35px}.case-visual img{max-height:460px}.case-meta dd{max-width:none}}
.project-references{padding:0 0 50px}.project-references h2{font-size:20px;font-weight:400}.project-references a{display:block;font-size:16px;text-decoration:underline;text-underline-offset:4px}.hero-bottom .intro-copy p{margin-bottom:22px}.hero-bottom .intro-copy p:last-child{margin-bottom:0}
