/* Service navigation, editorial chapters and project features have separate scales. */
.service-catalog,.service-story,.project-feature{width:min(1360px,90%);margin:100px auto}.catalog-heading,.service-introduction{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start;margin-bottom:72px}.catalog-heading h2,.service-introduction h2,.project-feature h2{font-size:clamp(36px,4.6vw,72px);font-weight:500;letter-spacing:-.045em;line-height:1.07;margin:0;text-wrap:balance}.catalog-heading p{max-width:430px;font-size:18px;line-height:1.7;color:var(--muted)}.service-introduction .source-content{font-size:20px;line-height:1.7}.service-index{display:grid;gap:0}.service-entry{position:relative;display:grid;grid-template-columns:60px minmax(0,1fr) minmax(0,1.1fr);gap:5%;align-items:center;text-decoration:none;border-top:1px solid color-mix(in srgb,var(--ink) 23%,transparent);padding:48px 0}.service-number{font:14px monospace;color:var(--accent);align-self:start}.service-entry-image{overflow:hidden;aspect-ratio:4/3}.service-entry-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.service-entry h3{font-size:clamp(27px,3vw,46px);font-weight:500;line-height:1.1;letter-spacing:-.035em;margin:0 0 22px}.service-entry p{line-height:1.7;color:var(--muted);font-size:16px;margin:0 0 26px}.service-open{display:inline-flex;gap:35px;align-items:center;font:13px monospace;padding:12px 0;border-bottom:1px solid var(--accent)}.service-open i{font-size:25px;font-style:normal;transition:transform .3s}.service-entry:hover .service-open i{transform:rotate(90deg)}.service-entry:hover img{transform:scale(1.05)}.service-entry:active img{transform:scale(1.01)}
.service-hero-link{display:inline-flex;gap:45px;align-items:center;text-decoration:none;border-bottom:1px solid currentColor;padding:15px 0;font:14px monospace;margin-bottom:30px}.service-hero-link span{font-size:26px;transition:transform .3s}.service-hero-link:hover span{transform:rotate(90deg)}.service-explorer{display:grid;grid-template-columns:minmax(180px,.65fr) minmax(0,2fr);gap:8%;align-items:start}.chapter-navigation{position:sticky;top:115px;display:grid;max-height:calc(100svh - 140px);overflow:auto;border-top:1px solid var(--accent);padding-top:20px}.chapter-navigation>span{font:12px monospace;margin-bottom:18px;color:var(--muted)}.chapter-navigation a{display:flex;gap:16px;padding:13px 0;text-decoration:none;font-size:14px;line-height:1.45;border-bottom:1px solid color-mix(in srgb,var(--ink) 12%,transparent);transition:color .2s,padding .2s}.chapter-navigation small{color:var(--accent);font:11px monospace;padding-top:3px}.chapter-navigation a:hover,.chapter-navigation a[aria-current]{color:var(--accent);padding-left:6px}.service-chapter{padding:52px 0 65px;scroll-margin-top:110px;border-top:1px solid color-mix(in srgb,var(--ink) 25%,transparent)}.chapter-title{display:flex;gap:24px;align-items:start;margin-bottom:32px}.chapter-title>span{font:14px monospace;color:var(--accent);padding-top:8px}.chapter-title h2{font-size:clamp(27px,3vw,46px);font-weight:500;letter-spacing:-.035em;line-height:1.12;margin:0}.service-chapter .source-content{font-size:18px;line-height:1.8;max-width:740px}.service-chapter .source-content h3{font-size:22px;margin-top:28px}.service-chapter figure{margin:38px 0 0;overflow:hidden}.service-chapter figure img{display:block;width:100%;max-height:540px;object-fit:cover}.service-questions{margin-top:110px}.service-experience .inner-outro{margin-top:0}.project-feature{border-top:1px solid color-mix(in srgb,var(--ink) 20%,transparent);padding:85px 0 40px}.project-feature-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:55px}.project-feature-heading>div{max-width:780px}.project-feature-heading p{font:12px monospace;color:var(--muted);margin:0 0 20px}.project-all{flex-shrink:0;text-decoration:none;font-size:14px;border-bottom:1px solid var(--accent);padding:15px 0;display:flex;gap:28px;align-items:center}.project-all span{font-size:24px}.project-feature-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px 30px}.project-frame{text-decoration:none;min-width:0}.project-frame-lead{grid-column:1/-1}.project-frame-image{aspect-ratio:16/9;position:relative;overflow:hidden;background:var(--ink)}.project-frame-lead .project-frame-image{aspect-ratio:2.15}.project-frame-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s,filter .6s}.project-view{position:absolute;right:20px;bottom:20px;background:#f9f8f1;color:#161a17;display:flex;gap:28px;align-items:center;padding:14px 20px;font:12px monospace}.project-view b{font-size:23px;font-weight:400;transition:transform .3s}.project-frame:hover img{transform:scale(1.035)}.project-frame:hover .project-view b{transform:rotate(90deg)}.project-caption{display:flex;gap:24px;margin-top:22px;max-width:900px}.project-caption>span{font:12px monospace;color:var(--muted);padding-top:7px}.project-caption h3{font-size:clamp(22px,2.8vw,40px);font-weight:500;line-height:1.15;letter-spacing:-.035em;margin:0}.project-frame:not(.project-frame-lead) h3{font-size:clamp(20px,2vw,28px)}
/* VFX: cinema slates, widescreen imagery and a red scanning line. */
.brand-vfx .service-entry{grid-template-columns:70px 1.1fr 1fr;border-color:#ec30444d}.brand-vfx .service-entry-image{aspect-ratio:2.1;clip-path:polygon(20px 0,100% 0,100% calc(100% - 20px),calc(100% - 20px) 100%,0 100%,0 20px)}.brand-vfx .service-number{font-size:32px}.brand-vfx .service-entry-copy{position:relative}.brand-vfx .service-entry:hover h3{text-shadow:2px 0 #ec3044,-2px 0 #ffffff55}.brand-vfx .service-chapter{position:relative;border-color:#ec30444d}.brand-vfx .service-chapter:before{content:'';position:absolute;top:0;left:0;width:35%;height:2px;background:var(--accent);transform:scaleX(.1);transform-origin:left;transition:transform .8s}.brand-vfx .service-chapter.entered:before{transform:scaleX(1)}.brand-vfx .chapter-title>span{font-size:40px;line-height:1;padding:0;opacity:.7}.brand-vfx .project-view{background:var(--accent);color:white;clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}.brand-vfx .project-frame-lead .project-caption h3{max-width:850px;font-size:clamp(28px,3.8vw,56px)}
/* Mobility: a route through the capabilities, with alternating landscape windows. */
.brand-mobility .service-index{border-left:1px solid var(--accent);margin-left:20px;padding-left:45px}.brand-mobility .service-entry{grid-template-columns:1fr 1fr;border-top:0;padding:20px 0 80px}.brand-mobility .service-number{position:absolute;left:-67px;top:24px;border:1px solid var(--accent);border-radius:50%;width:42px;height:42px;display:grid;place-items:center;background:var(--paper)}.brand-mobility .service-entry-image{border-radius:160px 12px 12px 12px;aspect-ratio:1.4}.brand-mobility .service-entry:nth-child(even) .service-entry-image{order:2;border-radius:12px 12px 160px 12px}.brand-mobility .service-open{border:1px solid var(--accent);border-radius:60px;padding:12px 20px}.brand-mobility .service-explorer{grid-template-columns:.6fr 1.5fr}.brand-mobility .service-chapter{border-left:2px solid var(--accent);border-top:0;padding:25px 0 60px 40px;position:relative}.brand-mobility .service-chapter:before{content:'';width:12px;height:12px;border:2px solid var(--accent);border-radius:50%;background:var(--paper);position:absolute;left:-7px;top:29px}.brand-mobility .project-frame-image{border-radius:12px 100px 12px 12px}.brand-mobility .project-view{border-radius:50px}
/* Music: a liner-note index and oversized film frames. */
.brand-music-videos .catalog-heading h2,.brand-music-videos .service-entry h3,.brand-music-videos .service-introduction h2,.brand-music-videos .chapter-title h2,.brand-music-videos .project-feature h2{font-family:Impact,'Arial Narrow',sans-serif;text-transform:uppercase;letter-spacing:-.015em}.brand-music-videos .service-index{grid-template-columns:1fr 1fr;gap:65px}.brand-music-videos .service-entry{display:flex;flex-direction:column;align-items:stretch;border:0;padding:0;gap:25px}.brand-music-videos .service-entry:nth-child(even){padding-top:90px}.brand-music-videos .service-entry-image{aspect-ratio:1.2;border:8px solid var(--ink);transform:rotate(-2deg)}.brand-music-videos .service-entry:nth-child(even) .service-entry-image{transform:rotate(2deg)}.brand-music-videos .service-number{font:44px Impact,sans-serif}.brand-music-videos .service-explorer{display:block}.brand-music-videos .chapter-navigation{position:static;display:flex;flex-wrap:wrap;gap:10px;max-height:none;border:0;margin-bottom:55px}.brand-music-videos .chapter-navigation>span{width:100%}.brand-music-videos .chapter-navigation a{border:1px solid var(--ink);padding:10px 14px;font:12px monospace;max-width:360px}.brand-music-videos .service-chapter{display:grid;grid-template-columns:1fr 1fr;gap:7%;border-top:3px solid var(--ink);padding:55px 0}.brand-music-videos .chapter-title>span{font:48px Impact,sans-serif}.brand-music-videos .service-chapter:nth-child(even) .chapter-title{order:2}.brand-music-videos .service-chapter figure{grid-column:1/-1;order:3}.brand-music-videos .project-frame-image{border:8px solid var(--ink)}.brand-music-videos .project-caption{font-family:monospace}.brand-music-videos .project-frame:nth-child(3){transform:rotate(2deg)}.brand-music-videos .project-view{background:var(--accent);color:#fff}
/* Education: an open workbook with numbered learning chapters. */
.brand-education .service-index{grid-template-columns:1fr 1fr;gap:40px}.brand-education .service-entry{display:flex;flex-direction:column;align-items:stretch;border:0;background:#e8dfee;padding:35px;gap:24px;border-radius:12px 80px 12px 12px}.brand-education .service-entry:nth-child(even){background:#e5e8db;border-radius:80px 12px 12px 12px}.brand-education .service-entry-image{border-radius:120px 120px 5px 5px;aspect-ratio:1.5}.brand-education .service-entry h3,.brand-education .service-introduction h2,.brand-education .catalog-heading h2,.brand-education .project-feature h2{font-family:Georgia,serif;font-style:italic}.brand-education .service-open{background:var(--paper);padding:10px 20px;border:0;border-radius:5px}.brand-education .service-explorer{gap:6%}.brand-education .service-chapters{background:#fffdf7;border-left:1px solid #a94f6555;box-shadow:12px 12px 0 #e8dfee;padding:0 40px}.brand-education .chapter-title h2{font-family:Georgia,serif;font-style:italic}.brand-education .service-chapter{border-top:1px dashed #a94f6555}.brand-education .project-frame-lead .project-frame-image{border-radius:150px 12px 12px 12px}.brand-education .project-frame:not(.project-frame-lead) .project-frame-image{border-radius:12px}.brand-education .project-view{background:#e8dfee;color:var(--ink);border-radius:8px}
/* Retail: an editorial lookbook, with a product-selector service index. */
.brand-retail .service-entry{grid-template-columns:55px 1.2fr 1fr;padding:55px 0}.brand-retail .service-entry-image{aspect-ratio:1.6}.brand-retail .service-entry:nth-child(even){grid-template-columns:55px 1fr 1.2fr}.brand-retail .service-entry:nth-child(even) .service-entry-image{order:3}.brand-retail .service-entry h3{font-family:Georgia,serif;font-style:italic}.brand-retail .service-number{background:#d9ff8b;padding:10px;color:var(--ink)}.brand-retail .service-open{background:var(--accent);color:#fff;padding:10px 20px}.brand-retail .service-entry:hover .service-open{background:#d9ff8b;color:var(--ink)}.brand-retail .service-explorer{grid-template-columns:.6fr 1.6fr}.brand-retail .service-chapter{padding:50px 0 70px}.brand-retail .chapter-title h2{font-family:Georgia,serif;font-style:italic;color:var(--accent)}.brand-retail .chapter-title>span{background:#d9ff8b;color:var(--ink);padding:10px}.brand-retail .project-feature-grid{grid-template-columns:1.5fr 1fr;align-items:start;gap:60px}.brand-retail .project-frame-lead{grid-column:auto;grid-row:span 2}.brand-retail .project-frame-lead .project-frame-image{aspect-ratio:3/4}.brand-retail .project-frame-lead .project-caption h3{font-family:Georgia,serif;font-style:italic}.brand-retail .project-frame:not(.project-frame-lead) .project-frame-image{aspect-ratio:1.8}.brand-retail .project-view{background:#d9ff8b}
/* Software: an engineering index and an explorable specification. */
.brand-software .service-entry{grid-template-columns:65px 1.4fr .7fr;border:1px solid #becbbf;padding:35px;margin-top:-1px;gap:35px;transition:background .25s}.brand-software .service-entry-image{order:3;aspect-ratio:1.5;border:1px solid #becbbf;padding:6px}.brand-software .service-entry:hover{background:#e2ebdc}.brand-software .service-number{font-size:22px}.brand-software .service-open{border:0;background:var(--ink);color:#fff;padding:12px 20px}.brand-software .service-entry h3{font-size:clamp(28px,3vw,42px)}.brand-software .service-explorer{gap:45px}.brand-software .chapter-navigation{background:#e2ebdc;padding:24px;border:1px solid #becbbf}.brand-software .service-chapter{border:1px solid #becbbf;padding:35px;margin-bottom:20px}.brand-software .chapter-title{padding-bottom:25px;border-bottom:1px solid #becbbf}.brand-software .chapter-title>span{font-size:18px}.brand-software .service-chapter .source-content h3{font-family:monospace;font-size:18px;padding-top:15px}.brand-software .project-frame-image{padding:12px 12px 0;border:1px solid #becbbf;background:#d4dfd1}.brand-software .project-view{background:var(--ink);color:white}.brand-software .project-caption{border-bottom:1px solid #becbbf;padding-bottom:20px}
@media(max-width:1000px){.service-explorer,.brand-mobility .service-explorer,.brand-retail .service-explorer{grid-template-columns:180px minmax(0,1fr);gap:30px}.service-entry,.brand-vfx .service-entry,.brand-retail .service-entry,.brand-retail .service-entry:nth-child(even){grid-template-columns:35px 1fr 1fr;gap:25px}.brand-software .service-entry{grid-template-columns:40px 1fr;gap:20px}.brand-software .service-entry-image{display:none}.brand-education .service-chapters{padding:0 25px}.project-feature-heading{align-items:start}}
@media(max-width:700px){.service-catalog,.service-story,.project-feature{margin:60px auto}.catalog-heading,.service-introduction{grid-template-columns:1fr;gap:24px;margin-bottom:40px}.catalog-heading h2,.service-introduction h2,.project-feature h2{font-size:37px}.service-introduction .source-content{font-size:17px}.service-explorer,.brand-mobility .service-explorer,.brand-retail .service-explorer{display:block}.chapter-navigation{position:static;max-height:none;margin-bottom:35px;display:flex;flex-wrap:wrap;gap:6px 15px}.chapter-navigation>span{width:100%}.chapter-navigation a{padding:9px 0;font-size:12px}.service-entry,.brand-vfx .service-entry,.brand-retail .service-entry,.brand-retail .service-entry:nth-child(even),.brand-mobility .service-entry,.brand-software .service-entry{display:grid;grid-template-columns:30px minmax(0,1fr);gap:20px;padding:28px 0}.service-entry-image,.brand-retail .service-entry:nth-child(even) .service-entry-image,.brand-mobility .service-entry:nth-child(even) .service-entry-image{grid-column:2;order:0;aspect-ratio:1.6;border-radius:0}.service-entry-copy{grid-column:2}.service-entry h3{font-size:29px}.service-entry p{font-size:15px}.brand-mobility .service-index{padding-left:18px;margin-left:12px}.brand-mobility .service-entry{grid-template-columns:1fr;padding-left:12px}.brand-mobility .service-entry-image,.brand-mobility .service-entry-copy{grid-column:1}.brand-mobility .service-number{left:-38px;width:36px;height:36px;top:20px}.brand-music-videos .service-index,.brand-education .service-index{grid-template-columns:1fr;gap:30px}.brand-music-videos .service-entry:nth-child(even){padding-top:0}.brand-education .service-entry{padding:25px}.brand-music-videos .service-chapter{display:block;padding:35px 0}.brand-music-videos .chapter-title>span{font-size:32px}.service-chapter .source-content{font-size:16px}.chapter-title h2{font-size:29px}.brand-software .service-chapter{padding:25px}.brand-mobility .service-chapter{padding-left:24px}.brand-education .service-chapters{padding:0 20px;box-shadow:6px 6px 0 #e8dfee}.project-feature{padding-top:50px}.project-feature-heading{display:block;margin-bottom:30px}.project-all{display:inline-flex;margin-top:25px}.project-feature-grid,.brand-retail .project-feature-grid{grid-template-columns:1fr;gap:35px}.project-frame-lead,.brand-retail .project-frame-lead{grid-column:1;grid-row:auto}.project-frame-lead .project-frame-image,.brand-retail .project-frame-lead .project-frame-image{aspect-ratio:1.5}.project-frame-image,.brand-retail .project-frame:not(.project-frame-lead) .project-frame-image{aspect-ratio:16/9}.project-view{right:12px;bottom:12px;padding:9px 14px;font-size:11px;gap:18px}.project-caption{gap:14px}.project-caption h3,.project-frame:not(.project-frame-lead) h3{font-size:24px}.brand-education .project-frame-lead .project-frame-image{border-radius:70px 8px 8px 8px}.brand-software .service-entry{padding:25px 20px}.brand-vfx .service-number{font-size:23px}.service-hero-link{font-size:12px;gap:24px}}
@media(prefers-reduced-motion:reduce){.service-experience *,.project-feature *{transition:none!important;animation:none!important}.service-experience .will-enter,.project-feature .will-enter{opacity:1;transform:none;filter:none;clip-path:none}}
.service-visual-study{display:grid;grid-template-columns:1.5fr 1fr;gap:40px;align-items:end;margin:0 0 95px}.service-visual-study figure{margin:0;min-width:0;overflow:hidden}.service-visual-study img{display:block;width:100%;height:440px;object-fit:cover;transition:transform .8s}.service-visual-study figure:nth-child(2) img{height:300px}.service-visual-study figcaption{font:12px monospace;line-height:1.5;margin-top:15px}.service-visual-study>p{grid-column:1/-1;font-size:12px;color:var(--muted);margin:0}.brand-mobility .service-visual-study figure:first-child img{border-radius:180px 12px 12px 12px}.brand-mobility .service-visual-study figure:nth-child(2) img{border-radius:50% 50% 12px 12px}.brand-music-videos .service-visual-study{grid-template-columns:1.6fr 1fr;align-items:center;background:var(--ink);padding:35px;color:var(--paper)}.brand-music-videos .service-visual-study figure:nth-child(2){transform:rotate(4deg)}.brand-music-videos .service-visual-study>p{color:#c6b9a8}.brand-education .service-visual-study{background:#e8dfee;padding:35px;border-radius:12px 80px 12px 12px;gap:30px}.brand-education .service-visual-study img{height:380px;border-radius:100px 100px 8px 8px}.brand-retail .service-visual-study{grid-template-columns:1fr .7fr;align-items:center;gap:9%}.brand-retail .service-visual-study figure:first-child img{height:510px}.brand-retail .service-visual-study figure:nth-child(2) img{height:390px}.brand-retail .service-visual-study figcaption{border-top:2px solid var(--accent);padding-top:16px}.brand-software .service-visual-study{gap:20px;border:1px solid #becbbf;padding:20px;background:#e2ebdc;align-items:start}.brand-software .service-visual-study img,.brand-software .service-visual-study figure:nth-child(2) img{height:350px}.brand-software .service-visual-study figcaption:before{content:'[ ';color:var(--accent)}.brand-software .service-visual-study figcaption:after{content:' ]';color:var(--accent)}
@media(max-width:700px){.service-visual-study,.brand-retail .service-visual-study,.brand-music-videos .service-visual-study{grid-template-columns:1fr 1fr;gap:15px;margin-bottom:55px}.service-visual-study img,.brand-retail .service-visual-study figure:first-child img,.brand-software .service-visual-study img,.brand-education .service-visual-study img{height:240px}.service-visual-study figure:nth-child(2) img,.brand-retail .service-visual-study figure:nth-child(2) img,.brand-software .service-visual-study figure:nth-child(2) img{height:180px}.brand-mobility .service-visual-study figure:first-child img{border-radius:65px 8px 8px 8px}.brand-education .service-visual-study,.brand-music-videos .service-visual-study{padding:20px}.brand-software .service-visual-study{padding:12px}.service-visual-study figcaption{font-size:11px}.brand-education .service-visual-study img{border-radius:50px 50px 8px 8px}}
