
:root{--red:#e74023;--red-dark:#ba2b16;--ink:#151515;--paper:#fff;--soft:#f4f4f1;--line:#dcdcd7;--muted:#62625e;--serif:'freight-big-pro',Georgia,serif;--sans:'freight-sans-pro',Arial,sans-serif;--gutter:clamp(22px,4.4vw,84px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:18px;line-height:1.5;-webkit-font-smoothing:antialiased}body.locked{overflow:hidden}::selection{background:var(--red);color:#fff}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:6px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,.display{font-family:var(--serif);font-weight:600;line-height:.98;letter-spacing:-.025em}h1{font-size:clamp(64px,7.8vw,144px)}h2{font-size:clamp(44px,5.2vw,92px)}h3{font-size:clamp(24px,2.1vw,36px);line-height:1.15;font-weight:400}.eyebrow{font-size:14px;letter-spacing:.12em;text-transform:uppercase;line-height:1.5}.small{font-size:16px}.muted{color:var(--muted)}.wrap{padding-inline:var(--gutter)}.section{padding-block:clamp(64px,8vw,144px)}.skip{position:fixed;top:-60px;left:24px;z-index:1000;padding:12px 24px;background:white;color:black}.skip:focus{top:12px}.header{height:96px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding-inline:var(--gutter);background:#fff;position:sticky;top:0;z-index:50;border-bottom:1px solid rgba(0,0,0,.08);transition:height .3s,box-shadow .3s}.header.scrolled{height:80px;box-shadow:0 5px 25px #00000007}.brand{width:202px;flex-shrink:0}.brand img{width:100%}.desktop-nav{display:flex;gap:30px;align-items:center;font-size:17px}.desktop-nav a:not(.pill){position:relative;padding-block:16px}.desktop-nav a:not(.pill):after{content:'';position:absolute;left:0;bottom:8px;width:100%;height:2px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .3s}.desktop-nav a:hover:after,.desktop-nav a[aria-current=page]:after{transform:scaleX(1)}.pill{display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:100px;padding:13px 26px;background:var(--red);color:white;border:1px solid var(--red);font-size:17px;line-height:1.2;min-height:49px;transition:background .25s,transform .25s}.pill:hover{background:var(--red-dark);border-color:var(--red-dark);transform:translateY(-2px)}.pill.light{background:#fff;color:var(--ink);border-color:#fff}.pill.light:hover{background:var(--soft)}.pill.outline{background:transparent;color:inherit;border-color:currentColor}.pill.outline:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.text-link{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:3px;transition:color .2s}.text-link:hover{color:var(--red)}.menu-button{display:none;border:0;background:var(--red);color:#fff;border-radius:100px;padding:12px 18px;min-height:46px}.mobile-nav{background:var(--paper);position:fixed;inset:80px 0 0;z-index:49;padding:35px var(--gutter);overflow:auto}.mobile-nav[hidden]{display:none}.mobile-nav a{display:block;font-family:var(--serif);font-size:44px;line-height:1.4;border-bottom:1px solid var(--line);padding:8px 0}.mobile-nav p{margin-top:32px;font-size:18px}.hero{position:relative;min-height:660px;height:calc(100svh - 96px);max-height:1100px;display:flex;flex-direction:column;justify-content:space-between;padding:54px var(--gutter) 36px;color:#fff;overflow:hidden;background:#202723}.hero-bg,.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-bg{object-position:50% 48%}.hero-video{opacity:0;transition:opacity 1s}.hero-video.ready{opacity:1}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.63),rgba(0,0,0,.06)),linear-gradient(0deg,rgba(0,0,0,.35),transparent 65%);pointer-events:none}.hero-top,.hero-content,.hero-bottom{position:relative;z-index:2}.hero-top{display:flex;justify-content:space-between;gap:20px}.hero-top .eyebrow{font-size:13px}.hero-content{padding-block:70px 60px;max-width:1100px}.hero h1{font-size:clamp(76px,9.2vw,166px);line-height:.91;max-width:1000px;text-wrap:balance}.hero h1 em{font-style:italic;color:#fff}.hero-actions{display:flex;gap:24px;align-items:center;margin-top:36px}.watch-button{display:inline-flex;gap:14px;align-items:center;min-height:55px;padding:0;background:none;border:0;color:inherit}.play-symbol{width:48px;height:48px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;transition:background .2s}.play-symbol:before{content:'';width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:9px solid currentColor;transform:translateX(2px)}.watch-button:hover .play-symbol{background:var(--red);border-color:var(--red)}.hero-bottom{display:flex;justify-content:space-between;gap:28px;align-items:end}.hero-description{max-width:405px;font-size:20px;line-height:1.35}.motion-button{color:white;border:1px solid #ffffff70;border-radius:50%;background:#00000020;width:44px;height:44px;font-size:16px}.hero-bottom-right{display:flex;gap:20px;align-items:center;font-size:14px}.red-strip{background:var(--red);color:#fff;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px var(--gutter);font-size:16px}.red-strip span:nth-child(2){display:flex;gap:22px;align-items:center}.red-strip b{font-weight:400}.intro{display:grid;grid-template-columns:1fr 2.2fr;gap:60px}.intro h2{max-width:1100px}.intro .intro-body{display:grid;grid-template-columns:1.45fr 1fr;gap:50px;align-items:end;margin-top:40px}.intro p{font-size:24px;max-width:680px;line-height:1.4}.intro .text-link{justify-self:end;font-size:18px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:46px}.section-heading .eyebrow{margin-bottom:16px}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px 28px}.project-card{display:block;min-width:0}.card-media{position:relative;overflow:hidden;background:#eee;aspect-ratio:16/10}.card-media img{height:100%;width:100%;object-fit:cover;transition:transform .7s cubic-bezier(.22,.61,.36,1),filter .7s}.project-card:hover img{transform:scale(1.045)}.card-play{position:absolute;bottom:20px;right:20px;width:48px;height:48px;background:#ffffffef;border-radius:50%;display:grid;place-items:center;transform:translateY(7px);opacity:0;transition:transform .3s,opacity .3s;color:var(--ink)}.card-play:before{content:'';border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:9px solid currentColor;transform:translateX(2px)}.project-card:hover .card-play,.project-card:focus-visible .card-play{opacity:1;transform:translateY(0)}.card-info{display:flex;justify-content:space-between;gap:20px;margin-top:19px;align-items:baseline}.card-info h3{font-family:var(--serif);font-size:34px;font-weight:600}.card-info .eyebrow{font-size:12px;text-align:right;max-width:150px;color:var(--muted)}.card-deck{font-size:18px;line-height:1.35;color:var(--muted);margin-top:6px;max-width:85%}.home-work{padding-top:28px}.home-work .project-card:nth-child(4n+2){padding-top:65px}.home-work .project-card:nth-child(4n+3) .card-media{aspect-ratio:16/11}.home-work .project-card:nth-child(4n) .card-media{aspect-ratio:16/11}.all-work{display:flex;justify-content:center;margin-top:55px}.expertise{background:var(--soft);display:grid;grid-template-columns:1fr 1.2fr;gap:100px}.expertise .eyebrow{margin-bottom:22px}.expertise h2{max-width:580px}.expertise p{font-size:22px;max-width:540px;margin-top:25px}.expertise .pill{margin-top:30px}.service-row{display:grid;grid-template-columns:40px 1fr;gap:25px;padding:25px 0;border-top:1px solid var(--line)}.service-row:last-child{border-bottom:1px solid var(--line)}.service-row .num{font-size:14px;color:var(--red);padding-top:8px}.service-row h3{font-family:var(--serif);font-size:37px}.service-row p{font-size:19px;margin-top:10px;max-width:100%;color:var(--muted)}.clients{background:var(--ink);color:#fff}.clients .section-heading{margin-bottom:70px}.clients h2{max-width:750px}.client-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:45px 36px;align-items:center}.client-grid img{width:100%;height:60px;object-fit:contain;opacity:.83}.testimonials{display:grid;grid-template-columns:1fr 2fr;gap:60px}.testimonials h2{font-size:clamp(42px,4vw,70px)}.quote-panel{position:relative}.quote-panel blockquote{margin:0;font-family:var(--serif);font-size:clamp(32px,3.5vw,59px);line-height:1.13}.quote-panel cite{display:block;margin-top:30px;font-style:normal;font-size:17px}.quote-controls{display:flex;align-items:center;gap:12px;margin-top:32px}.quote-controls button{width:44px;height:44px;border:1px solid var(--line);background:none;border-radius:50%}.quote-controls button[aria-pressed=true]{background:var(--red);color:#fff;border-color:var(--red)}.cta{background:var(--red);color:#fff;display:flex;justify-content:space-between;align-items:end;gap:50px}.cta .eyebrow{margin-bottom:20px}.cta h2{font-size:clamp(56px,7vw,126px);max-width:1000px}.cta .pill{flex-shrink:0;margin-bottom:8px}.footer{background:var(--ink);color:#fff;padding-top:66px;padding-bottom:24px}.footer-top{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:55px;padding-bottom:55px}.footer-logo{filter:grayscale(1) brightness(0) invert(1);max-width:230px}.footer .eyebrow{color:#b8b8b2;margin-bottom:20px}.footer a:not(.brand){display:block;width:fit-content}.footer a:hover{color:#ff8d79}.footer p,.footer a{font-size:17px}.footer-links{display:flex;flex-direction:column;gap:7px}.footer-bottom{border-top:1px solid #ffffff26;padding-top:24px;display:flex;justify-content:space-between;gap:30px;font-size:14px;color:#b8b8b2}.footer-bottom>div{display:flex;gap:24px;flex-wrap:wrap}.footer-bottom a,.footer-bottom button{font-size:14px}.link-button{padding:0;background:none;color:inherit;border:0;text-decoration:underline;text-underline-offset:5px}.page-intro{padding-top:65px;padding-bottom:65px}.page-intro .eyebrow{margin-bottom:25px;color:var(--red)}.page-intro h1{max-width:1200px}.page-intro .lead{font-size:26px;max-width:720px;margin-top:30px;line-height:1.38}.page-intro.split{display:grid;grid-template-columns:1.35fr 1fr;gap:70px;align-items:end}.page-intro.split .lead{margin:0}.archive-tools{padding-bottom:42px}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-block:0 27px}.filter{border:1px solid var(--line);background:#fff;border-radius:40px;padding:10px 17px;font-size:16px;transition:background .2s,color .2s;min-height:46px}.filter:hover{border-color:var(--ink)}.filter[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.search-row{display:flex;justify-content:space-between;align-items:center;gap:22px}.searchbox{position:relative;max-width:430px;width:100%}.searchbox input{padding:13px 17px;background:var(--soft);border:1px solid var(--line);border-radius:0;width:100%;font-size:18px}.search-row output{font-size:16px;color:var(--muted)}.archive-grid{grid-template-columns:repeat(3,1fr);gap:42px 26px;padding-bottom:95px}.archive-grid .card-media{aspect-ratio:16/10}.archive-grid .card-info h3{font-size:29px}.archive-grid .card-info{display:block}.archive-grid .card-info .eyebrow{text-align:left;max-width:none;margin-top:8px}.archive-grid .card-deck{font-size:17px}.project-card[hidden]{display:none}.empty{padding:50px 0;font-size:22px}.project-intro{padding-top:50px;padding-bottom:43px}.breadcrumbs{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:14px;color:var(--muted);margin-bottom:32px}.breadcrumbs a{border-bottom:1px solid transparent}.breadcrumbs a:hover{border-color:currentColor}.project-intro h1{font-size:clamp(60px,7.3vw,126px);max-width:1300px}.project-title-bottom{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-top:25px}.project-title-bottom p{font-size:24px;max-width:800px}.film-frame{position:relative;background:#161616;aspect-ratio:16/9;overflow:hidden;max-height:860px}.film-frame img{width:100%;height:100%;object-fit:cover}.film-frame:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#00000060,transparent 70%);pointer-events:none}.film-frame .watch-button{position:absolute;bottom:40px;left:var(--gutter);z-index:2;color:#fff;background:#00000050;border-radius:50px;padding:8px 23px 8px 8px}.film-frame .play-symbol{width:58px;height:58px}.story-layout{display:grid;grid-template-columns:1fr 2.2fr;gap:65px}.story-meta{font-size:18px;position:sticky;top:120px;align-self:start}.story-meta dl{margin:20px 0}.story-meta dt{font-size:13px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-top:25px}.story-meta dd{margin:5px 0}.prose{max-width:850px;font-size:21px;line-height:1.65}.prose>h2:first-child{font-size:clamp(40px,4vw,64px)}.prose h2,.prose h3{font-family:var(--serif);font-weight:600;margin:50px 0 24px;line-height:1.1}.prose h2{font-size:46px}.prose h3{font-size:33px}.prose>h2:first-child,.prose>h3:first-child{margin-top:0}.prose p{margin-bottom:24px}.prose ul,.prose ol{padding-left:23px;margin-block:20px}.prose li{margin-bottom:10px}.prose a{border-bottom:1px solid currentColor}.prose figure{margin:30px 0}.prose img{width:100%;height:auto}.prose iframe{display:none}.prose table{width:100%;border-collapse:collapse;font-size:16px}.prose td,.prose th{padding:10px;border:1px solid var(--line);text-align:left}.related{background:var(--soft)}.related .work-grid{grid-template-columns:repeat(3,1fr)}.related .card-info{display:block}.related .card-info .eyebrow{text-align:left;max-width:none;margin-top:7px}.approach-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.approach-grid>div{border-top:1px solid var(--line);padding-top:25px}.approach-grid .eyebrow{color:var(--red);margin-bottom:25px}.approach-grid h3{font-family:var(--serif);font-size:42px;margin-bottom:20px}.approach-grid p{font-size:21px;max-width:450px}.capabilities{background:var(--ink);color:#fff}.capability-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:45px;margin-top:65px}.capability-grid h3{font-family:var(--serif);font-size:35px;border-top:1px solid #ffffff40;padding-top:24px;margin-bottom:22px}.capability-grid ul{list-style:none;padding:0;margin:0;font-size:19px;color:#c9c9c3}.capability-grid li{padding-bottom:8px}.service-list{display:grid;grid-template-columns:1fr 1fr;gap:0 60px;margin-top:55px}.service-list .service-row{padding-block:30px}.wide-image{height:clamp(340px,48vw,700px);width:100%;object-fit:cover}.about-intro{background:var(--soft)}.about-text{display:grid;grid-template-columns:1fr 1fr;gap:65px}.about-text p{font-size:24px;margin-bottom:25px;line-height:1.45}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.team-grid img{width:100%;aspect-ratio:4/5;object-fit:cover;filter:grayscale(1);transition:filter .5s}.team-grid>article:hover img{filter:none}.team-grid h3{font-family:var(--serif);font-size:32px;margin-top:22px}.team-grid p{font-size:18px;color:var(--muted);margin-top:6px}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:55px 28px;padding-bottom:100px}.news-card .card-media{aspect-ratio:4/3}.news-card .eyebrow{color:var(--red);margin:20px 0 10px}.news-card h2{font-size:36px;line-height:1.08}.news-card time{display:block;color:var(--muted);font-size:16px;margin-top:16px}.article-intro h1{font-size:clamp(52px,6vw,105px)}.article-body{max-width:850px;margin-inline:auto}.article-hero{max-height:660px;object-fit:cover;width:100%}.article-meta{font-size:16px;color:var(--muted);margin-top:28px}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:100px;padding-bottom:100px}.contact-details a.big{font-family:var(--serif);font-size:clamp(27px,3vw,49px);display:block;margin-top:17px;line-height:1.1}.contact-details .address{font-size:22px;line-height:1.45;margin-top:40px}.contact-details .social-list{display:flex;gap:22px;margin-top:35px;flex-wrap:wrap}.brief-form{padding:40px;background:var(--soft)}.brief-form h2{font-size:46px;margin-bottom:20px}.brief-form>p{font-size:18px;color:var(--muted);margin-bottom:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.field{display:flex;flex-direction:column;gap:8px;min-width:0}.field.full{grid-column:1/-1}.field label{font-size:17px}.field input,.field textarea,.field select{width:100%;padding:12px 14px;border:1px solid #c8c8c1;background:#fff;font-size:18px;border-radius:0}.field textarea{resize:vertical;min-height:130px}.brief-form button{margin-top:25px}.company-details{border-top:1px solid var(--line);padding-top:35px;padding-bottom:55px;font-size:16px;display:grid;grid-template-columns:1fr 2fr;gap:40px}.company-details p{max-width:780px;color:var(--muted)}.policy{max-width:900px;margin-inline:auto}.policy h1{font-size:76px;margin-bottom:25px}.policy h2{font-size:38px}.policy p,.policy li{font-size:20px}.policy .updated{font-size:16px;color:var(--muted);margin-bottom:40px}.video-dialog{max-width:min(1200px,94vw);width:100%;padding:0;border:0;background:var(--ink);color:#fff;box-shadow:0 30px 90px #00000066}.video-dialog::backdrop{background:rgba(0,0,0,.84);backdrop-filter:blur(8px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;gap:30px}.dialog-top h2{font-family:var(--sans);font-size:22px;line-height:1.2;letter-spacing:0}.close-dialog{border:1px solid #ffffff60;color:#fff;background:none;border-radius:50%;width:44px;height:44px;font-size:25px;flex-shrink:0}.video-stage{aspect-ratio:16/9;position:relative;width:100%;background:#050505}.video-stage iframe,.video-stage video{height:100%;width:100%;border:0}.video-consent{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:22px;text-align:center;padding:30px}.video-consent p{font-size:19px;max-width:580px;color:#c9c9c3}.video-consent h3{font-family:var(--serif);font-size:42px}.video-consent a{font-size:16px;text-decoration:underline}.media-dialog{max-width:560px;border:0;padding:36px;box-shadow:0 30px 90px #00000044}.media-dialog::backdrop{background:#00000070}.media-dialog h2{font-size:40px;margin-bottom:20px}.media-dialog p{font-size:19px;margin-bottom:25px}.media-dialog .actions{display:flex;gap:12px;flex-wrap:wrap}.reveal{opacity:1;transform:none}.js-motion .reveal{opacity:0;transform:translateY(24px);transition:opacity .75s,transform .75s}.js-motion .reveal.visible{opacity:1;transform:none}.reading-progress{position:fixed;top:0;left:0;width:100%;height:3px;transform:scaleX(0);transform-origin:left;background:var(--red);z-index:80}.scroll-cue{border-bottom:1px solid #ffffff60;padding-bottom:3px}
@media(min-width:1600px){.hero-content{padding-block:100px}.hero-description{font-size:22px}.work-grid{gap:65px 38px}}
@media(max-width:1100px){.desktop-nav{gap:19px}.brand{width:180px}.desktop-nav .pill{padding-inline:20px}.intro{grid-template-columns:1fr 3fr;gap:30px}.intro .intro-body{grid-template-columns:1fr}.intro .text-link{justify-self:start}.expertise{gap:50px}.client-grid{grid-template-columns:repeat(4,1fr)}.footer-top{gap:35px;grid-template-columns:1.3fr 1fr 1fr}.footer-top>div:last-child{grid-column:2/4}.contact-grid{gap:50px}.archive-grid .card-info h3{font-size:26px}.capability-grid{gap:25px}.card-info{display:block}.card-info .eyebrow{max-width:none;text-align:left;margin-top:8px}}
@media(max-width:800px){.header,.header.scrolled{height:80px}.brand{width:173px}.desktop-nav{display:none}.menu-button{display:block}.hero{height:calc(90svh - 80px);min-height:640px;padding-top:30px;padding-bottom:28px}.hero h1{font-size:clamp(76px,12vw,106px)}.hero-content{padding-block:60px}.hero-top>.eyebrow:last-child{display:none}.hero-description{font-size:19px;max-width:320px}.hero-bottom-right .scroll-cue{display:none}.hero-actions{gap:20px;margin-top:32px}.hero-actions .pill{padding-inline:21px;font-size:16px}.watch-button{font-size:17px}.red-strip{font-size:14px;padding-block:18px}.red-strip span:nth-child(2){gap:15px}.red-strip b:last-child{display:none}.intro{grid-template-columns:1fr;gap:24px}.intro h2{font-size:clamp(42px,7.5vw,65px);line-height:1.02}.intro p{font-size:22px}.intro .intro-body{margin-top:27px;gap:27px}.section-heading{margin-bottom:32px}.section-heading h2{font-size:52px}.work-grid{gap:35px 20px}.home-work .project-card:nth-child(4n+2){padding-top:45px}.card-info h3{font-size:28px}.card-deck{font-size:17px;max-width:100%}.expertise{grid-template-columns:1fr;gap:50px}.expertise h2{max-width:650px}.service-row h3{font-size:34px}.clients .section-heading{margin-bottom:45px}.client-grid{gap:36px 25px}.client-grid img{height:49px}.testimonials{grid-template-columns:1fr;gap:40px}.testimonials h2{max-width:560px}.quote-panel blockquote{font-size:41px}.cta{display:block}.cta .pill{margin-top:35px}.footer-top{grid-template-columns:1fr 1fr;gap:40px}.footer-top>div:last-child{grid-column:auto}.footer-bottom{display:block}.footer-bottom>div{margin-top:20px;gap:20px}.page-intro.split{grid-template-columns:1fr;gap:30px}.page-intro h1{font-size:clamp(56px,9vw,90px)}.page-intro .lead{font-size:23px}.archive-grid{grid-template-columns:1fr 1fr}.archive-grid .card-info h3{font-size:27px}.project-intro h1{font-size:clamp(50px,8vw,82px)}.story-layout{grid-template-columns:1fr;gap:38px}.story-meta{position:static}.story-meta dl{display:grid;grid-template-columns:1fr 1fr;gap:5px 24px}.story-meta dt{margin-top:0}.story-meta dd{margin:0}.story-meta .text-link{margin-top:15px}.prose{font-size:20px}.related .work-grid{grid-template-columns:1fr 1fr}.related .project-card:last-child{display:none}.approach-grid{grid-template-columns:1fr;gap:40px}.approach-grid p{max-width:100%}.capability-grid{grid-template-columns:1fr 1fr;gap:40px}.service-list{gap:0 35px}.service-list .service-row{grid-template-columns:24px 1fr;gap:15px}.service-list .service-row h3{font-size:30px}.about-text{grid-template-columns:1fr;gap:0}.about-text p{font-size:22px}.team-grid{grid-template-columns:1fr 1fr;gap:40px 22px}.news-grid{grid-template-columns:1fr 1fr;gap:42px 24px}.news-card h2{font-size:31px}.contact-grid{grid-template-columns:1fr;gap:50px}.brief-form{padding:30px}.company-details{grid-template-columns:1fr;gap:20px}.project-title-bottom{display:block}.project-title-bottom .pill{margin-top:25px}.film-frame .watch-button{bottom:24px}.video-consent h3{font-size:32px}.video-consent p{font-size:17px}.video-stage:has(.video-consent){min-height:310px}}
@media(max-width:500px){body{font-size:18px}.hero{height:calc(92svh - 80px);min-height:610px}.hero h1{font-size:clamp(69px,15.5vw,79px);line-height:.96;letter-spacing:-.03em}.hero-content{padding-block:56px 46px}.hero-bg{object-position:60% center}.hero-description{font-size:18px;max-width:280px}.hero-actions{align-items:start;gap:18px;flex-direction:column}.hero-bottom-right{gap:0}.red-strip span:nth-child(2){display:none}.red-strip{justify-content:center}.section{padding-block:64px}.section-heading{display:block}.section-heading .text-link{margin-top:22px}.section-heading h2{font-size:48px}.work-grid,.archive-grid{grid-template-columns:1fr;gap:36px}.home-work{padding-top:0}.home-work .project-card:nth-child(4n+2){padding-top:0}.home-work .project-card:nth-child(n) .card-media{aspect-ratio:16/10}.card-info h3{font-size:32px}.card-info .eyebrow{font-size:12px}.service-row{gap:18px;grid-template-columns:25px 1fr}.client-grid{grid-template-columns:repeat(3,1fr);gap:35px 25px}.client-grid img{height:45px}.clients h2{font-size:46px}.quote-panel blockquote{font-size:33px}.testimonials h2{font-size:42px}.cta h2{font-size:62px}.footer-top{gap:35px}.footer-top>div:first-child{grid-column:1/-1}.footer-top>div:last-child{grid-column:1/-1}.footer p,.footer a{font-size:16px}.footer-bottom a,.footer-bottom button{font-size:14px}.page-intro{padding-top:44px;padding-bottom:45px}.page-intro h1{font-size:62px}.page-intro .lead{font-size:22px}.filters{flex-wrap:nowrap;overflow-x:auto;margin-right:calc(var(--gutter) * -1);padding-right:var(--gutter);padding-bottom:10px}.filter{white-space:nowrap}.search-row{align-items:start;flex-direction:column;gap:15px}.archive-grid{padding-bottom:65px}.project-intro{padding-top:32px;padding-bottom:32px}.breadcrumbs{font-size:13px;gap:9px}.project-intro h1{font-size:54px;overflow-wrap:anywhere}.project-title-bottom p{font-size:22px}.film-frame .watch-button{left:18px;bottom:18px;padding:5px 15px 5px 5px;font-size:16px}.film-frame .play-symbol{width:42px;height:42px}.film-frame{aspect-ratio:4/3}.related .work-grid{grid-template-columns:1fr}.related .project-card:last-child{display:block}.related .card-info h3{font-size:32px}.capability-grid{grid-template-columns:1fr 1fr;gap:35px 20px}.capability-grid h3{font-size:28px}.capability-grid ul{font-size:18px}.service-list{grid-template-columns:1fr;margin-top:38px}.team-grid{gap:35px 18px}.team-grid h3{font-size:27px}.team-grid p{font-size:17px}.news-grid{grid-template-columns:1fr}.news-card h2{font-size:35px}.contact-details a.big{font-size:32px;overflow-wrap:anywhere}.brief-form{padding:25px 20px}.brief-form h2{font-size:42px}.form-grid{grid-template-columns:1fr;gap:22px}.field.full{grid-column:auto}.video-dialog{max-width:96vw}.dialog-top{padding:13px 17px;gap:15px}.dialog-top h2{font-size:20px}.video-stage:has(.video-consent){min-height:340px}.video-consent{padding:20px;gap:16px}.video-consent h3{font-size:31px}.policy h1{font-size:58px}.policy h2{font-size:34px}.prose h2{font-size:36px}.prose h3{font-size:29px}.story-meta dl{font-size:17px}.hero-top .eyebrow{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1;transform:none}.hero-video{display:none}.motion-button{display:none}}
/* Faithful refinement of the existing SJH visual system. */
:root{--gutter:clamp(22px,4.4vw,80px)}.header{height:96px;box-shadow:none}.brand{width:200px;position:relative}.brand-light{display:none}.desktop-nav{display:none}.menu-button{display:grid;place-items:center;min-height:48px;width:48px;height:48px;padding:0;border-radius:50%;font-size:23px;line-height:1;box-shadow:0 6px 22px #e740231f}.mobile-nav{inset:96px 0 0;padding:35px var(--gutter);background:#fff}.menu-links{max-width:650px;margin:auto}.mobile-nav a{font-size:clamp(40px,4.3vw,65px);line-height:1.22;text-align:center;padding:12px 0;border-color:#ededeb}.mobile-nav p{text-align:center;margin-top:38px}.mobile-nav a[aria-current=page]{color:var(--red)}.mobile-nav:not([hidden]) .menu-links{animation:menu-in .35s ease both}@keyframes menu-in{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:none}}.home-page .header{position:fixed;top:0;left:0;right:0;background:transparent;border:0}.home-page .header:not(.scrolled) .brand-normal{display:none}.home-page .header:not(.scrolled) .brand-light{display:block}.home-page .header.scrolled,.home-page:has(.mobile-nav:not([hidden])) .header{background:#fff}.home-page:has(.mobile-nav:not([hidden])) .header .brand-normal{display:block}.home-page:has(.mobile-nav:not([hidden])) .header .brand-light{display:none}.home-page .header:not(.scrolled){height:96px}.header.scrolled + .mobile-nav{top:80px}.home-page main{padding-top:0}.showcase{position:relative;height:100svh;min-height:650px;max-height:1100px;overflow:hidden;background:#262a24;color:white}.showcase-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .75s,visibility .75s;pointer-events:none}.showcase-slide.is-current{opacity:1;visibility:visible;pointer-events:auto}.showcase-poster,.showcase .hero-video{position:absolute;width:100%;height:100%;object-fit:cover;inset:0}.showcase-slide:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#00000045,transparent 25%,transparent 45%,#00000070)}.hero-film-actions{position:absolute;bottom:175px;left:var(--gutter);right:var(--gutter);z-index:2;display:flex;align-items:end;justify-content:space-between;gap:28px}.showcase-slide:first-child .hero-film-actions{bottom:145px}.hero-project-title{font-family:var(--serif);font-size:clamp(48px,5.5vw,100px);line-height:1.03;max-width:900px;text-shadow:0 1px 25px #00000030}.hero-film-actions .watch-button{font-size:18px;text-shadow:0 2px 15px #00000070;white-space:nowrap}.showcase-controls{position:absolute;z-index:3;bottom:45px;left:var(--gutter);right:var(--gutter);display:flex;align-items:center;justify-content:center;gap:28px}.showcase-tabs{display:flex;align-items:stretch;gap:9px;max-width:920px;width:100%;height:78px}.showcase-tab{position:relative;flex:1;min-width:0;border:1px solid #ffffff20;border-radius:16px;background:var(--thumb) center/cover no-repeat;color:white;overflow:hidden;padding:0;transition:flex .55s cubic-bezier(.22,.61,.36,1),border-color .4s}.showcase-tab:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#000000b3,transparent 85%)}.showcase-tab span{position:absolute;bottom:10px;left:14px;right:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px;text-align:left;text-transform:uppercase;letter-spacing:.05em;opacity:0;transition:opacity .3s}.showcase-tab:hover span,.showcase-tab:focus-visible span,.showcase-tab.is-current span{opacity:1}.showcase-tab.is-current{flex:3.6;border-color:#ffffff9c}.showcase .motion-button{position:absolute;right:0}.red-intro{position:relative;text-align:center;background:var(--red);color:white;padding-top:95px;padding-bottom:135px;clip-path:polygon(0 0,100% 0,100% calc(100% - 95px),50% 100%,0 calc(100% - 95px));}.red-intro :is(h1,h2){font-size:clamp(42px,4.6vw,78px);letter-spacing:-.025em;line-height:1.05}.red-intro p{font-size:clamp(22px,2vw,32px);line-height:1.28;max-width:1300px;margin:32px auto 50px}.red-intro .pill{color:var(--red);text-transform:uppercase;font-size:16px;min-height:48px}.center-heading{text-align:center;margin-bottom:60px;font-size:clamp(48px,5.2vw,90px)}.home-work{padding-top:75px;padding-bottom:70px}.home-work .work-grid{grid-template-columns:repeat(3,1fr);gap:24px}.home-work .project-card{position:relative;padding:0!important;overflow:hidden;background:#151515}.home-work .project-card .card-media{aspect-ratio:16/9!important}.home-work .project-card .card-media:after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#000000bd,transparent 80%);opacity:0;transition:opacity .4s}.home-work .project-card .card-info{position:absolute;z-index:2;bottom:24px;left:24px;right:24px;color:white;margin:0;display:block;opacity:0;transform:translateY(12px);transition:opacity .4s,transform .4s}.home-work .project-card .card-info h3{font-size:clamp(25px,2.15vw,38px);line-height:1.05;text-shadow:0 1px 10px #00000060}.home-work .project-card .card-info .eyebrow{color:#fff;opacity:.85;font-size:12px;margin-top:10px;text-align:left}.home-work .project-card .card-deck,.home-work .card-play{display:none}.home-work .project-card:hover .card-info,.home-work .project-card:focus-visible .card-info{opacity:1;transform:none}.home-work .project-card:hover .card-media:after,.home-work .project-card:focus-visible .card-media:after{opacity:1}.home-work .all-work{margin-top:42px}.pill{font-size:16px}.home-testimonials{padding-top:25px;padding-bottom:85px}.home-testimonials .center-heading{margin-bottom:55px}.home-testimonials .quote-panel{isolation:isolate;background:#222;color:white;padding:100px 10% 55px;min-height:520px;text-align:center;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.home-testimonials .quote-panel:before{content:'';position:absolute;inset:-20px;background:var(--quote-bg) center/cover no-repeat;filter:blur(7px);z-index:-2}.home-testimonials .quote-panel:after{content:'';position:absolute;inset:0;background:#000000b3;z-index:-1}.home-testimonials blockquote{font-size:clamp(28px,2.6vw,46px);max-width:1080px;margin:auto;line-height:1.2}.home-testimonials cite{font-size:16px;text-transform:uppercase;letter-spacing:.1em;margin-top:33px}.home-testimonials cite:before{content:'';display:block;background:#fff;height:2px;width:38px;margin:0 auto 22px}.home-testimonials .quote-controls{justify-content:center;margin-top:40px}.home-testimonials .quote-controls button{background:transparent;color:white;border-color:#ffffff50;font-size:14px}.home-testimonials .quote-controls button[aria-pressed=true]{background:var(--red);border-color:var(--red)}.client-title{text-align:center;padding-block:40px}.client-title h2{margin-bottom:28px}.client-title p{font-size:23px}.client-rail{background:var(--red);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#ffffff50 transparent;padding:35px var(--gutter)}.client-track{display:flex;gap:24px}.client-logo{flex:0 0 260px;border:1px solid #ffffff30;display:grid;place-items:center;height:125px;scroll-snap-align:start;padding:20px 30px}.client-logo img{height:65px;max-width:190px;object-fit:contain}.cta{background:white;color:var(--ink);display:block;text-align:center;padding-block:110px}.cta h2{font-size:clamp(44px,5.2vw,90px);max-width:1350px;margin:auto;line-height:1.08}.cta .pill{margin-top:42px;text-transform:uppercase}.footer{background:var(--red);padding-top:55px}.footer-logo{filter:none;max-width:280px}.footer .eyebrow,.footer-bottom{color:#fff}.footer a:hover{color:white;text-decoration:underline;text-underline-offset:5px}.footer-bottom{border-top-color:#ffffff45}.footer-bottom a{color:#fff}.center-title{text-align:center;display:block;padding-top:40px;padding-bottom:58px}.center-title h1{font-size:clamp(52px,5vw,76px);color:var(--red);margin:auto}.sector-section{padding-bottom:90px}.sector-section .breadcrumbs{margin-bottom:40px}.sector-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.sector-tile{position:relative;aspect-ratio:1.13;display:grid;place-items:center;text-align:center;background:var(--red);color:#fff;overflow:hidden;padding:30px;isolation:isolate}.sector-tile:before{content:'';position:absolute;inset:0;z-index:-2;background:var(--sector-image) center/cover no-repeat;opacity:.3;transition:opacity .5s,transform .7s}.sector-tile:after{content:'';position:absolute;inset:0;z-index:-1;background:var(--red);opacity:.72;transition:opacity .5s}.sector-tile:last-child{background:var(--red-dark)}.sector-tile:last-child:after{background:var(--red-dark)}.sector-tile span{font-family:var(--serif);font-weight:600;font-size:clamp(30px,2.6vw,47px);line-height:1.12}.sector-tile:hover:before,.sector-tile:focus-visible:before{opacity:1;transform:scale(1.05)}.sector-tile:hover:after,.sector-tile:focus-visible:after{opacity:.25}.service-opening{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding-top:80px;padding-bottom:80px}.service-opening h1{font-size:clamp(42px,4.6vw,72px);color:var(--red);line-height:1.05}.service-opening p{font-size:24px;line-height:1.4;margin-bottom:26px}.red-heading{color:var(--red)}.service-circles-section{padding-top:25px}.service-circles{display:grid;grid-template-columns:repeat(4,1fr);gap:50px 36px}.service-circle-card{text-align:center}.service-circle{border-radius:50%;aspect-ratio:1;background:var(--red);color:white;display:grid;place-items:center;padding:25px;max-width:250px;margin:auto;transition:transform .45s,box-shadow .45s}.service-circle h3{font-family:var(--serif);font-weight:600;font-size:clamp(24px,2.2vw,37px);line-height:1.15}.service-circle-card:hover .service-circle{transform:translateY(-7px);box-shadow:0 15px 30px #e7402325}.service-circle-card p{font-size:19px;line-height:1.4;margin-top:22px;color:var(--muted)}.red-ribbon{background:var(--red);color:#fff;text-align:center;padding-block:65px 100px;clip-path:polygon(0 0,100% 0,100% calc(100% - 40px),50% 100%,0 calc(100% - 40px))}.red-ribbon h2{font-size:clamp(38px,3.6vw,62px);margin-bottom:35px}.red-ribbon .pill{color:var(--red)}.approach-section .section-heading{display:block}.approach-section .approach-grid>div{border:0;text-align:center;padding-top:0}.approach-grid h3{color:var(--red);font-size:clamp(35px,3.1vw,55px)}.approach-grid p{font-size:21px;line-height:1.5}.red-capabilities{background:var(--red);padding-bottom:110px;clip-path:polygon(0 0,100% 0,100% calc(100% - 40px),50% 100%,0 calc(100% - 40px))}.red-capabilities>h2{text-align:center;font-size:clamp(40px,4vw,66px)}.red-capabilities .capability-grid ul{color:#fff}.about-original{padding-top:65px;padding-bottom:45px}.about-original h1{font-size:clamp(52px,5vw,76px);color:var(--red);margin-bottom:38px}.about-original-copy{max-width:1300px}.about-original-copy p{font-size:25px;line-height:1.5;margin-bottom:28px}.about-original .team-grid{margin-top:65px}.team-grid h3{color:var(--red);font-size:29px}.studio-socials{padding-top:20px;padding-bottom:90px}.studio-socials h2{color:var(--red);font-size:clamp(44px,4.8vw,72px);margin-bottom:36px}.studio-socials>div{display:flex;gap:22px;flex-wrap:wrap}.studio-socials .pill{color:var(--red);font-size:18px}.contact-opening h1{color:var(--red);font-size:clamp(52px,5vw,76px)}.contact-opening{padding-top:55px}.center-project{text-align:center}.center-project h1{color:var(--red);margin:auto;font-size:clamp(54px,5vw,82px)}.center-project .project-title-bottom{justify-content:center;align-items:center;flex-direction:column;gap:24px;margin-top:20px}.center-project .project-title-bottom p{font-size:25px}.center-project .breadcrumbs{justify-content:center}.center-project .project-title-bottom .pill{margin:0}.news-grid .news-card h2{font-size:32px}.news-grid .card-media{aspect-ratio:16/10}.interior-page .related{background:white}.interior-page .related h2{font-size:clamp(42px,4vw,65px);color:var(--red)}
@media(max-width:1100px){.sector-grid{gap:22px}.sector-tile{padding:22px}.home-work .work-grid{gap:20px}.service-circles{gap:40px 26px}.showcase .motion-button{right:-15px}.showcase-tabs{max-width:780px;margin-right:32px}.service-opening p{font-size:22px}}
@media(max-width:800px){.header,.home-page .header:not(.scrolled){height:80px}.mobile-nav{top:80px}.showcase{height:90svh;min-height:600px}.showcase-controls{bottom:30px;gap:12px}.showcase-tabs{height:66px;gap:7px;margin-right:45px}.showcase-tab{border-radius:12px}.showcase-tab.is-current{flex:3}.showcase-tab span{font-size:12px;bottom:9px;left:10px;right:10px}.hero-film-actions{bottom:142px;display:block}.hero-film-actions .watch-button{margin-top:18px}.hero-project-title{font-size:60px}.showcase-slide:first-child .hero-film-actions{bottom:123px}.showcase .motion-button{right:0}.red-intro{padding-top:65px;padding-bottom:112px;clip-path:polygon(0 0,100% 0,100% calc(100% - 58px),50% 100%,0 calc(100% - 58px))}.red-intro :is(h1,h2){font-size:52px}.red-intro p{font-size:23px;max-width:680px;margin-block:25px 35px}.home-work .work-grid{grid-template-columns:repeat(2,1fr)}.home-work .project-card .card-info{left:18px;right:18px;bottom:18px}.home-work .project-card .card-info h3{font-size:29px}.home-testimonials .quote-panel{padding:65px 7% 42px;min-height:440px}.home-testimonials blockquote{font-size:32px}.client-title p{font-size:21px}.client-logo{flex-basis:210px;height:110px}.client-logo img{height:56px}.cta{padding-block:80px}.cta h2{font-size:55px}.sector-grid{grid-template-columns:1fr 1fr}.sector-tile span{font-size:39px}.service-opening{grid-template-columns:1fr;gap:30px;padding-top:50px;padding-bottom:45px}.service-opening h1{font-size:52px}.service-circles{grid-template-columns:1fr 1fr;gap:42px 30px}.service-circle h3{font-size:34px}.service-circle-card p{font-size:19px}.approach-section .approach-grid{grid-template-columns:1fr;gap:55px}.approach-grid p{max-width:680px;margin:auto}.about-original-copy p{font-size:22px}.about-original .team-grid{margin-top:45px}.center-title{padding-top:35px}.team-grid h3{font-size:28px}}
@media(max-width:500px){.showcase{height:82svh;min-height:535px}.showcase-controls{bottom:22px;left:20px;right:20px;display:block}.showcase-tabs{max-width:none;width:calc(100% - 42px);height:60px;gap:5px;margin:0}.showcase-tab.is-current{flex:2.6}.showcase-tab span{font-size:11px;left:7px;right:7px;bottom:8px}.showcase .motion-button{width:34px;height:34px;font-size:12px;right:0;top:14px;display:grid;place-items:center}.hero-project-title{font-size:45px}.hero-film-actions{left:22px;right:22px;bottom:116px}.showcase-slide:first-child .hero-film-actions{bottom:106px}.hero-film-actions .watch-button{font-size:16px}.hero-film-actions .play-symbol{width:42px;height:42px}.red-intro{padding-top:48px;padding-bottom:91px;clip-path:polygon(0 0,100% 0,100% calc(100% - 40px),50% 100%,0 calc(100% - 40px))}.red-intro :is(h1,h2){font-size:43px;line-height:1.03;text-wrap:balance}.red-intro p{font-size:22px;line-height:1.3;margin-block:23px 30px}.red-intro .pill{min-height:46px}.home-work{padding-top:50px;padding-bottom:45px}.center-heading{font-size:48px;margin-bottom:35px}.home-work .work-grid{grid-template-columns:1fr;gap:20px}.home-work .project-card .card-info{opacity:1;transform:none;left:20px;right:20px;bottom:18px}.home-work .project-card .card-media:after{opacity:1}.home-work .project-card .card-info h3{font-size:30px}.home-work .project-card .card-info .eyebrow{font-size:12px;margin-top:8px}.home-testimonials{padding-top:18px;padding-bottom:35px}.home-testimonials .center-heading{font-size:42px;margin-bottom:32px}.home-testimonials .quote-panel{padding:40px 24px 30px;min-height:450px}.home-testimonials blockquote{font-size:28px}.home-testimonials cite{font-size:14px}.client-title{padding-block:40px 30px}.client-title h2{font-size:48px;margin-bottom:20px}.client-title p{font-size:20px}.client-rail{padding-block:23px}.client-track{gap:14px}.client-logo{flex-basis:180px;height:96px;padding:20px}.client-logo img{height:51px}.cta{padding-block:65px}.cta h2{font-size:44px}.cta .pill{margin-top:30px}.footer-logo{max-width:250px}.sector-grid{gap:16px}.sector-tile{padding:18px;aspect-ratio:1}.sector-tile span{font-size:29px}.sector-section{padding-bottom:60px}.sector-section .breadcrumbs{margin-bottom:25px}.center-title h1{font-size:53px}.center-title{padding-block:32px 38px}.service-opening h1{font-size:43px}.service-opening p{font-size:21px}.service-circles{gap:35px 20px}.service-circle{padding:17px}.service-circle h3{font-size:26px}.service-circle-card p{font-size:18px;line-height:1.35;margin-top:17px}.service-circles-section .center-heading{font-size:45px}.red-ribbon{padding-block:46px 78px}.red-ribbon h2{font-size:39px}.approach-grid h3{font-size:45px}.approach-grid p{font-size:20px}.about-original{padding-top:40px}.about-original h1{font-size:53px;margin-bottom:30px}.about-original-copy p{font-size:21px}.about-original .team-grid{gap:35px 18px}.team-grid h3{font-size:27px}.team-grid p{font-size:17px}.studio-socials .pill{font-size:16px}.studio-socials>div{gap:14px}.center-project h1{font-size:50px}.center-project .project-title-bottom p{font-size:22px}.contact-opening h1{font-size:53px}.contact-opening{padding-top:35px}.news-grid .news-card h2{font-size:33px}}
@media(hover:none) and (min-width:501px){.home-work .project-card .card-info,.home-work .project-card .card-media:after{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.showcase-slide{transition:none}.showcase .motion-button{display:none}}
/* Content stays visible while the entrance animation enhances it. */
.js-motion .reveal{opacity:1;transform:none;transition:none}.js-motion .reveal.visible{animation:reveal-in .65s ease both}@keyframes reveal-in{from{opacity:.72;transform:translateY(16px)}to{opacity:1;transform:none}}.client-rail{scroll-snap-type:none}.rail-pause-wrap{background:var(--red);color:white;padding:0 var(--gutter) 16px;text-align:right}.rail-pause{color:white;background:none;border:0;font-size:14px;text-decoration:underline;text-underline-offset:4px;padding:7px;min-height:38px}.services-film{height:75svh;min-height:460px;max-height:850px;position:relative;background:#222;overflow:hidden}.services-film img,.services-film video{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.services-film video{opacity:0;transition:opacity 1s}.services-film video.ready{opacity:1}.services-film .watch-button{position:absolute;left:var(--gutter);bottom:38px;z-index:2;color:white;background:#00000045;border-radius:50px;padding:7px 20px 7px 7px}.services-film .service-motion{position:absolute;right:var(--gutter);bottom:42px;z-index:2;color:white;display:grid;place-items:center;border:1px solid #ffffff70;background:#00000030;width:44px;height:44px;border-radius:50%}.services-film:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#00000050,transparent 50%)}@media(max-width:500px){.services-film{height:66svh;min-height:420px}.services-film .service-motion{width:36px;height:36px;bottom:43px}}@media(prefers-reduced-motion:reduce){.js-motion .reveal.visible{animation:none}.services-film video,.service-motion{display:none!important}}
:is(.film-page,.services-page) .header{position:fixed;top:0;left:0;right:0;background:transparent;border:0}:is(.film-page,.services-page) .header:not(.scrolled) .brand-normal{display:none}:is(.film-page,.services-page) .header:not(.scrolled) .brand-light{display:block}:is(.film-page,.services-page) .header.scrolled,:is(.film-page,.services-page):has(.mobile-nav:not([hidden])) .header{background:#fff}:is(.film-page,.services-page):has(.mobile-nav:not([hidden])) .header .brand-normal{display:block}:is(.film-page,.services-page):has(.mobile-nav:not([hidden])) .header .brand-light{display:none}.film-page .film-frame{height:92svh;min-height:560px;max-height:1000px;aspect-ratio:auto}.film-page .film-frame img{object-fit:cover}.film-page .center-project{padding-top:55px;padding-bottom:0}.film-page .project-title-bottom .project-summary{font-family:var(--serif);font-size:clamp(30px,3.1vw,48px);line-height:1.2;color:var(--red);max-width:1100px;margin:15px auto}.project-story .prose{margin-inline:auto;max-width:950px}.project-story{padding-top:45px;padding-bottom:50px}.film-page .related .section-heading{justify-content:center;text-align:center;flex-direction:column;align-items:center}.film-page .related .work-grid{grid-template-columns:repeat(3,1fr)}.film-page .related .project-card:last-child{display:block}.film-page .related .card-media{aspect-ratio:16/9}.film-page .related .card-info h3{font-size:31px}.film-page .related .card-deck{display:none}@media(max-width:800px){.film-page .film-frame{height:80svh;min-height:520px}.film-page .related .work-grid{grid-template-columns:1fr 1fr}.film-page .project-title-bottom .project-summary{font-size:34px}}@media(max-width:500px){.film-page .film-frame{height:72svh;min-height:460px}.film-page .related .work-grid{grid-template-columns:1fr}.film-page .project-title-bottom .project-summary{font-size:30px}.film-page .center-project{padding-top:38px}.project-story{padding-top:30px}}
/* Original SJH interaction language: radial menu, cinematic intro and layered sections. */
.mobile-nav{inset:0!important;z-index:90;background:var(--red);color:#fff;padding:110px var(--gutter) 35px;display:flex;flex-direction:column;justify-content:center;clip-path:circle(0 at var(--menu-x,95vw) var(--menu-y,45px));transition:clip-path .72s cubic-bezier(.86,0,.07,1);overflow:auto}
.mobile-nav[hidden]{display:none}.menu-open .mobile-nav{clip-path:circle(150vmax at var(--menu-x,95vw) var(--menu-y,45px))}
.menu-links{display:grid;grid-template-columns:1fr 1fr;column-gap:clamp(65px,12vw,180px);row-gap:26px;width:min(900px,100%);max-width:900px}
.mobile-nav .menu-links a{border:0;color:#fff!important;font-family:var(--serif);font-size:clamp(48px,6.5vw,96px);font-weight:500;line-height:.95;text-align:left;padding:8px 0;opacity:0;transform:translateY(40px);transition:opacity .4s ease,transform .5s cubic-bezier(.16,1,.3,1)}
.menu-open .menu-links a{opacity:1;transform:none;transition-delay:calc(.2s + var(--menu-i)*.05s)}
.menu-links a:nth-child(1){--menu-i:0}.menu-links a:nth-child(2){--menu-i:1}.menu-links a:nth-child(3){--menu-i:2}.menu-links a:nth-child(4){--menu-i:3}.menu-links a:nth-child(5){--menu-i:4}.menu-links a:nth-child(6){--menu-i:5}
.mobile-nav .menu-links a:hover{opacity:.65}.mobile-nav p{opacity:0;transition:opacity .3s;text-align:center;font-size:16px;margin:60px 0 0}.menu-open .mobile-nav p{opacity:1;transition-delay:.45s}.mobile-nav p a{color:#fff;font-size:16px}
body.menu-open .header{background:transparent!important;border:0;z-index:100}body.menu-open .header .brand-normal{display:none!important}body.menu-open .header .brand-light{display:block!important}
.menu-button{display:grid;place-items:center;position:relative;transition:background .35s,color .35s,transform .3s}.menu-icon,.menu-icon:before,.menu-icon:after{display:block;width:18px;height:2px;background:currentColor;position:relative;transition:transform .4s,background .4s}.menu-icon:before,.menu-icon:after{content:'';position:absolute;top:0}.menu-icon:before{transform:translateY(-6px)}.menu-icon:after{transform:translateY(6px)}
.menu-open .menu-button{background:white;color:var(--red)}.menu-open .menu-icon{background:transparent}.menu-open .menu-icon:before{transform:rotate(45deg)}.menu-open .menu-icon:after{transform:rotate(-45deg)}
.intro-loader{position:fixed;inset:0;background:#151515;z-index:130;overflow:hidden;display:grid;place-items:center;pointer-events:auto}.intro-loader[hidden]{display:none}.loader-strip{position:relative;display:flex;gap:22px;align-items:center;justify-content:center;width:100%;height:100%}.loader-frame{position:absolute;width:20vw;height:14vw;max-height:190px;border-radius:12px;overflow:hidden;will-change:transform}.loader-frame img{width:100%;height:100%;object-fit:cover}.loader-frame:nth-child(1){--offset:-2}.loader-frame:nth-child(2){--offset:-1}.loader-frame:nth-child(3){--offset:0;z-index:2}.loader-frame:nth-child(4){--offset:1}.loader-frame:nth-child(5){--offset:2}
.intro-running .loader-frame{animation:film-strip 1.7s cubic-bezier(.76,0,.24,1) both}.intro-running .loader-featured{animation:film-strip 1.7s cubic-bezier(.76,0,.24,1) both,film-expand 1.3s 1.6s cubic-bezier(.76,0,.24,1) forwards}.intro-running .loader-frame:not(.loader-featured){animation:film-strip 1.7s cubic-bezier(.76,0,.24,1) both,film-recede .9s 1.7s ease forwards}.intro-running .intro-loader{animation:loader-out .35s 2.9s ease forwards}
.skip-intro{position:absolute;right:var(--gutter);bottom:32px;color:#fff;background:#15151588;border:1px solid #ffffff70;border-radius:40px;padding:11px 22px;font-size:14px;z-index:3}
@keyframes film-strip{0%{transform:translateX(calc(var(--offset)*24vw + 110vw)) scale(.7)}60%{transform:translateX(calc(var(--offset)*24vw - 12vw)) scale(1)}100%{transform:translateX(calc(var(--offset)*24vw)) scale(1)}}
@keyframes film-expand{to{width:100vw;height:100svh;max-height:100svh;border-radius:0}}
@keyframes film-recede{to{opacity:0;transform:translateX(calc(var(--offset)*34vw)) scale(.6)}}
@keyframes loader-out{to{opacity:0;visibility:hidden}}
.service-circle{position:relative;display:block;background:#b92d1a;border:0;padding:0;width:100%;max-width:285px;isolation:isolate;overflow:hidden;cursor:pointer;color:white;transition:transform .45s cubic-bezier(.34,1.56,.64,1),box-shadow .45s}
.service-circle>img{position:absolute;inset:0;width:100%;height:100%;z-index:-1;opacity:.6;transition:opacity .45s,transform .45s}.circle-content{padding:24px;display:flex;flex-direction:column;justify-content:center;align-items:center;height:100%;aspect-ratio:1}.circle-title{display:block;font-family:var(--serif);font-size:clamp(23px,2.1vw,33px);line-height:1.08;font-weight:500;transition:transform .4s}.circle-detail{display:block;font-size:clamp(14px,1.1vw,17px);line-height:1.3;opacity:0;max-height:0;overflow:hidden;transition:opacity .4s,max-height .4s,margin .4s}
.service-circle[aria-expanded=true]{transform:scale(1.05);box-shadow:0 15px 30px #e7402325}.service-circle[aria-expanded=true]>img{opacity:1}.service-circle[aria-expanded=true] .circle-title{transform:translateY(-5px)}.service-circle[aria-expanded=true] .circle-detail{max-height:160px;opacity:1;margin-top:10px}
.service-circle-card:hover .service-circle{transform:none;box-shadow:none}.service-circle-card:hover .service-circle[aria-expanded=true]{transform:scale(1.05);box-shadow:0 15px 30px #e7402325}
.quote-video{position:absolute;inset:-10px;width:calc(100% + 20px);height:calc(100% + 20px);object-fit:cover;filter:blur(7px);z-index:-2}.quote-pause{color:white;background:none;border:0;text-decoration:underline;text-underline-offset:4px;font-size:13px;margin:20px auto 0;padding:7px 12px}.news-card:hover img,.news-card:focus-within img{transform:scale(1.045);transition:transform .65s}
.home-page #main{isolation:isolate}.home-page #main>section:not(.showcase){position:relative;z-index:2}.home-page .home-work,.home-page .home-testimonials,.home-page .home-clients,.home-page .cta{background:white}.home-page .showcase{position:sticky;top:0;z-index:0;max-height:none}.showcase-poster,.hero-video{transform:translateY(var(--hero-drift,0)) scale(1.06)}
@media(min-width:801px){.services-film{position:sticky;top:0;z-index:0}.services-page #main{isolation:isolate}.services-page #main>section:not(.services-film){position:relative;z-index:2;background:white}.services-page #main>.red-ribbon,.services-page #main>.red-capabilities{background:var(--red)}.approach-section{padding-bottom:0}.approach-grid{display:block}.approach-section .approach-grid>div{position:sticky;top:80px;min-height:calc(100svh - 80px);display:flex;flex-direction:column;justify-content:center;align-items:center;background:#fff;padding:80px 20px;border-top:1px solid #eee}.approach-grid h3{font-size:clamp(60px,7vw,105px);margin-bottom:35px}.approach-grid p{max-width:850px;font-size:27px;line-height:1.45}.approach-grid>div:nth-child(1){z-index:1}.approach-grid>div:nth-child(2){z-index:2}.approach-grid>div:nth-child(3){z-index:3}}
@media(max-width:800px){.menu-links{row-gap:26px;column-gap:30px}.mobile-nav .menu-links a{font-size:clamp(43px,8vw,65px)}.mobile-nav p{max-width:300px;margin:45px auto 0}.loader-frame{width:34vw;height:25vw}.circle-content{padding:25px}.circle-detail{font-size:16px}.circle-title{font-size:30px}.home-page .showcase{position:relative}.showcase-poster,.hero-video{transform:none}}
@media(max-width:500px){.circle-content{padding:18px}.circle-title{font-size:23px}.circle-detail{font-size:13px;line-height:1.3}.service-circles{gap:30px 16px}.mobile-nav{padding-top:100px}.mobile-nav .menu-links a{font-size:49px}.menu-links{row-gap:30px}}
@media(prefers-reduced-motion:reduce){.intro-loader{display:none!important}.mobile-nav,.menu-links a,.menu-icon:before,.menu-icon:after{transition-duration:.01s!important;transition-delay:0s!important}.showcase-poster,.hero-video{transform:none}.home-page .showcase,.services-film,.approach-section .approach-grid>div{position:relative}.approach-section .approach-grid>div{min-height:0;padding:60px 0}.service-circle[aria-expanded=true]{transform:none}}
@media(min-width:801px) and (min-height:700px){.home-page #main>.home-testimonials{position:sticky;top:80px;z-index:2}.home-page #main>.home-clients{z-index:3}.home-page #main>.cta{z-index:4}}
@media(max-width:500px){.service-circle-card:has(.service-circle[aria-expanded=true]){grid-column:1/-1}.service-circle-card:has(.service-circle[aria-expanded=true]) .service-circle{width:280px;max-width:100%;transform:none}.service-circle[aria-expanded=true] .circle-detail{font-size:16px;line-height:1.35}.service-circle[aria-expanded=true] .circle-title{font-size:29px}.service-circle[aria-expanded=true] .circle-content{padding:35px}}
