@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--paper:#ffffff;--ink:#00001c;--muted:#00001cb3;--blue:#185de8;--line:#00001c26}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #185de8;outline-offset:6px}::selection{background:var(--blue);color:var(--ink)}.wrap{width:min(1380px,90%);margin:auto}.header{height:95px;width:90%;margin:auto;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.logo{font-family:'Space Grotesk',sans-serif;font-size:29px;font-weight:700;letter-spacing:-2px;white-space:nowrap}.logo span{font-size:21px;letter-spacing:-1.3px}.logo sup{font-size:12px;vertical-align:top;letter-spacing:0}.header nav{display:flex;gap:35px;align-items:center;font-size:13px}.nav-cta{background:var(--ink);color:white;border-radius:30px;padding:14px 22px}.nav-cta span{margin-left:18px}.menu{display:none}.hero{padding-top:39px}.hero-meta{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.5px}.hero-meta i{display:inline-block;width:7px;height:7px;background:#185de8;border-radius:50%;margin-right:8px}h1,h2,h3,p{margin:0}h1{font-family:'Space Grotesk',sans-serif;font-size:clamp(64px,10.6vw,160px);line-height:.93;letter-spacing:-.075em;font-weight:600;margin:48px 0 34px}h1 em{font-style:normal;color:#185de8}.last-line{display:flex;justify-content:space-between;align-items:center}.round-link{border-radius:50%;background:var(--blue);font-family:Arial;font-size:70px;letter-spacing:0;width:112px;height:112px;display:grid;place-items:center;transition:transform .3s}.round-link:hover{transform:rotate(35deg)}.hero-bottom{display:flex;align-items:center;justify-content:space-between;padding:4px 0 45px;gap:20px}.hero-bottom p{font-size:13px;line-height:1.7;color:var(--muted)}.hero-bottom strong{font-weight:500;color:var(--ink)}.text-link{font-size:13px;border-bottom:1px solid currentColor;padding-bottom:7px;display:inline-block}.text-link span{margin-left:35px}.tiny{font-size:9px;letter-spacing:1.5px}.feature-art{height:530px;background:#00001c;position:relative;overflow:hidden;color:#ffffff;padding:30px}.art-top,.art-caption,.art-stamp{position:absolute;font-size:10px;letter-spacing:2px;z-index:2}.art-top{top:25px;left:30px}.art-caption{bottom:28px;left:30px}.art-stamp{right:30px;bottom:28px;line-height:1.8}.orb{position:absolute;left:42%;top:-35%;width:70%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffffff 0,#185de8 20%,#00001c 43%,#00001c 64%,#00001c 73%);box-shadow:-30px 30px 80px #00001c77;transform:rotate(-25deg)}.orb:after{content:'';position:absolute;inset:14%;border:1px solid #ffffff55;border-radius:50%;box-shadow:0 0 0 35px #ffffff10,0 0 0 70px #ffffff0c}.art-title{position:relative;font-family:'Space Grotesk',sans-serif;font-size:150px;line-height:.83;letter-spacing:-10px;top:90px}.art-title em{font-style:normal;color:var(--blue)}.feature-foot{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;padding:17px 0}.ticker{margin-top:65px;padding:22px 0;border-block:1px solid var(--line);white-space:nowrap;overflow:hidden;font-size:clamp(30px,4vw,65px);font-family:'Space Grotesk',sans-serif;letter-spacing:-2px}.ticker span{color:#185de8;margin:0 30px}.section{padding-top:110px;padding-bottom:110px}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:42px}.eyebrow{font-size:10px;letter-spacing:2px;margin-bottom:25px}h2{font-family:'Space Grotesk',sans-serif;font-size:clamp(38px,4.6vw,68px);line-height:1.05;letter-spacing:-3px;font-weight:500}h2 span{color:#185de8}.section-head>p{font-size:13px;line-height:1.8;color:var(--muted)}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}.filters button{border:1px solid var(--line);border-radius:30px;background:transparent;padding:11px 22px;font-size:12px}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.filters sup{margin-left:8px;font-size:8px}.demo-note{font-size:11px;color:var(--muted);line-height:1.6;margin-bottom:24px}.projects{display:grid;grid-template-columns:1fr 1fr;gap:40px 24px}.project-card{background:none;padding:0;border:0;text-align:left;min-width:0}.project-art{aspect-ratio:1.28;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;flex-direction:column;transition:border-radius .3s}.project-card:hover .project-art{border-radius:50px 0 50px 0}.art-label{position:absolute;top:22px;left:24px;letter-spacing:2px;font-size:9px}.project-word{position:relative;font-family:'Space Grotesk',sans-serif;font-size:clamp(38px,6.5vw,94px);letter-spacing:-5px;z-index:1}.project-sub{position:relative;font-size:9px;letter-spacing:3px;margin-top:7px}.atlas{background:#ffffff;color:#00001c}.atlas:before{content:'';position:absolute;width:50%;height:80%;background:linear-gradient(120deg,#185de8,#ffffff 45%,#185de8);transform:rotate(-14deg);box-shadow:25px 30px 25px #00001c33}.object{background:#185de8;color:#00001c}.object:before{content:'';position:absolute;width:45%;height:68%;background:linear-gradient(140deg,#ffffff,#185de8);border-radius:50% 50% 5% 5%;transform:rotate(25deg);box-shadow:35px 25px 40px #00001c44}.object .project-word{font-family:Georgia,serif;font-weight:400}.forma{background:#ffffff;color:#00001c}.forma:before{content:'✳';position:absolute;font-size:350px;color:#185de8;right:-10px;transform:rotate(15deg)}.forma .project-word{font-style:italic}.soleil{background:#185de8;color:#00001c}.soleil:before{content:'';position:absolute;width:210px;height:210px;border:1px solid #00001c55;border-radius:50%;box-shadow:0 0 0 25px #00001c12,0 0 0 50px #00001c12,0 0 0 75px #00001c12}.soleil .project-word{font-family:Georgia,serif;font-style:italic;font-weight:400}.project-meta{display:flex;justify-content:space-between;padding-top:18px;align-items:center}.project-meta h3{font-size:15px;font-weight:500}.project-meta p{font-size:11px;color:var(--muted);margin-top:7px}.project-arrow{font-size:25px}.reels-section{background:#00001c;color:var(--paper)}.reels-section h2 span{color:var(--blue)}.reels-section .section-head>p{color:#ffffffcc}.reels{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.reel{aspect-ratio:9/16;position:relative;overflow:hidden;padding:20px;border-radius:4px;display:flex;flex-direction:column;justify-content:space-between;isolation:isolate}.reel:before{content:'';position:absolute;width:250px;height:250px;border:1px solid currentColor;border-radius:50%;top:25%;left:10%;opacity:.3;box-shadow:0 0 0 30px #ffffff0d,0 0 0 60px #ffffff0a;z-index:-1}.motion{background:#185de8;color:#00001c}.behind{background:#00001c;color:#ffffff}.product{background:#185de8;color:#ffffff}.social{background:#185de8;color:#00001c}.reel-number{font-size:8px;letter-spacing:1px;z-index:1}.reel-word{white-space:pre-line;font-family:'Space Grotesk',sans-serif;font-size:clamp(26px,3.2vw,50px);letter-spacing:-2px;line-height:1.02;margin-top:40px}.coming{font-size:8px;letter-spacing:2px;border:1px solid currentColor;border-radius:20px;padding:10px;align-self:flex-start;margin-top:auto;margin-bottom:18px}.reel-title{font-size:12px;font-weight:500}.reel-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}.play{border:1px solid white;background:#00001c99;color:white;border-radius:50%;width:60px;height:60px;margin:auto;backdrop-filter:blur(8px)}.reels-foot{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:28px}.reels-foot p{font-size:11px;color:#ffffffcc}.studio{display:grid;grid-template-columns:1fr 1fr;gap:100px}.studio-copy{font-size:14px;line-height:1.9;color:var(--muted);margin:28px 0;max-width:420px}.services{padding-top:42px}details{border-bottom:1px solid var(--line);padding:25px 0}summary{cursor:pointer;list-style:none;font-size:20px;display:flex;align-items:center;gap:20px}summary::-webkit-details-marker{display:none}summary span{font-size:10px;color:var(--muted)}summary b{margin-left:auto;font-size:23px;font-weight:400}details[open] summary b{transform:rotate(45deg)}details p{font-size:13px;color:var(--muted);line-height:1.8;padding:20px 35px 0}.contact{background:var(--blue)}.contact h2{font-size:clamp(50px,9.8vw,145px);letter-spacing:-.075em;line-height:.95}.contact em{font-style:normal;color:#ffffff}.contact h2 a{float:right;font-size:1.15em}.contact-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:45px;gap:20px}.contact-bottom p{font-size:13px;line-height:1.8}.pill{background:var(--ink);color:white;border-radius:40px;padding:20px 28px;font-size:13px}footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:35px}footer p,footer a:not(.logo),footer small{font-size:10px;color:var(--muted)}dialog{border:0;padding:40px;background:var(--paper);color:var(--ink);max-height:90dvh;width:min(800px,92%);border-radius:12px}dialog::backdrop{background:#00001ccc;backdrop-filter:blur(8px)}.close{position:absolute;right:10px;top:10px;z-index:3;width:35px;height:35px;border:0;background:var(--ink);color:white;border-radius:50%}.project-detail h2{font-size:30px;margin:25px 0 15px;letter-spacing:-1px}.project-detail p{line-height:1.8;font-size:14px}.project-detail .demo-note{font-size:11px;margin-top:15px}.video-detail h2{font-size:24px;letter-spacing:-1px;margin-bottom:20px}.video-detail video{display:block;max-height:70dvh;width:100%;background:#00001c}.modal-open{overflow:hidden}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip:focus{position:fixed;top:5px;left:5px;background:var(--blue);padding:15px;z-index:10}
@media(min-width:1500px){.header{max-width:1380px}}@media(max-width:900px){.tiny{display:none}.studio{gap:40px}.round-link{width:80px;height:80px;font-size:45px}.feature-art{height:430px}.art-title{font-size:125px}.reels{grid-template-columns:repeat(2,1fr)}.reel-word{font-size:55px}.reel{aspect-ratio:9/14}.section{padding-block:75px}footer{flex-wrap:wrap}footer p{flex-basis:50%}}@media(max-width:600px){.header{height:75px}.menu{display:block;border:0;background:transparent;font-size:24px}.header nav{display:none;position:absolute;top:74px;left:0;right:0;background:var(--paper);z-index:10;padding:25px 5%;border-bottom:1px solid var(--line);align-items:stretch}.header nav.is-open{display:flex;flex-direction:column;gap:24px}.hero-meta{font-size:8px;letter-spacing:1px}.hero-meta>span:last-child{display:none}.hero{padding-top:25px}h1{font-size:12vw;margin:35px 0 25px;letter-spacing:-.065em;line-height:1}.round-link{width:42px;height:42px;font-size:30px}.hero-bottom{align-items:flex-start;flex-direction:column;gap:22px;padding-bottom:30px}.hero-bottom p{font-size:12px}.feature-art{height:330px;padding:20px}.art-title{font-size:95px;letter-spacing:-7px;top:82px}.orb{width:110%;left:28%;top:0}.art-top{left:20px;font-size:8px}.art-caption{left:20px;font-size:8px;letter-spacing:1px}.art-stamp{font-size:7px;right:15px}.feature-foot{font-size:8px;line-height:1.6;gap:20px}.feature-foot span:last-child{text-align:right;max-width:150px}.ticker{margin-top:35px}.section-head{display:block;margin-bottom:28px}.section-head>p{margin-top:22px;font-size:12px}h2{font-size:42px;letter-spacing:-2px}.projects{grid-template-columns:1fr;gap:30px}.project-word{font-size:70px}.filters{gap:6px}.filters button{padding:10px 13px;font-size:10px}.reels{gap:10px}.reel{padding:13px;aspect-ratio:9/17}.reel-word{font-size:30px;letter-spacing:-1.5px;margin-top:20px}.reel-number{font-size:6px;line-height:1.7}.reel-title{font-size:10px}.coming{font-size:6px;letter-spacing:1px;padding:7px}.reels-foot{display:block}.reels-foot a{margin-top:20px}.studio{grid-template-columns:1fr;gap:20px}.services{padding-top:0}summary{font-size:18px}.contact h2{font-size:12vw}.contact-bottom{flex-direction:column;align-items:flex-start;margin-top:28px}footer{gap:25px}footer .logo{width:100%}footer p{flex-basis:100%;line-height:1.8}dialog{padding:30px 18px}.project-detail .project-word{font-size:55px}.project-detail .project-art{aspect-ratio:1}.section{padding-block:60px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Brand palette sampled from the original logo: navy #00001c, blue #185de8. */
::selection{background:var(--blue);color:white}.round-link{color:white}.contact{color:white}.contact em{color:white;opacity:.8}.contact .pill{background:var(--ink);color:white}.skip:focus{color:white}.art-title em{color:white}.reels-section h2 span{color:white}.atlas,.object,.forma,.soleil{background:#185de8;color:white}.atlas:before{background:linear-gradient(120deg,#00001c,#185de8 45%,#00001c);box-shadow:25px 30px 25px #00001c33}.object:before{background:linear-gradient(140deg,#ffffff,#185de8);box-shadow:35px 25px 40px #00001c44}.forma{background:#00001c}.forma:before{color:#185de8}.soleil:before{border-color:#ffffff55;box-shadow:0 0 0 25px #ffffff12,0 0 0 50px #ffffff12,0 0 0 75px #ffffff12}.motion,.product{background:#185de8;color:white}.behind,.social{background:#00001c;color:white;border:1px solid #ffffff33}.feature-art{background:#00001c;color:white}.orb{background:radial-gradient(circle at 35% 30%,#ffffff 0,#185de8 25%,#00001c 73%)}.orb:after{border-color:#ffffff55;box-shadow:0 0 0 35px #185de830,0 0 0 70px #185de820}

/* Logo original et transitions de la marque */
.logo{display:inline-flex;align-items:center;flex-shrink:0}
.logo img{display:block;width:64px;height:64px;object-fit:contain;transition:transform .35s ease}
.logo:hover img{transform:rotate(-5deg) scale(1.04)}
footer .logo img{width:86px;height:86px}
.brand-seal{position:absolute;right:6%;top:24%;width:170px;height:170px;background:white;border-radius:50%;display:grid;place-items:center;z-index:2;box-shadow:0 15px 60px #00001c44;transform:rotate(8deg)}
.brand-seal img{width:72%;height:72%;object-fit:contain}
.header nav>a:not(.nav-cta){position:relative}
.header nav>a:not(.nav-cta):after{content:'';position:absolute;left:0;bottom:-7px;width:100%;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
.header nav>a:hover:after,.header nav>a:focus-visible:after{transform:scaleX(1)}
.nav-cta,.pill,.filters button,.play{transition:transform .25s ease,background-color .25s ease,color .25s ease,box-shadow .25s ease}
.nav-cta:hover,.pill:hover{transform:translateY(-3px);box-shadow:0 8px 22px #00001c26}
.filters button:hover:not(.active){background:#185de8;color:white}
.text-link{transition:color .25s ease}.text-link:hover{color:var(--blue)}
.reels-section .text-link:hover{color:white}
.project-arrow{transition:transform .3s ease}.project-card:hover .project-arrow{transform:translate(4px,-4px)}
.reel{transition:transform .35s ease,box-shadow .35s ease}.reel:hover{transform:translateY(-7px);box-shadow:0 18px 30px #00001c44}
summary b{transition:transform .25s ease}
@keyframes rise-in{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
@keyframes seal-in{from{opacity:0;transform:translateY(24px) rotate(-12deg)}to{opacity:1;transform:translateY(0) rotate(8deg)}}
@keyframes orb-in{from{opacity:.3;transform:translateX(8%) rotate(-35deg)}to{opacity:1;transform:translateX(0) rotate(-25deg)}}
@keyframes dialog-in{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:no-preference){
.hero-meta{animation:rise-in .6s ease both}.hero h1{animation:rise-in .85s .1s cubic-bezier(.2,.7,.2,1) both}.hero-bottom{animation:rise-in .7s .25s ease both}
.brand-seal{animation:seal-in 1.1s .25s ease both}.orb{animation:orb-in 1.5s ease both}
.project-card{animation:rise-in .45s ease both}.project-card:nth-child(2){animation-delay:60ms}.project-card:nth-child(3){animation-delay:100ms}.project-card:nth-child(4){animation-delay:140ms}
dialog[open]{animation:dialog-in .25s ease both}details[open] p{animation:rise-in .3s ease both}
.reveal-pending{opacity:0;transform:translateY(24px)}.reveal-visible{opacity:1;transform:translateY(0);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}
}
@media(max-width:600px){.logo img{width:54px;height:54px}.brand-seal{width:94px;height:94px;right:7%;top:25%}.header nav.is-open{animation:rise-in .25s ease both}}
@media(prefers-reduced-motion:reduce){.reveal-pending{opacity:1;transform:none}.reel:hover,.nav-cta:hover,.pill:hover,.logo:hover img,.project-card:hover .project-arrow{transform:none}}
