.interface-icon{display:inline-block;width:1em;height:1em;vertical-align:-.125em;flex-shrink:0;pointer-events:none}
.proof-grid .home-project .work-image{isolation:isolate}
.home-project .project-shade{position:absolute;inset:0;background:#000;opacity:0;z-index:2;transition:opacity .45s ease}
.home-project .project-title{position:absolute;inset:0;z-index:3;display:flex;align-items:center;justify-content:center;padding:32px;text-align:center;color:var(--paper);font-size:clamp(24px,3.2vw,52px);line-height:1.05;opacity:0;transform:translateY(8px);transition:opacity .45s ease,transform .45s ease}
.home-project:hover .project-shade,.home-project:focus-visible .project-shade{opacity:.5}
.home-project:hover .project-title,.home-project:focus-visible .project-title{opacity:1;transform:none}
@media(hover:none),(pointer:coarse){.home-project .project-shade{opacity:.3}.home-project .project-title{opacity:1;transform:none;font-size:clamp(24px,6vw,40px)}}
@media(prefers-reduced-motion:reduce){.home-project .project-shade,.home-project .project-title{transition:none}}
.motion-paused .home-project .project-shade,.motion-paused .home-project .project-title{transition:none}
/* Full-width films with the original surrounding editorial styling. */
.selected .proof-grid{display:flex;flex-direction:column;gap:16px;margin-left:-6vw;margin-right:-6vw}
.proof-grid .home-project{width:100%;display:block}
.proof-grid .home-project:nth-child(n) .work-image{aspect-ratio:16/9;max-height:90svh;min-height:280px;overflow:hidden;background:#080808}
.proof-film{display:block;width:100%;height:100%;object-fit:cover}
.home-project .project-title{justify-content:flex-end;align-items:flex-end;text-align:right;padding:clamp(24px,4vw,64px);font-family:'DM Sans',Arial,sans-serif;font-size:clamp(38px,6vw,100px);font-weight:800;letter-spacing:-.065em;line-height:.94;text-transform:uppercase;max-width:100%}
.home-project .work-image video,.selected .weekly-video video{filter:blur(var(--project-blur,0px));transform:scale(1.035)!important;will-change:filter}
.selected .weekly-card{margin-top:16px}
.selected .weekly-card .weekly-video{width:100vw;max-width:none;margin-left:-6vw;border-radius:0;overflow:hidden}
@media(min-width:1700px){.selected .proof-grid{margin-left:calc(-1 * max(6vw,calc((100vw - 1500px)/2)));margin-right:calc(-1 * max(6vw,calc((100vw - 1500px)/2)))}.selected .weekly-card .weekly-video{margin-left:calc(-1 * max(6vw,calc((100vw - 1500px)/2)))}}
@media(max-width:720px){.selected .proof-grid{gap:8px}.proof-grid .home-project:nth-child(n) .work-image{aspect-ratio:4/3;min-height:0}.home-project .project-title{font-size:clamp(34px,8vw,58px);padding:24px}.selected .weekly-card{margin-top:8px}}
@media(prefers-reduced-motion:reduce){.home-project .work-image video,.selected .weekly-video video{filter:none!important}}
.home-project .project-title{flex-direction:column;gap:14px}
.home-project .project-title h3{font:inherit;letter-spacing:inherit;line-height:inherit;margin:0}
.home-project .project-client{font-size:clamp(12px,1.3vw,20px);font-weight:600;letter-spacing:.1em;line-height:1.3;text-transform:uppercase}
.all-projects-link{text-align:center;padding:100px 0}
.all-projects-link>a{font-size:clamp(44px,7vw,110px);font-weight:650;letter-spacing:-.055em;line-height:1.1}
.all-projects-link .serif{font-weight:400}.all-projects-link .interface-icon{font-size:.4em;vertical-align:middle;margin-left:.3em}
.selected .origins-banner{position:relative;margin:0 -6vw;width:calc(100% + 12vw);min-height:660px;display:flex;align-items:center;justify-content:center;isolation:isolate;overflow:hidden;border-radius:0;background:#030303}
.selected .origins-banner-art{position:absolute;inset:0;display:flex;z-index:-1;opacity:.72;transition:opacity .55s ease;transform:none}
.selected .origins-banner-art img{position:static;width:33.333%;height:100%;object-fit:cover;transform:none;border-radius:0}
.selected .origins-banner-copy{padding:70px 6vw;text-align:center;max-width:1000px;z-index:1}
.selected .origins-banner-copy p{margin-left:auto;margin-right:auto}
.selected .origins-banner:hover .origins-banner-art,.selected .origins-banner:focus-within .origins-banner-art{opacity:.25}
.set-pace-project{padding-top:0}.set-pace-project .weekly-card{max-width:100%;margin:0}.set-pace-project .weekly-video{border-radius:0}
.set-pace-project .weekly-cover{aspect-ratio:auto;min-height:0;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;padding:28px;border-radius:0}
.set-pace-project .weekly-cover h3{font-size:clamp(30px,4vw,60px)}
.capability-journey{height:450svh;position:relative;background:#030303;color:white}
.capability-stage{position:sticky;top:0;height:100svh;min-height:500px;overflow:hidden;display:flex;flex-direction:column;justify-content:center}
.capability-frames{position:relative;height:70svh;min-height:340px;margin-left:4vw}
.capability-slide{position:absolute;left:0;top:0;width:72vw;height:100%;display:block;transform-origin:left center;overflow:hidden;will-change:transform,opacity}
.capability-slide:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 20%,#000b)}
.capability-slide img{width:100%;height:100%;object-fit:cover;display:block}
.capability-slide h2{position:absolute;left:4vw;bottom:5vw;right:4vw;z-index:1;font-size:clamp(40px,6vw,100px);font-weight:750;line-height:.99;letter-spacing:-.055em;max-width:11ch;color:#fff}
.capability-steps{display:flex;gap:12px;margin:20px 4vw 0}
.capability-steps button{font-size:13px;color:#888;min-width:44px;min-height:44px;border-bottom:1px solid transparent}
.capability-steps button[aria-pressed=true]{color:white;border-color:white}
.capability-journey.is-quiet{height:auto;padding:80px 0}
.is-quiet .capability-stage{position:relative;height:auto;min-height:0}
.is-quiet .capability-frames{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;height:65svh}
.is-quiet .capability-slide{position:relative;flex:0 0 80vw;scroll-snap-align:start}
@media(min-width:1700px){.selected .origins-banner{margin-left:calc(-1 * max(6vw,calc((100vw - 1500px)/2)));width:100vw}}
@media(max-width:720px){.home-project .project-title{gap:10px}.all-projects-link{padding:70px 0}.selected .origins-banner{min-height:580px}.selected .origins-banner-art img{width:100%}.selected .origins-banner-art img:not(:last-child){display:none}.selected .origins-banner-copy{padding:50px 6vw}.selected .origins-banner-art{opacity:.35}.set-pace-project .weekly-cover{grid-template-columns:1fr}.capability-frames{height:65svh}.capability-slide{width:82vw}.capability-slide h2{font-size:clamp(36px,9vw,62px);bottom:30px}.capability-journey{height:400svh}}
@media(prefers-reduced-motion:reduce){.selected .origins-banner-art{transition:none}}
/* Near-black surfaces and more compact typography. */
:root{--ink:#070707}
.site-header.scrolled{background:#070707fa}
.client-strip{background:#070707}
.home-project .project-title{gap:3px;font-size:clamp(42px,6.7vw,112px);line-height:.88}
.home-project .project-client{font-size:clamp(17px,2.2vw,34px);font-weight:650;letter-spacing:.015em;line-height:1.05}
.all-projects-link{position:relative;isolation:isolate;background:#030303;overflow:hidden}
.all-projects-link .all-projects-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1;pointer-events:none}
.all-projects-link .all-projects-film.loaded{opacity:.13}
.all-projects-link>a{transition:color .25s ease}
.all-projects-link>a:hover,.all-projects-link>a:focus-visible{color:var(--acid)}
.selected.section-pad{padding-bottom:0}
.selected .origins-banner{margin-bottom:0}
.selected .proof-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:32px}
.selected .proof-heading h2{font-family:'DM Sans',Arial,sans-serif;font-weight:750;text-transform:uppercase;font-size:clamp(30px,4vw,66px);letter-spacing:-.035em;line-height:.96;margin:0 0 8px}
.selected .proof-heading p{font-size:clamp(12px,1.3vw,18px);text-transform:uppercase;line-height:1.12;color:var(--muted);max-width:58ch}
.selected .proof-heading>.underlink{flex-shrink:0;font-size:14px}
.capability-stage{padding-top:100px;justify-content:flex-start}
.capability-heading{margin:0 4vw 22px;font-size:clamp(26px,3vw,44px);font-weight:650;line-height:1}
.capability-frames{height:calc(100svh - 195px);min-height:300px;width:auto}
.capability-slide h2{line-height:.88;max-width:10ch;bottom:4vw}
.capability-description{position:absolute;z-index:1;bottom:4vw;right:3vw;margin:0;max-width:18ch;color:#fff;text-align:right;font-size:clamp(13px,1.4vw,20px);font-weight:400;line-height:1.15}
.capability-slide:last-child h2{opacity:var(--capability-title-opacity,1);transform:translateY(calc((1 - var(--capability-title-opacity,1))*20px))}
.is-quiet .capability-stage{padding-top:0}
@media(max-width:720px){.home-project .project-title{font-size:clamp(35px,9vw,64px);gap:4px;line-height:.92}.home-project .project-client{font-size:clamp(16px,4.1vw,23px);line-height:1.05}.selected .proof-heading{flex-direction:column;align-items:flex-start;gap:18px}.selected .proof-heading h2{font-size:32px}.selected .proof-heading p{font-size:12px;line-height:1.2}.capability-stage{padding-top:110px}.capability-heading{font-size:28px;margin-bottom:18px}.capability-frames{height:calc(100svh - 195px)}.capability-slide h2{bottom:68px;line-height:.94;font-size:clamp(34px,9vw,58px)}.capability-description{bottom:28px;right:5vw;font-size:14px}.capability-slide:last-child h2{bottom:35px}}
.capability-slide h2,.capability-description{opacity:var(--capability-title-opacity,1)}
.selected .proof-heading h2,.capability-heading{font-family:'DM Sans',Arial,sans-serif;font-size:clamp(52px,6.5vw,105px);font-weight:450;line-height:.99;letter-spacing:-.065em;text-transform:none}
.selected .proof-heading h2 em,.capability-heading em{font-family:'Instrument Serif',Georgia,serif;font-weight:400;font-style:italic}
.selected .proof-heading p{text-transform:none;font-size:clamp(14px,1.5vw,18px);line-height:1.3;margin-top:18px}
.capability-heading{margin-bottom:24px}
.capability-frames{height:calc(100svh - 340px);min-height:280px}
.all-projects-link{margin-left:-6vw;margin-right:-6vw}
.all-projects-link .all-projects-film{opacity:.05;z-index:-1}
.all-projects-link .all-projects-film.loaded{opacity:.05}
.company-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;background:var(--acid);color:#070707;margin:0 -6vw;padding:95px 6vw;overflow:hidden}
.company-stats>div{display:flex;flex-direction:column;gap:14px;will-change:transform,opacity}
.company-stats strong{font-size:clamp(48px,7vw,112px);font-weight:750;letter-spacing:-.06em;line-height:1;white-space:nowrap}
.company-stats span{font-size:16px;line-height:1.3}
.client-strip{padding:24px 0}
@media(min-width:1700px){.all-projects-link,.company-stats{margin-left:calc(-1 * max(6vw,calc((100vw - 1500px)/2)));margin-right:calc(-1 * max(6vw,calc((100vw - 1500px)/2)))}}
@media(max-width:720px){.selected .proof-heading h2,.capability-heading{font-size:clamp(48px,12vw,76px)}.capability-frames{height:calc(100svh - 275px);min-height:280px}.company-stats{grid-template-columns:1fr;padding:65px 6vw;gap:48px}.company-stats strong{font-size:clamp(64px,18vw,100px)}.client-strip{padding:18px 0}}
@media(prefers-reduced-motion:reduce){.company-stats>div{opacity:1!important;transform:none!important}}
.company-stats{position:relative}
.selected .proof-heading h2 em,.capability-heading em{display:inline-block;font-size:1.28em;line-height:.96;color:color-mix(in srgb,var(--acid) var(--heading-lime,0%),var(--paper));}
.company-stats>div{gap:5px;transition:transform 900ms cubic-bezier(.2,.65,.3,1),opacity 900ms ease}
.capability-frames{height:calc(100svh - 370px)}
@media(max-width:720px){.selected .proof-heading h2 em,.capability-heading em{font-size:1.25em}.capability-frames{height:calc(100svh - 300px)}}
@media(prefers-reduced-motion:reduce){.company-stats>div{transition:none}}
.motion-paused .company-stats>div{transition:none}
/* Tighter project index and refined heading rhythm. */
.home-project .project-title,.home-project .project-client{font-weight:400}
.selected .proof-grid{gap:0}
.selected .proof-heading h2{line-height:.82}
.selected .proof-heading h2 em{font-size:1.6em;line-height:.88}
.capability-heading{line-height:.8;margin-bottom:40px}
.capability-heading em{line-height:.88}
.capability-stage{padding-top:90px}
.capability-frames{height:calc(100svh - 385px)}
.company-stats>div{transition:transform 350ms cubic-bezier(.2,.65,.3,1),opacity 350ms ease}
.stats-explore{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:24px;padding:30px 0 0;border-top:1px solid #07070735;margin-top:20px;color:#070707}
.stats-explore>span:nth-child(2){font-size:clamp(30px,4vw,62px);line-height:1.05;letter-spacing:-.04em}
.explore-spiral{width:56px;height:56px;flex-shrink:0;transition:transform .6s ease}
.stats-explore:hover .explore-spiral{transform:rotate(90deg)}
.stats-explore>span:last-child{font-size:28px}
.work-intro{display:flex;justify-content:space-between;align-items:flex-start;gap:28px;padding-top:180px;padding-bottom:70px}
.work-intro h1{font-size:clamp(70px,9vw,150px);line-height:.86;max-width:75%;margin:0;letter-spacing:-.065em}
.work-intro .work-filters{display:flex;justify-content:flex-end;align-items:center;gap:0;flex-wrap:nowrap;flex-shrink:0;margin:14px 0 0;padding:0;border:0}
.work-filters button{border:0;border-radius:0;background:none;color:var(--muted);font-size:11px;letter-spacing:.025em;text-transform:uppercase;min-height:44px;padding:0 12px;white-space:nowrap}
.work-filters button+button{border-left:1px solid var(--line)}
.work-filters button.active{background:none;color:var(--paper);border-color:var(--line);text-decoration:underline;text-underline-offset:6px}
.archive-index{padding:0 4px 4px}
.archive-index .work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}
.archive-index .work-card:nth-child(n){margin:0}
.archive-index .work-card:nth-child(n) .work-image{aspect-ratio:1.42!important;isolation:isolate;overflow:hidden;background:#070707}
.archive-project .work-image>img{display:block;width:100%;height:100%;object-fit:cover}
.archive-project .project-title{font-size:clamp(26px,3.5vw,64px);padding:clamp(20px,2.5vw,40px)}
.archive-project .project-client{font-size:clamp(13px,1.5vw,24px)}
@media(min-width:1700px){.selected .proof-grid{width:100vw}}
@media(max-width:1100px){.work-intro{flex-direction:column}.work-intro h1{max-width:100%;font-size:clamp(70px,11vw,130px)}.work-intro .work-filters{align-self:flex-end;margin-top:12px}}
@media(max-width:720px){.selected .proof-grid{gap:0}.selected .proof-heading h2 em{font-size:1.42em}.capability-stage{padding-top:100px}.capability-heading{margin-bottom:34px}.capability-frames{height:calc(100svh - 310px)}.stats-explore{gap:15px;justify-content:flex-start}.explore-spiral{width:42px;height:42px}.stats-explore>span:nth-child(2){font-size:30px}.work-intro{padding-top:150px;padding-bottom:40px;gap:24px}.work-intro h1{font-size:clamp(58px,13.5vw,90px);line-height:.88}.work-intro .work-filters{margin:0}.work-filters button{font-size:10px;padding:0 9px}.archive-index .work-grid{gap:3px}.archive-index{padding:0 3px 3px}.archive-project .project-title{font-size:clamp(19px,4.5vw,32px);padding:12px;gap:5px;line-height:.97}.archive-project .project-client{font-size:10px;line-height:1.1}.archive-index .work-card:nth-child(n) .work-image{aspect-ratio:.85!important}}
@media(prefers-reduced-motion:reduce){.company-stats>div,.explore-spiral{transition:none}}
@media(min-width:1700px){.selected .proof-grid{width:auto}}
@media(min-width:1700px){.selected .origins-banner{width:calc(100% + 2 * max(6vw,calc((100vw - 1500px)/2)))}}
.home-project .project-title{font-weight:800}
.home-project .project-client{font-weight:400}
.work-intro{align-items:flex-end;padding-bottom:36px}
.work-intro .work-filters{margin:0 0 5px}
.work-filters button{font-size:10px;padding:0 9px;letter-spacing:.015em}
.work-intro h1 .serif{color:color-mix(in srgb,var(--acid) var(--work-lime,0%),var(--paper))}
@media(max-width:1100px) and (min-width:721px){.work-intro{flex-direction:row;align-items:flex-end;gap:20px}.work-intro h1{font-size:8vw}.work-filters button{font-size:9px;padding:0 7px}}
@media(max-width:720px){.work-intro{padding-bottom:22px;gap:12px;align-items:flex-start}.work-intro .work-filters{margin:0;align-self:flex-end}.work-filters button{font-size:9px;padding:0 8px}}
