:root{color-scheme:dark;--bg:#131514;--text:#f2f3e9;--muted:#a3aaa3;--line:#373c36;--accent:#d9ff6a;--font:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.5 var(--font)}button,input,select{font:inherit}a{color:inherit;text-decoration:none}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.wrap{max-width:1440px;margin:auto;padding-left:6%;padding-right:6%}.header{height:112px;display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{font-weight:800;letter-spacing:-.055em;font-size:24px;display:flex;align-items:center;gap:12px}.brand-mark{color:var(--accent);font-size:30px}.header nav{display:flex;align-items:center;gap:36px;font-size:14px}.header nav>a:hover{color:var(--accent)}.contact-link{border:1px solid var(--line);padding:11px 20px;border-radius:30px}.contact-link span{margin-left:14px;color:var(--accent)}.hero{padding-top:56px;padding-bottom:58px}.eyebrow{font-size:12px;letter-spacing:.13em;font-weight:650;display:flex;align-items:center;gap:12px}.dash{height:2px;width:24px;background:var(--accent)}.hero-layout{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}h1{font-family:'Manrope',var(--font);font-size:clamp(64px,8.8vw,132px);letter-spacing:-.065em;line-height:1.06;font-weight:600;margin:28px 0 0}.italic{font-family:Georgia,serif;font-weight:400;font-style:italic;color:var(--accent);letter-spacing:-.055em}.hero-note{padding-bottom:10px;min-width:265px}.hero-note p{font-size:20px;line-height:1.55;color:#c5cbc2;margin:0 0 34px}.text-link{font-size:14px;display:inline-flex;align-items:center;gap:30px;border-bottom:1px solid #71796e;padding-bottom:10px}.small-play{border-left:7px solid var(--accent);border-top:4px solid transparent;border-bottom:4px solid transparent}.clients-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0 14px;background:#191c19}.strip-header{display:flex;justify-content:space-between;align-items:center;gap:20px}.strip-header h2{font-size:14px;font-weight:500;margin:0;color:#c3c9bf}.strip-header button{border:0;background:none;color:var(--muted);font-size:12px;padding:8px}.strip-header button span{margin-left:8px}.marquee{overflow:hidden;margin:22px 0 16px;mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent)}.marquee-track{display:flex;width:max-content;animation:scroll 84s linear infinite}.profile-group{display:flex;flex-shrink:0;gap:48px;padding-right:48px}.profile{display:flex;gap:15px;align-items:center;flex-shrink:0;padding:6px}.profile img{width:64px;height:64px;border-radius:50%;object-fit:cover}.profile strong{display:block;font-size:17px;letter-spacing:-.02em;font-weight:600}.profile small{display:block;font-size:13px;color:var(--muted);margin-top:3px}.profile:hover strong{color:var(--accent)}.marquee:hover .marquee-track,.marquee:focus-within .marquee-track,.marquee.paused .marquee-track{animation-play-state:paused}.marquee:focus-within{overflow-x:auto;mask-image:none}.marquee:focus-within .marquee-track{animation:none}.strip-foot{color:#949d92;font-size:12px;text-align:right}@keyframes scroll{to{transform:translateX(-50%)}}.work{padding-top:78px;padding-bottom:86px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:20px}.section-heading h2{font-size:clamp(34px,4vw,56px);font-family:'Manrope',var(--font);letter-spacing:-.05em;font-weight:500;line-height:1.15;margin:16px 0 0}.count{font-size:14px;letter-spacing:0;vertical-align:top;margin-left:13px;color:var(--accent);display:inline-block;padding-top:6px}.filter label{display:block;font-size:12px;color:var(--muted);margin-bottom:8px}.filter select{min-width:190px;color:var(--text);background:#20241f;border:1px solid #444c40;padding:11px 34px 11px 14px;border-radius:5px;font-size:14px}.work-intro{color:var(--muted);font-size:16px;margin:24px 0 32px}.work-intro span{display:block;font-size:14px;margin-top:4px}.video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 23px}.video-card{min-width:0}.video-button{padding:0;background:none;border:0;text-align:left;color:inherit;width:100%;display:block}.thumbnail{display:block;position:relative;aspect-ratio:16/9;overflow:hidden;background:#272d25;border-radius:6px}.thumbnail>img{width:100%;height:100%;object-fit:cover;display:block;transform:scale(1.015);transition:transform .35s}.video-button:hover .thumbnail>img{transform:scale(1.06)}.play-circle{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:38px;height:38px;border:1px solid #ffffff77;background:#141814b8;border-radius:50%;backdrop-filter:blur(5px)}.play-circle:after{content:'';border-left:9px solid #fff;border-top:5px solid transparent;border-bottom:5px solid transparent;margin-left:3px}.video-button:hover .play-circle{background:var(--accent);border-color:var(--accent)}.video-button:hover .play-circle:after{border-left-color:var(--bg)}.card-meta{display:flex;justify-content:space-between;gap:10px;margin:16px 0 8px;font-size:12px}.card-client{color:var(--accent);font-weight:500}.card-role{color:var(--muted)}.video-card h3{font-size:17px;line-height:1.4;letter-spacing:-.015em;margin:0;font-weight:500}.more{display:flex;flex-direction:column;align-items:center;gap:12px;padding-top:45px}.more p{font-size:13px;color:var(--muted);margin:0}.pill{display:flex;align-items:center;justify-content:center;gap:35px;background:transparent;color:var(--text);border:1px solid #68705f;border-radius:40px;padding:12px 28px;font-size:14px}.pill:hover{background:var(--accent);color:#131514}.pill span{font-size:21px}.about-section{background:#20261e;padding:75px 0}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:12%}.about-layout h2{font-family:'Manrope',var(--font);font-size:clamp(34px,4vw,55px);letter-spacing:-.05em;line-height:1.18;font-weight:500;margin:24px 0}.about-copy p{font-size:18px;margin:0 0 24px;color:#d4dacf}.specialism{border-top:1px solid #48513f;padding:15px 0;display:flex;justify-content:space-between;gap:18px;font-size:14px}.specialism span{color:#aab6a2}.specialism strong{font-weight:500}.full-clients{padding-top:66px}.full-clients h3{font-size:24px;letter-spacing:-.035em;font-weight:500;margin:0}.full-clients p{font-size:13px;color:#aab6a2;margin:4px 0 24px}.full-clients ul{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:13px 30px;margin:0}.full-clients li{font-size:16px;color:#dce3d5}.contact{padding-top:80px;padding-bottom:80px}.contact h2{font-family:'Manrope',var(--font);font-size:clamp(52px,7vw,98px);font-weight:500;line-height:1.08;letter-spacing:-.06em;margin:24px 0 35px}.email{font-size:clamp(17px,2.2vw,28px);border-bottom:1px solid #6a7560;padding-bottom:8px;overflow-wrap:anywhere}.email:hover{color:var(--accent)}footer{display:flex;justify-content:space-between;flex-wrap:wrap;gap:15px;border-top:1px solid var(--line);padding-top:24px;padding-bottom:24px;color:var(--muted);font-size:12px}dialog{width:min(1060px,94vw);padding:0;border:1px solid #59614f;border-radius:10px;background:#1b2019;color:var(--text);max-height:94dvh;overflow:auto}dialog::backdrop{background:#000c;backdrop-filter:blur(8px)}.dialog-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;font-size:14px}.dialog-bar button{background:none;border:0;color:var(--text);padding:8px}.dialog-bar button span{font-size:24px;margin-left:12px}#player{aspect-ratio:16/9;background:#000}#player iframe{width:100%;height:100%;border:0}.dialog-bottom{padding:20px;display:flex;justify-content:space-between;gap:25px;align-items:center}.dialog-bottom h2{font-size:18px;line-height:1.4;margin:0}.dialog-bottom p{font-size:13px;color:var(--muted);margin-bottom:0}.dialog-bottom>a{flex-shrink:0;font-size:14px;color:var(--accent);text-decoration:underline}.skip{position:fixed;top:-80px;left:20px;z-index:10;background:var(--accent);color:#131514;padding:12px}.skip:focus{top:15px}[hidden]{display:none!important}@media(min-width:1600px){.wrap{padding-left:80px;padding-right:80px}}@media(max-width:900px){.video-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-note{min-width:200px}.hero-note p{font-size:17px}.hero{padding-top:40px}.profile-group{gap:25px;padding-right:25px}.about-layout{gap:7%}}@media(max-width:600px){.wrap{padding-left:22px;padding-right:22px}.header{height:90px;gap:14px}.wordmark{font-size:19px;gap:6px}.brand-mark{font-size:22px}.header nav{gap:16px;font-size:13px}.contact-link{padding:8px 12px}.contact-link span{display:none}.hero{padding-top:26px;padding-bottom:35px}.hero-layout{display:block}h1{font-size:clamp(64px,16vw,95px);margin-top:22px}.hero-note{margin-top:26px}.hero-note p{font-size:17px;margin-bottom:20px}.hero-note p br{display:none}.hero-note p br:after{content:' '}.hero-note p{max-width:290px}.profile img{width:52px;height:52px}.profile strong{font-size:15px}.profile small{font-size:12px}.strip-header h2{font-size:13px}.strip-header button{font-size:12px}.strip-foot{text-align:left;font-size:12px}.work{padding-top:46px;padding-bottom:50px}.section-heading{display:block}.section-heading h2{font-size:38px}.filter{margin-top:22px;display:flex;align-items:center;justify-content:space-between;gap:15px}.filter label{font-size:13px;margin:0}.filter select{min-width:150px;max-width:60%}.work-intro{font-size:15px}.work-intro span{font-size:13px}.video-grid{grid-template-columns:1fr;gap:30px}.video-card h3{font-size:18px}.card-meta{font-size:13px;margin-top:12px}.about-section{padding:48px 0}.about-layout{grid-template-columns:1fr;gap:10px}.about-copy p{font-size:17px}.full-clients{padding-top:40px}.full-clients ul{gap:12px 22px}.full-clients li{font-size:14px}.contact{padding-top:48px;padding-bottom:55px}.contact h2{font-size:58px}.dialog-bottom{display:block}.dialog-bottom>a{display:inline-block;margin-top:18px}footer>span:nth-child(2){display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee{overflow-x:auto;mask-image:none}.marquee-track{animation:none}.duplicate{display:none}.thumbnail>img{transition:none}.strip-header button{display:none}}

/* Editorial presentation: compact introduction, quiet colour, larger opening work. */
:root{--bg:#171817;--text:#f0f0eb;--muted:#a7aaa5;--line:#363936;--accent:#d5eb9f}
.header{height:88px;border-bottom:1px solid var(--line)}
.wordmark{font-size:19px;letter-spacing:-.035em;font-weight:650}
.header nav{font-size:14px;gap:30px}
.contact-link{border:0;border-radius:0;padding:0 0 3px;border-bottom:1px solid #72786e}
.hero{padding-top:34px;padding-bottom:33px}
.hero h1{font-size:clamp(60px,9.2vw,132px);letter-spacing:-.075em;line-height:1.12;margin:16px 0 20px;font-weight:500;white-space:nowrap}
.name-period{color:var(--accent)}
.hero-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px}
.hero-bottom p{font-size:20px;letter-spacing:-.02em;margin:0;color:#c5c9c1}
.text-link{gap:22px;padding-bottom:6px;font-size:14px}
.eyebrow{color:var(--muted);font-size:12px;font-weight:500;letter-spacing:.1em}
.clients-strip{padding-top:18px;padding-bottom:12px;background:#1c1e1c}
.strip-header h2{font-size:14px;color:#dddeda}
.marquee{margin-top:18px;margin-bottom:12px}
.profile{gap:17px}.profile img{width:76px;height:76px;filter:saturate(.85)}
.profile strong{font-size:19px;font-weight:500;letter-spacing:-.025em}
.profile small{color:#93998f;font-size:12px;margin-top:4px}
.strip-foot{color:#93998f}.profile-group{gap:50px;padding-right:50px}
.marquee-track{animation-duration:95s}
.work{padding-top:48px;padding-bottom:65px}
.section-heading h2{font-size:clamp(34px,3.4vw,48px);font-weight:500;margin-top:10px}
.count{color:var(--muted);font-size:13px}
.filter select{background:transparent;border-color:#4a5047;border-radius:0;padding:10px 30px 10px 12px}
.work-intro{font-size:14px;margin:16px 0 28px}
.video-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:38px 26px}
.video-card{grid-column:span 2}
.video-card:nth-child(-n+6){grid-column:span 3}
.thumbnail{border-radius:2px}
.card-client{color:#e1e5dc;font-size:14px}.card-role{font-size:12px;color:#969e92}
.card-meta{margin-top:16px;margin-bottom:8px}
.video-card h3{font-size:17px;font-weight:450;line-height:1.45}
.video-card:nth-child(-n+6) h3{font-size:20px;letter-spacing:-.025em}
.video-button:hover .card-client{color:var(--accent)}
.play-circle{width:42px;height:42px}
.about-section{background:#1d201c;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:60px 0}
.about-layout h2{font-size:clamp(32px,3.5vw,48px);font-weight:500}
.about-copy p{font-size:18px;color:#c7cdc1}.specialism{border-color:#42483d}
.full-clients{padding-top:52px}.full-clients h3{font-size:17px;font-weight:500;margin-bottom:22px}
.full-clients ul{gap:15px 32px}.full-clients li{color:#aeb8a5}
.contact{padding-top:58px;padding-bottom:68px}.contact h2{font-size:clamp(34px,4.7vw,66px);font-weight:500;letter-spacing:-.05em;line-height:1.16;margin:20px 0 28px}
.email{font-size:clamp(18px,2.2vw,28px);color:#c9cfc2}
@media(max-width:900px){.video-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 22px}.video-card,.video-card:nth-child(-n+6){grid-column:span 1}.video-card:nth-child(-n+6) h3{font-size:18px}.profile-group{gap:32px;padding-right:32px}}
@media(max-width:600px){.header{height:72px}.wordmark{font-size:17px}.header nav{gap:20px;font-size:13px}.contact-link{padding:0 0 3px}.hero{padding-top:26px;padding-bottom:26px}.hero h1{font-size:clamp(42px,10.5vw,63px);letter-spacing:-.07em;margin:14px 0 17px}.hero-bottom{align-items:flex-start;flex-direction:column;gap:18px}.hero-bottom p{font-size:17px}.text-link{font-size:13px}.clients-strip{padding-top:13px}.profile img{width:64px;height:64px}.profile strong{font-size:17px}.profile{gap:14px}.profile-group{gap:28px;padding-right:28px}.marquee{margin-top:14px;margin-bottom:10px}.work{padding-top:32px}.section-heading h2{font-size:34px;margin-top:9px}.filter{margin-top:18px}.work-intro{margin:18px 0 23px;font-size:13px}.video-grid{grid-template-columns:1fr;gap:30px}.video-card h3,.video-card:nth-child(-n+6) h3{font-size:18px}.about-section{padding:40px 0}.about-layout h2{font-size:34px}.about-copy p{font-size:17px}.full-clients{padding-top:32px}.full-clients ul{gap:12px 22px}.contact{padding-top:40px;padding-bottom:46px}.contact h2{font-size:38px;max-width:300px}.email{font-size:19px}}


.marquee.manual{overflow-x:auto;mask-image:none;scrollbar-width:thin;scrollbar-color:#65705c transparent;touch-action:pan-x pan-y}
.marquee.manual .marquee-track{animation:none}
.marquee.manual .duplicate{display:none}
.contact-prompt{color:var(--muted);font-size:17px;margin:-10px 0 26px;max-width:540px;line-height:1.6}
@media(pointer:coarse){.marquee{overflow-x:auto;touch-action:pan-x pan-y}.profile{-webkit-user-drag:none;user-select:none}.profile img{-webkit-user-drag:none}}


.experience-stats{margin:34px 0 0;display:grid;gap:24px}
.experience-stats>div{border-top:1px solid var(--line);padding-top:17px}
.experience-stats dt{font-family:'Manrope',var(--font);font-size:36px;letter-spacing:-.045em;line-height:1.15;font-weight:500}
.experience-stats dd{margin:8px 0 0;font-size:14px;color:var(--muted)}
.about-copy p{line-height:1.7}.about-copy p:last-child{margin-bottom:0}
@media(max-width:600px){.experience-stats{grid-template-columns:1fr 1fr;gap:18px;margin:10px 0 28px}.experience-stats dt{font-size:29px}.experience-stats dd{font-size:13px;line-height:1.5}}


.hero-credentials{display:flex;flex-wrap:wrap;gap:6px 0;list-style:none;padding:0;margin:13px 0 0;color:var(--muted);font-size:14px;line-height:1.6}
.hero-credentials strong{color:var(--text);font-weight:500}
.hero-credentials li+li::before{content:'·';display:inline-block;margin:0 12px;color:var(--muted)}
@media(max-width:600px){.hero-credentials{flex-direction:column;gap:3px;font-size:13px;margin-top:11px}.hero-credentials li+li::before{display:none}}


.marquee.draggable,.marquee.draggable:focus-within{overflow:hidden;scrollbar-width:none;touch-action:pan-y;cursor:grab;user-select:none}
.marquee.draggable::-webkit-scrollbar{display:none}
.marquee.draggable .marquee-track{animation:none;will-change:transform}
.marquee.draggable .duplicate{display:flex}
.marquee.draggable .profile{cursor:grab;user-select:none;-webkit-user-drag:none}
.marquee.draggable img{pointer-events:none;-webkit-user-drag:none}
.marquee.draggable.dragging,.marquee.draggable.dragging .profile{cursor:grabbing}

