/* Ruse motion system: light, framing, depth and a deliberate cut between scenes. */
.page-progress{position:fixed;inset:0 0 auto;height:2px;z-index:90;pointer-events:none}.page-progress>span{display:block;width:100%;height:100%;background:var(--red);transform:scaleX(0);transform-origin:left}
.motion-tools{position:fixed;right:24px;bottom:24px;z-index:30}.motion-tools button{background:#171719bb;backdrop-filter:blur(16px);border-color:#ffffff23}.motion-tools #chapter-indicator{display:none}.motion-paused .hero-copy>*{animation:none!important;opacity:1}
.header-actions,.dialog-actions{display:flex;align-items:center;gap:30px}.language-switch{display:flex;align-items:center;gap:1px;font-size:10px;color:#62625f;white-space:nowrap}.language-switch button{background:transparent;padding:9px 7px;min-height:34px;color:#72726e;font-size:10px;letter-spacing:.04em;transition:color .25s}.language-switch button[aria-pressed=true]{color:var(--fg)}.language-switch button:hover{color:#fff}.language-switch>span{font-size:9px;color:#454542}
.header-contact>span:first-child{font-size:12px;color:var(--fg)}.header-contact:hover>span:first-child{transform:none}.text-link>span:first-child{font-size:12px;transform:none}.desktop-nav a{position:relative}.desktop-nav a:after{content:"";height:1px;background:var(--red);position:absolute;left:0;right:0;bottom:-5px;transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}.desktop-nav a:hover:after,.desktop-nav a[aria-current=true]:after{transform:scaleX(1)}
.js-motion .hero-eyebrow{animation:hero-appear .9s var(--ease) both}.js-motion h1{animation:hero-appear 1.3s .1s var(--ease) both}.js-motion .hero-copy>p{animation:hero-appear 1.2s .2s var(--ease) both}.js-motion .hero-copy>.text-link{animation:hero-appear 1.2s .3s var(--ease) both}.js-motion .lens-fallback{animation:optic-float 12s ease-in-out infinite}.fallback-coating{position:absolute;inset:19%;border-radius:50%;pointer-events:none;background:conic-gradient(from 30deg,transparent 0deg,#c5d5ff13 60deg,transparent 120deg,transparent 260deg,#b09eff10 300deg,transparent 360deg);mix-blend-mode:screen;animation:coating-rotate 22s linear infinite}
.word{display:inline-block;overflow:hidden;vertical-align:top;line-height:inherit;padding-bottom:.06em;margin-bottom:-.06em}.word>span{display:inline-block;transform:translateY(0);white-space:pre}.js-motion .reveal .word>span{transform:translateY(112%);transition:transform 1.15s var(--ease);transition-delay:calc(var(--word-index,0)*45ms)}.js-motion .reveal.visible .word>span{transform:translateY(0)}.section-heading{position:relative}.section-heading:after{content:"";position:absolute;height:1px;left:0;right:0;bottom:-24px;background:linear-gradient(90deg,#ffffff27,transparent);transform:scaleX(0);transform-origin:left;transition:transform 1.4s .15s var(--ease)}.section-heading.visible:after{transform:scaleX(1)}
.featured-project{margin-bottom:52px;perspective:1400px}.featured-work{display:grid;grid-template-columns:1fr .82fr;width:100%;min-height:580px;padding:56px 64px 64px;background:#141416;border:1px solid #ffffff12;border-radius:8px;position:relative;overflow:hidden;text-align:left;isolation:isolate;transform-style:preserve-3d;--tilt-x:0deg;--tilt-y:0deg;--light-x:70%;--light-y:40%}.feature-atmosphere{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at var(--light-x) var(--light-y),#60626d22,transparent 58%),linear-gradient(115deg,#151517,#0c0c0e 75%)}.featured-work:after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 80% 0%,#ffffff0a,transparent 40%);border-radius:inherit}
.feature-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;position:relative;z-index:2;max-width:440px}.feature-eyebrow{display:flex;gap:9px;align-items:center;color:#9a9a95;font-size:9px}.feature-title{font-size:clamp(76px,8.3vw,140px);font-weight:500;letter-spacing:-.07em;line-height:1.03;margin-top:25px;display:block}.feature-title>span{color:var(--red)}.feature-statement{font-size:clamp(25px,2.8vw,47px);letter-spacing:-.045em;line-height:1.1;margin-top:22px;color:#c8c7c1}.feature-description{font-size:12px;color:#7c7d7b;line-height:1.8;max-width:275px;margin-top:19px}.feature-watch{margin-top:28px;display:flex;align-items:center;gap:12px;font-size:12px}.feature-play{width:36px;height:36px;border:1px solid #ffffff35;border-radius:50%;display:grid;place-items:center;font-size:9px;padding-left:2px;transition:background .3s,color .3s,transform .3s}.featured-work:hover .feature-play{background:var(--fg);color:#111;transform:scale(1.07)}.feature-duration{font-size:9px;color:#777;margin-left:13px;font-variant-numeric:tabular-nums}
.feature-stage{display:flex;flex-direction:column;align-items:center;justify-content:center;perspective:1100px;padding:0 30px;position:relative}.film-screen{display:block;position:relative;aspect-ratio:512/910;height:440px;max-width:100%;background:#020203;overflow:hidden;border-radius:4px;box-shadow:30px 25px 80px #0009;transform:rotateY(calc(-9deg + var(--tilt-y))) rotateX(calc(3deg + var(--tilt-x)));transition:transform .65s var(--ease);border:1px solid #ffffff1b}.film-screen img,.film-screen video{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.film-screen video{opacity:0;transition:opacity .7s}.film-screen.playing video{opacity:1}.feature-screen-label{display:flex;justify-content:space-between;align-items:center;width:247px;max-width:100%;font-size:8px;letter-spacing:.12em;color:#64645f;margin-top:18px;padding:0 4px}.screen-sweep{position:absolute;inset:-40% -120%;width:70%;background:linear-gradient(100deg,transparent,#ffffff10,transparent);transform:rotate(20deg) translateX(-100%);pointer-events:none}.featured-project.visible .screen-sweep{animation:film-sweep 1.9s .6s var(--ease) both}.feature-bottom{position:absolute;left:64px;bottom:27px;right:44px;display:flex;align-items:center;justify-content:space-between;font-size:8px;letter-spacing:.14em;color:#666}.feature-arrow{font-size:24px;line-height:1;color:#aaa;transition:transform .4s}.featured-work:hover .feature-arrow{transform:translate(3px,-3px)}
.project-visual{--tilt-x:0deg;--tilt-y:0deg;transform:perspective(1200px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y));transition:transform .6s var(--ease),box-shadow .6s;will-change:auto}.project-visual:hover{box-shadow:0 20px 50px #0005}.project-visual:after{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at var(--light-x,50%) var(--light-y,20%),#fff1,transparent 60%);opacity:0;transition:opacity .5s;pointer-events:none}.project-visual:hover:after{opacity:1}.js-motion .project.reveal{clip-path:inset(12% 0 0 0);transition:clip-path 1.25s var(--ease),opacity 1s var(--ease),transform 1.1s var(--ease)}.js-motion .project.reveal.visible{clip-path:inset(0)}
.service-image{position:sticky;top:45px;box-shadow:0 0 0 1px #ffffff0a;transition:box-shadow .9s}.service-image img{transition:opacity .6s,transform 1.4s var(--ease);object-position:center;filter:none}.service-image[data-service="4"]{box-shadow:0 0 60px #ee513d0c}.service-scan{position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,transparent,#fff9,transparent);z-index:2;opacity:0;box-shadow:0 0 30px #fff4;pointer-events:none}.service-image.changing .service-scan{animation:viewfinder-scan .85s var(--ease)}.service-image.changing img{animation:frame-change .7s var(--ease)}.service-viewfinder{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#ffffff60;font-size:23px;font-weight:200;z-index:2}.service-list summary{position:relative;transition:padding .4s,color .4s}.service-list summary:hover{padding-left:7px}.service-list h3{color:#aaa;transition:color .4s}.service-list details[open] h3,.service-list summary:hover h3{color:var(--fg)}.service-list details[open] .service-number{color:var(--red)}.service-list details[open] .service-content{animation:disclosure-enter .6s var(--ease)}.service-content p{max-width:450px}.service-list details{position:relative}.service-list details:before{content:"";height:1px;position:absolute;inset:0 auto auto 0;width:0;background:linear-gradient(90deg,var(--red),#ee513d10);transition:width .8s var(--ease)}.service-list details[open]:before{width:100%}
.studio-contact-sheet{display:grid;grid-template-columns:1fr .84fr 1.2fr;gap:26px;align-items:center;margin-top:75px;margin-bottom:45px;padding:22px 0;perspective:1400px}.contact-frame{margin:0;position:relative;background:#101011;padding:7px 7px 12px;box-shadow:0 12px 30px #0002;transform:translateY(var(--parallax-y,0px)) rotate(var(--frame-angle,-3deg));transition:box-shadow .5s;overflow:hidden;--frame-angle:-3deg}.contact-frame:nth-child(2){--frame-angle:3deg}.contact-frame:nth-child(3){--frame-angle:-1deg}.contact-frame:hover{box-shadow:0 18px 45px #0004}.contact-frame>img{height:240px;object-fit:cover;transition:transform 1.4s var(--ease)}.contact-frame:nth-child(2)>img{height:285px}.contact-frame:nth-child(3)>img{height:200px}.contact-frame:hover>img{transform:scale(1.045)}.contact-frame figcaption{display:flex;justify-content:space-between;gap:8px;font-size:7px;letter-spacing:.05em;color:#8f8e87;margin-top:11px;padding:0 4px}.about-lower{margin-top:55px}.about-statement .word>span{transition-duration:1.35s}.contact-circle{position:relative;border-color:#ffffff10}.contact-circle>span{display:block}.contact-orbit{position:absolute;inset:-1px;width:calc(100% + 2px);height:calc(100% + 2px);transform:rotate(-90deg);pointer-events:none}.contact-orbit circle{fill:none;stroke:var(--red);stroke-width:.8;stroke-dasharray:296;stroke-dashoffset:296;transition:stroke-dashoffset 1.6s .3s var(--ease)}.footer-top.visible .contact-orbit circle{stroke-dashoffset:0}.footer-email{background-image:linear-gradient(var(--fg),var(--fg));background-size:0 1px;background-position:left bottom;background-repeat:no-repeat;transition:background-size .5s,color .5s}.footer-email:hover{background-size:100% 1px;color:var(--fg)}
.dialog-close>span:first-child{font-size:12px}.project-dialog[open] .dialog-bar{animation:dialog-bar-enter .6s var(--ease) both}.project-dialog[open] .dialog-inner>.eyebrow{animation:dialog-content-enter .7s .05s var(--ease) both}.project-dialog[open] #dialog-title{animation:dialog-content-enter .9s .1s var(--ease) both}.project-dialog[open] .dialog-description{animation:dialog-content-enter .9s .2s var(--ease) both}.project-dialog[open] .dialog-media{animation:dialog-media-enter 1.15s .18s var(--ease) both}.dialog-media video{min-height:250px}.dialog-approach{border-top:1px solid var(--line);margin-top:35px;padding-top:30px;display:flex;justify-content:space-between;gap:30px}.dialog-approach>.eyebrow{color:#777}.dialog-approach>p{font-size:13px;color:#aaa}.dialog-stills{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:45px}.dialog-stills:empty{display:none}.dialog-stills figure{margin:0;overflow:hidden;border-radius:4px;animation:dialog-media-enter 1.2s .2s var(--ease) both}.dialog-stills img{width:100%;height:340px;object-fit:cover;transition:transform .9s var(--ease)}.dialog-stills img:hover{transform:scale(1.03)}.dialog-stills figcaption{font-size:8px;color:#71716d;margin-top:13px;letter-spacing:.12em}.project-dialog[data-project="voleur"] #dialog-type{color:var(--red)}
.motion-paused *,.motion-paused *:before,.motion-paused *:after{animation-play-state:paused!important}.motion-paused .project-visual,.motion-paused .film-screen{transform:none!important}.motion-paused .contact-frame{transform:rotate(var(--frame-angle))!important}
@keyframes hero-appear{from{opacity:0;transform:translateY(25px);filter:blur(4px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes optic-float{0%,100%{transform:translateY(0) rotate(-20deg) rotateY(-25deg)}50%{transform:translateY(-12px) rotate(-16deg) rotateY(-19deg)}}
@keyframes coating-rotate{to{transform:rotate(360deg)}}
@keyframes film-sweep{0%{transform:rotate(20deg) translateX(-30%);opacity:0}30%{opacity:1}100%{transform:rotate(20deg) translateX(420%);opacity:0}}
@keyframes viewfinder-scan{0%{top:0;opacity:0}20%{opacity:.65}100%{top:100%;opacity:0}}
@keyframes frame-change{from{opacity:.3;transform:scale(1.04)}to{opacity:1;transform:scale(1)}}
@keyframes disclosure-enter{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
@keyframes dialog-bar-enter{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
@keyframes dialog-content-enter{from{opacity:0;transform:translateY(25px);filter:blur(3px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes dialog-media-enter{from{opacity:0;clip-path:inset(5% 0 0);transform:translateY(22px)}to{opacity:1;clip-path:inset(0);transform:none}}
@media(max-width:1100px){.header-actions{gap:18px}.header-contact>span:first-child{font-size:11px}.desktop-nav{gap:22px;padding:12px 23px}.featured-work{padding:42px 45px 60px;min-height:520px}.feature-stage{padding:0 15px}.film-screen{height:380px}.feature-title{font-size:95px}.feature-statement{font-size:35px}.feature-bottom{left:45px;right:35px}.feature-description{max-width:220px}.studio-contact-sheet{gap:20px}.contact-frame>img{height:190px}.contact-frame:nth-child(2)>img{height:230px}.contact-frame:nth-child(3)>img{height:165px}.contact-frame figcaption{font-size:6px;flex-wrap:wrap}}
@media(max-width:800px){.header-contact{display:none}.header-actions{gap:16px}.service-layout{gap:7%}.service-list summary{gap:14px}.service-list h3{font-size:25px}.feature-title{font-size:77px}.feature-statement{font-size:29px}.feature-description{font-size:11px}.feature-watch{font-size:11px;gap:9px}.feature-duration{margin-left:3px}.featured-work{min-height:470px;padding:35px 35px 60px}.film-screen{height:340px}.feature-bottom{left:35px}.feature-screen-label{width:191px}}
@media(max-width:680px){.header-actions{gap:10px}.language-switch{gap:0}.language-switch button{font-size:9px;padding:10px 7px;min-height:36px}.site-header{gap:8px}.brand{min-width:85px}.mobile-menu>a>span:first-child{font-size:inherit;letter-spacing:inherit;color:inherit}.text-link>span:first-child{font-size:11px}.featured-project{margin-bottom:37px}.featured-work{grid-template-columns:1fr .83fr;gap:10px;padding:28px 20px 55px;min-height:355px}.feature-eyebrow{font-size:6px;letter-spacing:.08em;gap:6px}.feature-eyebrow .rec-dot{width:4px;height:4px}.feature-title{font-size:clamp(43px,12.7vw,65px);margin-top:19px}.feature-statement{font-size:clamp(18px,5.5vw,28px);line-height:1.14;margin-top:16px}.feature-description{display:none}.feature-watch{font-size:9px;margin-top:23px;gap:7px;white-space:nowrap}.feature-play{width:27px;height:27px;font-size:7px}.feature-duration{display:none}.feature-stage{padding:0;perspective:750px}.film-screen{height:auto;width:100%;max-height:320px;box-shadow:14px 15px 25px #0008}.feature-screen-label{width:100%;font-size:6px;letter-spacing:.06em;margin-top:12px;padding:0}.feature-screen-label .rec-dot{width:4px;height:4px}.feature-bottom{left:20px;right:20px;bottom:18px;font-size:7px;letter-spacing:.09em}.feature-arrow{font-size:20px}.feature-copy{min-width:0}.project-visual{transform:none!important}.section-heading:after{bottom:-18px}.project-grid{margin-top:0}.service-image{position:relative;top:0;aspect-ratio:1.05}.service-image img{object-position:center 30%}.service-viewfinder{font-size:18px}.service-list h3{font-size:24px;min-width:0}.service-content p{font-size:12px}.service-list summary:hover{padding-left:0}.studio-contact-sheet{grid-template-columns:1fr 1fr;gap:16px;margin-top:38px;margin-bottom:25px;padding:12px 3px;overflow:hidden}.contact-frame{padding:5px 5px 10px;transform:rotate(var(--frame-angle))!important}.contact-frame>img,.contact-frame:nth-child(2)>img{height:175px}.contact-frame:nth-child(3){grid-column:1/-1;max-width:90%;justify-self:center;margin-top:3px}.contact-frame:nth-child(3)>img{height:auto;aspect-ratio:1.8}.contact-frame figcaption{font-size:6px;margin-top:8px;gap:5px;letter-spacing:0}.about-lower{margin-top:30px}.dialog-actions{gap:16px}.dialog-actions .language-switch button{font-size:9px;padding:8px 5px}.dialog-close>span:first-child{font-size:11px}.dialog-close>span:last-child{font-size:29px}.dialog-approach{flex-direction:column;gap:13px;margin-top:28px;padding-top:23px}.dialog-approach>p{font-size:12px}.dialog-stills{gap:10px;margin-top:30px}.dialog-stills img{height:190px}.dialog-stills figcaption{font-size:6px;margin-top:9px;letter-spacing:.05em}.dialog-media video{min-height:200px}.contact-orbit circle{stroke-width:1.2}.motion-tools{bottom:25px}.motion-tools button{width:31px;height:31px}}
@media(prefers-reduced-motion:reduce){.word>span,.js-motion .reveal .word>span{transform:none!important}.page-progress{display:none}.project-visual,.film-screen{transform:none!important}.contact-frame{transform:rotate(var(--frame-angle))!important}.project-dialog[open] .dialog-media,.project-dialog[open] #dialog-title,.project-dialog[open] .dialog-description{opacity:1;transform:none;clip-path:none;filter:none}}
