header{position:fixed;top:0;height:76px;background:rgba(14,17,20,.88);backdrop-filter:blur(18px);z-index:10;padding-inline:5%}
nav{gap:26px;align-items:center}nav a{padding-block:12px;color:#c7cdd0;font-size:14px}nav a:hover,nav a[aria-current]{color:#a2d8ec}nav a[aria-current]{box-shadow:0 1px #a2d8ec}
.hero{min-height:780px;padding-top:140px}.hero h1{font-size:clamp(74px,8.6vw,138px);line-height:.94;letter-spacing:-.065em;font-weight:600;margin:28px 0}.hero-discipline{display:block;font-size:clamp(22px,2.3vw,36px);font-family:Georgia,serif;font-style:italic;letter-spacing:-.025em;line-height:1.4;color:var(--blue);font-weight:400;margin-top:23px}.hero>img{object-position:65% center}.hero p{max-width:440px}.hero .eyebrow{font-size:13px;letter-spacing:1.7px}.hero:before{background:linear-gradient(90deg,#080b10e0 0%,#080b1060 48%,transparent 80%),linear-gradient(0deg,#0e1114 0%,transparent 75%)}
.section{padding-block:105px}.sectionhead>p{font-size:16px;max-width:365px}.caption p{font-size:16px;line-height:1.7}.caption h3{font-size:27px}.caption .role{font-size:14px}.films{row-gap:25px}.number{font-size:13px}.social p{font-size:16px}.social{grid-template-columns:1fr 1.7fr;gap:45px}.verticals h4{font-size:16px;line-height:1.35}.verticals p{font-size:14px}
.film-cover,.film-still{position:relative;display:block;width:100%;aspect-ratio:16/9;background:#1b232b;overflow:hidden;border:0;padding:0;color:#fff}.film-cover{cursor:pointer;text-align:left}.film-cover>img,.film-still>img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease,filter .5s ease}.film-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0009,transparent 55%);pointer-events:none}.film-cover:hover>img{transform:scale(1.025);filter:brightness(.85)}.play-icon{position:absolute;left:24px;bottom:23px;width:50px;height:50px;display:grid;place-items:center;border:1px solid #ffffffa0;border-radius:50%;background:#0e11142b;backdrop-filter:blur(5px);font-size:16px;padding-left:3px;z-index:1;transition:background .2s}.film-cover:hover .play-icon{background:#f4f2ed;color:#0e1114}.watch-label{position:absolute;right:24px;bottom:39px;font-size:13px;letter-spacing:.6px;z-index:1}.feature .film-cover{aspect-ratio:21/9}.verticals .film-cover{aspect-ratio:9/16}.verticals .watch-label{display:none}.verticals .play-icon{left:16px;bottom:16px;width:42px;height:42px}.film-still>img{object-fit:contain}.film-cover:focus-visible{outline-offset:5px}
.pair{gap:12px}.pair figcaption{font-size:13px}.workflow p{font-size:16px}.systems .intro{max-width:650px}.about p{font-size:18px;line-height:1.8}.about>img{object-position:center 30%;max-height:690px}.footer{font-size:14px}.contact .email{display:inline-block;overflow-wrap:anywhere}
.film-dialog{width:min(1100px,94vw);max-height:94svh;border:1px solid #35414a;padding:22px;background:#10161c;color:#f4f2ed;overflow:auto}.film-dialog::backdrop{background:#03070bea;backdrop-filter:blur(9px)}.player-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:20px}.player-heading h2{font-size:20px;font-weight:400;margin:0;line-height:1.4}.close-player{border:1px solid #69757d;background:none;color:inherit;padding:10px 14px;font-size:14px;cursor:pointer;white-space:nowrap}.player-mount iframe{width:100%;aspect-ratio:16/9;border:0;display:block}.film-dialog.is-vertical{width:min(460px,94vw)}.film-dialog.is-vertical .player-mount iframe{aspect-ratio:9/16;max-height:70svh}.youtube-link{display:inline-block;margin-top:16px;font-size:14px;text-decoration:underline;text-underline-offset:4px}body.video-open{overflow:hidden}
@media(min-width:1700px){.section,.contact{padding-inline:max(5%,calc((100% - 1530px)/2))}}
@media(max-width:1000px){nav{gap:17px}.hero h1{font-size:100px}.hero{height:auto;min-height:790px}.social{grid-template-columns:1fr;gap:28px}.social>div:first-child{max-width:650px}.social p{max-width:600px}.verticals{max-width:780px}}
@media(max-width:760px){html{scroll-padding-top:123px}header{height:108px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:11px;padding-inline:6%}.logo{font-size:21px}nav{width:100%;justify-content:space-between;gap:12px;overflow-x:auto;scrollbar-width:none}nav a,nav a:nth-child(2){display:block;white-space:nowrap;font-size:13px;padding:4px 0 7px}nav a:last-child{display:none}.hero{min-height:790px;padding-top:330px;height:auto;padding-inline:6%;padding-bottom:48px}.hero>img{object-position:64% top}.hero:before{background:linear-gradient(0deg,#0e1114 0%,#080b10c9 36%,#080b1030 75%)}.hero h1{font-size:clamp(70px,17vw,108px);margin:20px 0}.hero-discipline{font-size:25px;max-width:340px;margin-top:20px}.hero .eyebrow{font-size:12px;letter-spacing:1px}.hero p{font-size:16px;max-width:440px}.actions{gap:22px}.button{padding:16px 19px;gap:15px}.section{padding-block:70px}.sectionhead{margin-bottom:28px}.feature .film-cover{aspect-ratio:16/9}.caption{padding-top:18px;padding-bottom:30px}.caption h3{font-size:25px}.caption p{font-size:16px}.caption .tag{font-size:12px;white-space:normal}.play-icon{width:43px;height:43px;left:16px;bottom:16px}.watch-label{right:16px;bottom:30px}.verticals{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:18px;padding:3px 3px 20px;scrollbar-color:#617782 #1b232b}.verticals article{flex:0 0 76%;scroll-snap-align:start;min-width:0}.verticals .film-cover{max-height:550px}.verticals .watch-label{display:block}.social{margin-top:20px}.about p{font-size:17px}.about>img{max-height:500px}.pair img{height:185px}.film-dialog{padding:16px}.player-heading h2{font-size:17px}.contact h2{font-size:clamp(44px,10vw,70px)}.footer{font-size:13px}.footer div{gap:20px}.step-copy h3{font-size:24px}}
@media(prefers-reduced-motion:reduce){.film-cover>img,.play-icon{transition:none}.film-cover:hover>img{transform:none}}
.contact-details{display:flex;gap:26px;align-items:center;flex-wrap:wrap;margin-top:26px}.phone{font-size:22px;color:#cbd7db;padding:8px 0;border-bottom:1px solid #8196a0}.contact-instagram{font-size:18px;color:#cbd7db;padding:8px 0}.workflow-video{height:235px;aspect-ratio:auto}.workflow-video>img{height:100%}.workflow-video .watch-label{bottom:29px;right:15px;font-size:12px}.workflow-video .play-icon{width:36px;height:36px;left:12px;bottom:18px;font-size:12px}.player-mount video{display:block;width:100%;max-height:72svh;aspect-ratio:16/9;background:#000}.film-dialog.is-vertical .player-mount video{aspect-ratio:9/16;max-height:70svh}.youtube-link[hidden]{display:none}@media(max-width:760px){.workflow-video{height:185px}.workflow-video .watch-label{display:none}.contact-details{gap:20px}.phone{font-size:20px}}
.contact .contact-details{display:grid;grid-template-columns:minmax(0,1fr);justify-items:start;gap:12px}.contact-linkedin{font-size:18px;color:#cbd7db;padding:8px 0}.footer div{flex-wrap:wrap}

/* Quiet motion, with the films remaining the main event. */
.motion-enabled :is(.sectionhead,.feature,.films>article,.social>div:first-child,.verticals>article,.systems>.eyebrow,.systems>h2,.systems>.intro,.workflow,.process>li,.about>img,.about>div,.contact>.eyebrow,.contact>h2,.contact>.email,.contact-details,.hero .eyebrow,.hero h1,.hero p,.hero .actions):not([data-revealed]):not(:focus-within){opacity:0;transform:translateY(22px)}
.section-description{margin:18px 0 0;max-width:650px;font-size:16px;line-height:1.6;color:var(--muted)}
header{transition:background .3s ease,box-shadow .3s ease}
header.is-scrolled{background:rgba(14,17,20,.96);box-shadow:0 8px 30px #0002}
header::after{content:"";position:absolute;bottom:-1px;left:0;width:100%;height:2px;background:var(--blue);transform:scaleX(var(--reading-progress,0));transform-origin:left;pointer-events:none}
nav a{position:relative;transition:color .2s ease}
nav a[aria-current]{box-shadow:none}
nav a::after{content:"";position:absolute;left:0;right:0;bottom:4px;height:1px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
nav a[aria-current]::after,nav a:focus-visible::after{transform:scaleX(1)}
.button{transition:background .25s ease,transform .25s ease,box-shadow .25s ease}
.button span{display:inline-block;transition:transform .25s ease}
.textlink,.email,.phone,.contact-instagram,.contact-linkedin,.footer a{transition:color .25s ease,border-color .25s ease}
.film-cover{border-radius:3px}
.film-cover>img{transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .5s ease}
.play-icon{transition:background .25s ease,color .25s ease,transform .3s ease}
.watch-label{transition:transform .3s ease}
.step-num{transition:background .25s ease,color .25s ease,box-shadow .25s ease}
.film-dialog[open]{animation:player-enter .25s ease-out}
@keyframes player-enter{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
@media(hover:hover) and (pointer:fine){
  nav a:hover::after{transform:scaleX(1)}
  .button:hover{background:var(--blue);transform:translateY(-3px);box-shadow:0 8px 25px #0003}
  .button:hover span{transform:translateY(3px)}
  .textlink:hover,.email:hover,.phone:hover,.contact-instagram:hover,.contact-linkedin:hover,.footer a:hover{color:var(--blue);border-color:var(--blue)}
  .systems .textlink:hover{color:#253e49;border-color:#253e49}
  .film-cover:hover>img{transform:scale(1.045)}
  .film-cover:hover .play-icon{transform:scale(1.08)}
  .film-cover:hover .watch-label{transform:translateX(-4px)}
  .process li:hover .step-num{background:#253e49;color:#f4f2ed;box-shadow:0 0 0 5px #253e4910}
}
@media(prefers-reduced-motion:reduce){
  .motion-enabled [data-reveal],.motion-enabled .hero :is(.eyebrow,h1,p,.actions){opacity:1!important;transform:none!important}
  *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .button:hover,.button:hover span,.film-cover:hover>img,.film-cover:hover .play-icon,.film-cover:hover .watch-label{transform:none}
}
