/* Mouvement progressif : aucun contenu essentiel masqué sans JavaScript. */
.title-line{display:block;overflow:hidden;padding-bottom:.09em;margin-bottom:-.09em}.title-line>span,.title-line>em{display:block}.motion-on .hero.entering .title-line>span,.motion-on .hero.entering .title-line>em{animation:title-arrival .95s cubic-bezier(.16,1,.3,1) both}.motion-on .hero.entering .title-line:nth-child(2)>span{animation-delay:.1s}.motion-on .hero.entering .title-line:nth-child(3)>span{animation-delay:.2s}.motion-on .hero.entering .title-line:nth-child(4)>em{animation-delay:.3s}.motion-on .hero.entering .hero-description,.motion-on .hero.entering .hero-actions{animation:soft-arrival .8s .4s both}.motion-on .hero.entering .creative-stage{animation:stage-arrival 1.2s .2s cubic-bezier(.16,1,.3,1) both}
@keyframes title-arrival{from{transform:translateY(112%) rotate(2deg)}to{transform:translateY(0) rotate(0)}}@keyframes soft-arrival{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes stage-arrival{from{opacity:0;transform:translateY(65px) rotate(5deg) scale(.9)}to{opacity:1;transform:translateY(0) rotate(0) scale(1)}}
.stage-light{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at var(--light-x,60%) var(--light-y,45%),#c3a4fa24,transparent 60%);transform:scale(1.3)}.creative-stage{isolation:isolate}.creative-stage>a,.creative-stage>button{transition:transform .85s cubic-bezier(.22,1,.36,1),filter .6s,box-shadow .6s;transform-origin:center}.creative-stage[data-world=web] .stage-web{transform:translate(7%,5%) rotate(0) scale(1.04);z-index:5;box-shadow:0 30px 90px #000b}.creative-stage[data-world=web] .stage-film{transform:translate(22%,-10%) rotate(14deg) scale(.85);filter:brightness(.55)}.creative-stage[data-world=web] .stage-restaurant{transform:translate(4%,26%) rotate(-5deg) scale(.9);filter:brightness(.65)}.creative-stage[data-world=film] .stage-film{transform:translate(-65%,28%) rotate(-3deg) scale(1.3);z-index:5;box-shadow:0 30px 90px #000b}.creative-stage[data-world=film] .stage-web{transform:translate(-8%,-8%) rotate(-13deg) scale(.85);filter:brightness(.5)}.creative-stage[data-world=film] .stage-restaurant{transform:translate(15%,22%) rotate(8deg) scale(.85);filter:brightness(.6)}.creative-stage[data-world=restaurant] .stage-restaurant{transform:translate(0,-88%) rotate(-2deg) scale(1.15);z-index:5;box-shadow:0 30px 90px #000b}.creative-stage[data-world=restaurant] .stage-web{transform:translate(-4%,-8%) rotate(-10deg) scale(.85);filter:brightness(.5)}.creative-stage[data-world=restaurant] .stage-film{transform:translate(15%,10%) rotate(12deg) scale(.8);filter:brightness(.55)}.creative-stage>a:focus-visible,.creative-stage>button:focus-visible{z-index:8!important;filter:none!important}.stage-selector{position:absolute;left:0;right:0;bottom:-48px;z-index:9;text-align:center}.stage-selector>p:not(.sr-only){font:8px monospace;letter-spacing:2px;color:#a9a1b6;margin-bottom:8px}.stage-selector>div{display:inline-flex;border:1px solid #696170;border-radius:30px;padding:4px;background:#18151dcc;backdrop-filter:blur(12px);max-width:100%}.stage-selector button{min-height:40px;border-radius:24px;background:transparent;padding:9px 17px;color:#b9b2c2;font-size:11px;transition:background .25s,color .25s}.stage-selector button[aria-pressed=true]{background:var(--lavender);color:#211a2c}.motion-toggle{display:flex;align-items:center;gap:10px;background:transparent;border:1px solid #626859;border-radius:24px;padding:8px 13px;min-height:36px;color:#c0c5b9;font:9px monospace;cursor:pointer}.motion-toggle>span{color:var(--accent)}.hero-bottom{align-items:center}.hero-bottom .hero-location{margin-left:auto;margin-right:20px}.motion-on .hero:not(.entering) .creative-stage{transform:translateY(var(--stage-scroll,0px))}.motion-on .creative-stage[data-world=overview] .stage-web{transform:translate3d(var(--stage-x,0px),var(--stage-y,0px),0) rotate(-6deg)}.motion-on .creative-stage[data-world=overview] .stage-film{transform:translate3d(calc(var(--stage-x,0px) * -1),calc(var(--stage-y,0px) * -1),0) rotate(8deg)}.motion-on .creative-stage[data-world=overview] .stage-restaurant{transform:translate3d(calc(var(--stage-x,0px) * .5),calc(var(--stage-y,0px) * .5),0) rotate(4deg)}
.discipline-bar.is-marquee{display:block;overflow:hidden;padding:0;position:relative}.discipline-track{display:flex;width:max-content}.discipline-group{display:flex;align-items:center;gap:45px;padding:24px 22.5px;white-space:nowrap}.discipline-group i{font-size:20px}.motion-on .is-marquee .discipline-track{animation:studio-strip 35s linear infinite}.is-marquee:hover .discipline-track,.is-marquee:focus-within .discipline-track{animation-play-state:paused}.motion-off .is-marquee{overflow-x:auto}.motion-off .discipline-group[aria-hidden=true]{display:none}.motion-on.page-inactive .discipline-track{animation-play-state:paused}@keyframes studio-strip{to{transform:translateX(-50%)}}
.motion-on .reveal-arrival{animation:section-arrival .85s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--reveal-delay,0ms)}@keyframes section-arrival{from{opacity:.2;transform:translateY(38px)}to{opacity:1;transform:translateY(0)}}.motion-on .project-visual .portfolio-browser{transform:perspective(1000px) rotateX(var(--card-rx,3deg)) rotateY(var(--card-ry,-4deg)) rotateZ(var(--card-rz,-2deg)) translateY(var(--card-y,0px));transition:transform .35s ease-out;will-change:auto}.motion-on .project-visual:hover .portfolio-browser{will-change:transform}.project-visual .visual-bottom>span{transition:transform .35s}.project-visual:hover .visual-bottom>span{transform:translate(3px,-3px)}.project-visual:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at var(--shine-x,50%) var(--shine-y,40%),#ffffff30,transparent 55%);opacity:0;pointer-events:none;z-index:4;transition:opacity .3s}.motion-on .project-visual:hover:before{opacity:1}.motion-on .project.filter-arrival{animation:section-arrival .5s cubic-bezier(.16,1,.3,1) both}.button-light{position:relative;overflow:hidden;isolation:isolate}.button-light:after{content:'';position:absolute;inset:-50%;background:linear-gradient(110deg,transparent 40%,#ffffff66 50%,transparent 60%);transform:translateX(-100%);pointer-events:none}.motion-on .button-light:hover:after{animation:button-sheen .65s ease-out}@keyframes button-sheen{to{transform:translateX(100%)}}.service-list summary .service-num{transition:transform .35s}.service-list summary:hover .service-num{transform:translateX(5px)}.motion-on .service-list details[open] .service-body{animation:soft-arrival .45s ease-out}.reel-play{transition:transform .35s,background .35s}.reel-frame>button:hover .reel-play{transform:scale(1.12);background:#ffffff28}.motion-on .footer-brand:hover{color:var(--accent);transition:color .4s}.motion-off *,.motion-off *:before,.motion-off *:after{animation:none!important;transition:none!important}.motion-off{scroll-behavior:auto}.motion-off .creative-stage{transform:none!important}
@media(max-width:1100px){.hero{padding-bottom:145px}.hero-bottom .hero-location{display:none}.stage-selector{bottom:-53px}.stage-selector button{padding:9px 13px}.creative-stage[data-world=film] .stage-film{transform:translate(-64%,24%) rotate(-3deg) scale(1.18)}}
@media(max-width:760px){.hero{padding-bottom:82px}.creative-stage{margin-bottom:78px}.stage-selector{bottom:-57px}.stage-selector button{min-height:44px;padding:9px 15px}.motion-toggle{min-height:44px;font-size:8px;padding:8px 12px}.hero-bottom>a{font-size:7px}.hero-bottom{gap:15px}.discipline-group{gap:30px;padding:21px 15px}.motion-on .hero:not(.entering) .creative-stage{transform:none}.creative-stage[data-world=web] .stage-web{transform:translate(6%,6%) rotate(0) scale(1.02)}.creative-stage[data-world=web] .stage-film{transform:translate(12%,-5%) rotate(12deg) scale(.82)}.creative-stage[data-world=film] .stage-film{transform:translate(-65%,24%) rotate(-3deg) scale(1.16)}.creative-stage[data-world=restaurant] .stage-restaurant{transform:translate(0,-100%) rotate(-2deg) scale(1.12)}.stage-stamp{display:none}}
@media(max-width:380px){.stage-selector button{font-size:10px;padding:9px 11px}.creative-stage{margin-bottom:85px}.stage-selector{bottom:-65px}.motion-toggle{font-size:7px}.hero-bottom>a{font-size:6px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}html{scroll-behavior:auto}.creative-stage{transform:none!important}.discipline-bar.is-marquee{overflow-x:auto}.discipline-group[aria-hidden=true]{display:none}}
