@font-face{font-family:Outfit;src:url('assets/fonts/outfit.woff2') format('woff2');font-style:normal;font-weight:500 600;font-display:swap}@font-face{font-family:Manrope;src:url('assets/fonts/manrope.woff2') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}@font-face{font-family:'Instrument Serif';src:url('assets/fonts/instrument-serif-italic.woff2') format('woff2');font-style:italic;font-weight:400;font-display:swap}
:root{--navy:#071c33;--navy-2:#0c2948;--blue:#2f67e8;--sky:#abc7ff;--ice:#eef4ff;--paper:#f8f9fc;--white:#fff;--ink:#081b31;--muted:#53667b;--line:#d8e0ea;--max:1240px;--radius:24px;--shadow:0 22px 70px rgba(4,21,39,.15)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:16px;line-height:1.55;overflow-x:hidden}body.locked{overflow:hidden}img,video{display:block;max-width:100%}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Outfit,Arial,sans-serif;font-weight:500;letter-spacing:-.045em;line-height:.99}em{font-family:'Instrument Serif',Georgia,serif;font-weight:400}::selection{background:var(--sky);color:var(--navy)}
.container{width:min(calc(100% - 48px),var(--max));margin-inline:auto;min-width:0}.skip-link{position:fixed;z-index:1000;top:12px;left:12px;padding:12px 18px;background:#fff;color:var(--navy);border-radius:10px;transform:translateY(-150%)}.skip-link:focus{transform:none}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{height:76px;position:sticky;top:0;z-index:100;width:100%;background:rgba(7,28,51,.94);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:#fff;border-bottom:1px solid rgba(255,255,255,.11);transform:translate3d(0,0,0);transform-origin:top center;will-change:transform,opacity;opacity:1;transition:transform .55s cubic-bezier(.16,1,.3,1),opacity .26s ease-out,top .42s cubic-bezier(.16,1,.3,1),background .3s,border-color .3s}.nav{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px;border:1px solid transparent;border-radius:0;background:transparent;padding:0;clip-path:inset(0 0 round 0);transform:scaleY(1);transform-origin:center;opacity:1;transition:width .5s cubic-bezier(.16,1,.3,1),height .5s cubic-bezier(.16,1,.3,1),border-radius .5s cubic-bezier(.16,1,.3,1),background .32s,box-shadow .4s,padding .5s cubic-bezier(.16,1,.3,1),clip-path .52s cubic-bezier(.16,1,.3,1),transform .52s cubic-bezier(.16,1,.3,1),opacity .52s linear}.site-header.is-scrolled{top:10px;background:transparent;border-color:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.site-header.is-scrolled .nav{width:min(calc(100% - 28px),1180px);height:62px;padding:0 22px;border-color:rgba(255,255,255,.14);border-radius:999px;clip-path:inset(0 0 round 999px);background:linear-gradient(180deg,#0c2948 0%,#071c33 100%);box-shadow:0 16px 48px rgba(4,21,39,.28),inset 0 1px 0 rgba(255,255,255,.08)}.site-header.is-hidden{transform:translate3d(0,0,0);opacity:1;pointer-events:none}.site-header.is-hidden .nav{clip-path:inset(calc(50% - 11px) calc(50% - 6px) round 50%);transform:scaleY(1);opacity:0;box-shadow:none;transition:clip-path .44s cubic-bezier(.4,0,.2,1),opacity .52s linear,box-shadow .28s ease}.brand{font-family:Outfit,sans-serif;font-weight:600;font-size:25px;letter-spacing:-.055em;display:inline-flex;align-items:flex-end}.brand span{width:7px;height:7px;border-radius:50%;background:var(--sky);margin:0 0 5px 2px}.brand-image{gap:3px;line-height:1}.brand-image img{display:block;width:auto;height:20px;max-width:none;filter:brightness(0) invert(1);object-fit:contain}.brand-image span{width:6px;height:6px;margin:0 0 1px 1px;flex:0 0 6px}.nav-links{display:flex;align-items:center;gap:31px;margin-left:auto}.nav-links a{font-size:13px;font-weight:500;color:rgba(255,255,255,.72);transition:color .2s}.nav-links a:hover{color:#fff}.nav-mobile-cta{display:none}.mobile-menu{display:none}.nav-actions{display:flex;align-items:center;gap:11px}.lang-switch{position:relative;height:38px;min-width:74px;padding:0 12px;border:1px solid rgba(255,255,255,.26);border-radius:999px;background:transparent;color:#fff;display:flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-size:10px;letter-spacing:.08em}.lang-switch i{width:1px;height:11px;background:rgba(255,255,255,.32)}.lang-switch span:not(.sr-only):last-of-type{opacity:.45}.lang-switch.fr span:not(.sr-only):first-child{opacity:.45}.lang-switch.fr span:not(.sr-only):last-of-type{opacity:1}.menu-button{display:none;border:0;background:none;color:#fff;font-size:12px;text-transform:uppercase;letter-spacing:.08em;cursor:pointer}.button{min-height:48px;border:1px solid transparent;border-radius:999px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-size:13px;font-weight:600;cursor:pointer;transition:transform .2s,background .2s,color .2s}.button:hover{transform:translateY(-2px)}.button-light{background:#fff;color:var(--navy)}.button-light:hover{background:var(--sky)}.arrow{display:inline-block;width:14px;height:14px;position:relative;flex:0 0 14px}.arrow:before{content:"";position:absolute;width:10px;height:1.5px;background:currentColor;left:1px;top:6px}.arrow:after{content:"";position:absolute;width:5px;height:5px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor;right:1px;top:3px;transform:rotate(45deg)}
.hero{background:var(--navy);color:#fff;min-height:810px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:72px;align-items:center;min-height:734px;padding:54px 0}.hero-copy{opacity:1}.eyebrow{display:flex;align-items:center;gap:14px;font-size:11px;line-height:1.2;text-transform:uppercase;letter-spacing:.15em;font-weight:700;color:#41607d}.eyebrow:after{content:"";width:56px;height:1px;background:currentColor;opacity:.5}.eyebrow.light{color:var(--sky)}.hero .eyebrow{color:var(--sky)}.hero h1{font-size:clamp(76px,7.2vw,116px);max-width:620px;margin:27px 0 26px}.hero h1 em{color:var(--sky);display:block}.hero-lead{font-size:18px;line-height:1.55;color:rgba(255,255,255,.72);max-width:590px;margin-bottom:31px}.hero-actions{display:flex;align-items:center;gap:24px}.text-link{min-height:44px;display:inline-flex;align-items:center;gap:9px;font-size:13px;font-weight:600;border-bottom:1px solid rgba(255,255,255,.4)}.response-note{margin:19px 0 0;color:rgba(255,255,255,.48);font-size:12px}.hero-visual{min-width:0}.rail-head{height:38px;display:flex;align-items:center;justify-content:space-between;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:rgba(255,255,255,.58)}.rail-actions{display:flex;align-items:center;gap:8px}.rail-button{width:32px;height:32px;border-radius:50%;border:1px solid rgba(255,255,255,.27);background:transparent;color:#fff;cursor:pointer;display:grid;place-items:center}.rail-button span{width:8px;height:8px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor}.rail-button.next span{transform:rotate(45deg);margin-left:-3px}.rail-button.prev span{transform:rotate(-135deg);margin-right:-3px}.rail-button:disabled{opacity:.3;cursor:default}.mosaic-scroll{width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:8px 0 18px}.mosaic-scroll::-webkit-scrollbar,.portfolio-grid::-webkit-scrollbar{display:none}.mosaic{width:max-content;display:grid;grid-template-columns:245px 220px 220px;grid-template-rows:260px 260px;gap:13px}.hero-card{position:relative;overflow:hidden;border-radius:20px;margin:0;scroll-snap-align:start;min-width:0}.hero-card picture{display:block;width:100%;height:100%}.hero-card img{width:100%;height:100%;object-fit:cover}.hero-card-tall{grid-row:1/3}.hero-card-type{background:var(--sky);color:var(--navy);padding:24px;display:flex;flex-direction:column}.hero-card-type>span,.hero-card-system>span{font-size:9px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.hero-card-type strong{font-family:'Instrument Serif',serif;font-size:40px;line-height:.9;font-weight:400;margin:auto 0}.hero-card-type small,.hero-card-system small{font-size:10px;line-height:1.35;opacity:.68}.hero-card-wide{grid-column:2/4}.hero-card figcaption{position:absolute;left:14px;right:14px;bottom:14px;padding:12px 13px;border-radius:13px;background:rgba(7,28,51,.84);backdrop-filter:blur(9px);color:#fff;display:flex;align-items:flex-end;justify-content:space-between;gap:10px}.hero-card figcaption span{font-size:8px;text-transform:uppercase;letter-spacing:.1em}.hero-card figcaption strong{font-family:Outfit,sans-serif;font-size:15px;letter-spacing:-.03em}.hero-card-system{background:#fff;color:var(--navy);padding:22px;display:flex;flex-direction:column}.hero-card-system strong{font-size:27px;margin:14px 0 5px}.format-stack{height:88px;display:flex;gap:7px;align-items:flex-end;margin:auto 0 8px}.format-stack i{display:block;flex:1;background:var(--blue);border-radius:7px 7px 2px 2px}.format-stack i:nth-child(1){height:43%}.format-stack i:nth-child(2){height:72%}.format-stack i:nth-child(3){height:100%}
.trust-strip{border-bottom:1px solid var(--line);background:#fff}.trust-inner{min-height:76px;display:grid;grid-template-columns:repeat(4,1fr);align-items:center}.trust-inner span{text-align:center;font-size:11px;text-transform:uppercase;letter-spacing:.11em;font-weight:700;color:#53667b;border-right:1px solid var(--line)}.trust-inner span:first-child{text-align:left}.trust-inner span:last-child{border:0;text-align:right}
.section{padding:132px 0}.section-intro{display:grid;grid-template-columns:1.15fr .85fr;gap:100px;align-items:end;margin-bottom:68px}.section-intro h2,.faq-head h2,.about-copy h2{font-size:clamp(58px,6vw,86px);margin:23px 0 0;max-width:760px}.section-intro h2 em,.faq-head h2 em,.about-copy h2 em{color:var(--blue)}.section-intro>p{font-size:17px;line-height:1.6;color:var(--muted);max-width:520px;margin:0}.work{background:#fff}.case-feature{display:grid;grid-template-columns:.72fr 1.28fr;min-height:670px;border-radius:var(--radius);overflow:hidden;background:var(--navy);color:#fff;box-shadow:var(--shadow)}.case-copy{padding:54px;display:flex;flex-direction:column;justify-content:space-between}.case-kicker{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--sky);font-weight:700}.case-copy h3{font-size:48px;margin:26px 0 20px}.case-copy p{color:rgba(255,255,255,.66);line-height:1.65}.case-meta{margin:50px 0 0}.case-meta div{border-top:1px solid rgba(255,255,255,.15);padding:15px 0;display:grid;grid-template-columns:95px 1fr;gap:12px}.case-meta dt{font-size:9px;text-transform:uppercase;letter-spacing:.12em;color:var(--sky)}.case-meta dd{margin:0;font-size:12px;color:rgba(255,255,255,.72)}.case-media{display:grid;grid-template-columns:1fr 1fr;gap:4px;min-width:0}.case-media>img,.video-wrap{width:100%;height:670px;object-fit:cover}.video-wrap{position:relative;background:#102b49}.video-wrap video{width:100%;height:100%;object-fit:cover}.video-toggle{position:absolute;left:16px;bottom:16px;min-height:40px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(7,28,51,.82);color:#fff;padding:0 14px;display:flex;align-items:center;gap:8px;cursor:pointer}.video-toggle span{display:block;width:9px;height:11px;border-left:3px solid currentColor;border-right:3px solid currentColor}.video-toggle.paused span{border:0;width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:9px solid currentColor}.video-toggle b{font-size:10px;text-transform:uppercase;letter-spacing:.1em}.portfolio-head{margin-top:40px;color:var(--muted)}.portfolio-head .rail-button{color:var(--navy);border-color:var(--line)}.rail-count{min-width:52px;text-align:right}.portfolio-grid{display:flex;gap:14px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:7px 0 16px}.portfolio-grid figure{margin:0;flex:0 0 286px;scroll-snap-align:start;position:relative;border-radius:18px;overflow:hidden;background:var(--ice);aspect-ratio:3/4}.portfolio-grid img{width:100%;height:100%;object-fit:cover}.portfolio-grid figcaption{position:absolute;left:12px;right:12px;bottom:12px;padding:10px 12px;background:rgba(255,255,255,.9);backdrop-filter:blur(8px);border-radius:10px;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.study-grid{display:grid;grid-template-columns:1.18fr .82fr;gap:18px;margin-top:54px}.study-card{border-radius:var(--radius);overflow:hidden;min-height:560px}.study-image{position:relative;color:#fff}.study-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.study-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,rgba(7,28,51,.85))}.study-image>div{position:absolute;z-index:1;left:38px;right:38px;bottom:36px}.study-card>div>span,.study-type>span{font-size:10px;text-transform:uppercase;letter-spacing:.13em;font-weight:700}.study-card h3{font-size:42px;margin:15px 0}.study-card p{max-width:560px;color:inherit;opacity:.75}.study-type{padding:44px;background:var(--ice);display:flex;flex-direction:column}.study-type h3{font-size:54px;margin:auto 0 24px}.study-type h3 em{color:var(--blue)}.dark-link{color:var(--navy);border-color:rgba(7,28,51,.35);align-self:flex-start;margin-top:24px}
.services{background:var(--paper)}.section-intro.compact{margin-bottom:50px}.service-families{border-top:1px solid var(--line)}.service-family{display:grid;grid-template-columns:70px 1.25fr 1fr 180px;gap:36px;align-items:start;padding:49px 0;border-bottom:1px solid var(--line);min-width:0}.service-number{font-size:11px;font-weight:700;color:var(--blue);letter-spacing:.12em}.service-main{min-width:0}.service-main h3{font-size:36px;margin:0 0 12px}.service-main p{color:var(--muted);margin:0;max-width:440px}.service-family ul{list-style:none;padding:0;margin:0;display:grid;gap:9px;color:#29435f;font-size:14px}.service-family li:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--blue);margin:0 10px 2px 0}.service-action{min-height:44px;display:inline-flex;align-items:center;justify-content:flex-end;gap:9px;font-size:12px;font-weight:700;white-space:nowrap}
.model{background:var(--navy);color:#fff}.model-head{display:grid;grid-template-columns:1.25fr .75fr;gap:100px;align-items:end}.model-head .eyebrow{grid-column:1/-1}.model-head h2{font-size:clamp(60px,7vw,98px);margin:0}.model-head h2 em{color:var(--sky)}.model-head>p{color:rgba(255,255,255,.67);font-size:17px;line-height:1.65;margin:0 0 8px}.process-list{list-style:none;padding:0;margin:90px 0 0;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.18)}.process-list li{padding:24px 18px 0;border-right:1px solid rgba(255,255,255,.18);min-width:0}.process-list li:last-child{border-right:0}.process-list li>span{font-size:10px;color:var(--sky);letter-spacing:.12em}.process-media{margin:22px 0 0;aspect-ratio:8/5;border-radius:14px;overflow:hidden;background:#0b2947}.process-media picture,.process-media img{display:block;width:100%;height:100%}.process-media img{object-fit:cover}.process-list h3{font-size:25px;margin:28px 0 12px}.process-list p{margin:0;font-size:13px;color:rgba(255,255,255,.58);line-height:1.58}
.about{background:#fff}.about-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:center}.about-image{height:650px;margin:0;border-radius:var(--radius);overflow:hidden;background:var(--sky)}.about-image picture,.about-image img{display:block;width:100%;height:100%}.about-image img{object-fit:cover;transition:transform .6s ease}.about-image:hover img{transform:scale(1.03)}.about-word{display:none}.about-note{display:none}.about-copy h2{margin-bottom:30px}.about-copy>p{font-size:18px;line-height:1.7;color:var(--muted);max-width:680px}.about-points{margin-top:48px;border-top:1px solid var(--line)}.about-points div{padding:19px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:180px 1fr;gap:30px}.about-points strong{font-family:Outfit,sans-serif;font-size:18px}.about-points span{color:var(--muted);font-size:14px}
.faq{background:var(--ice)}.faq-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:100px}.faq-head h2{margin-bottom:28px}.faq-head>p{color:var(--muted);max-width:430px}.faq-list{border-top:1px solid #cbd8e9}.faq-item{border-bottom:1px solid #cbd8e9;transition:border-color .4s ease}.faq-item:has(.faq-q[aria-expanded=true]){border-color:#9eb5d1}.faq-q{width:100%;min-height:100px;padding:22px 0;border:0;background:none;text-align:left;color:var(--navy);display:flex;align-items:center;justify-content:space-between;gap:24px;cursor:pointer;font-family:Outfit,sans-serif;font-size:23px;letter-spacing:-.025em;transition:color .38s cubic-bezier(.22,1,.36,1)}.faq-q:hover,.faq-q[aria-expanded=true]{color:#245fcf}.faq-q i{position:relative;width:36px;height:36px;flex:0 0 36px;border-radius:50%;background:rgba(47,103,232,.06);transform:rotate(0);transition:transform .48s cubic-bezier(.22,1,.36,1),background-color .35s ease}.faq-q i:before,.faq-q i:after{content:"";position:absolute;left:10px;right:10px;top:17px;height:1.5px;border-radius:999px;background:currentColor}.faq-q i:after{transform:rotate(90deg)}.faq-q[aria-expanded=true] i{transform:rotate(45deg);background:rgba(47,103,232,.11)}.faq-a{display:grid;grid-template-rows:0fr;padding:0 64px 0 0;color:var(--muted);max-width:680px;font-size:16px;line-height:1.72;opacity:0;visibility:hidden;transition:grid-template-rows .62s cubic-bezier(.25,.1,.25,1),opacity .44s ease,padding-bottom .62s cubic-bezier(.25,.1,.25,1),visibility 0s .62s;will-change:grid-template-rows,opacity}.faq-a[aria-hidden=false]{grid-template-rows:1fr;padding-bottom:30px;opacity:1;visibility:visible;transition:grid-template-rows .62s cubic-bezier(.25,.1,.25,1),opacity .44s .06s ease,padding-bottom .62s cubic-bezier(.25,.1,.25,1),visibility 0s}.faq-a p{min-height:0;overflow:hidden;margin:0;transform:translateY(-8px);transition:transform .62s cubic-bezier(.25,.1,.25,1)}.faq-a[aria-hidden=false] p{transform:translateY(0)}@media(hover:hover){.faq-q:hover i{background:rgba(47,103,232,.1);transform:scale(1.045)}.faq-q[aria-expanded=true]:hover i{transform:rotate(45deg) scale(1.045)}}
.contact{background:var(--navy);color:#fff}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:start}.contact-copy{position:sticky;top:120px}.contact-copy h2{font-size:clamp(58px,6vw,84px);margin:25px 0 26px}.contact-copy h2 em{color:var(--sky)}.contact-copy>p{color:rgba(255,255,255,.66);font-size:17px;max-width:500px}.contact-email{display:inline-block;margin-top:28px;border-bottom:1px solid rgba(255,255,255,.4);font-size:14px}.inquiry-form{background:#fff;color:var(--navy);border-radius:var(--radius);padding:40px;min-width:0}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.inquiry-form label{display:block;margin-bottom:19px;min-width:0}.inquiry-form label>span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;margin-bottom:8px;color:#446079}.inquiry-form input,.inquiry-form select,.inquiry-form textarea{width:100%;border:1px solid var(--line);border-radius:11px;background:#fbfcfe;color:var(--navy);padding:13px 14px;outline:0;transition:border .2s,box-shadow .2s}.inquiry-form input,.inquiry-form select{height:50px}.inquiry-form textarea{resize:vertical;min-height:140px}.inquiry-form input:focus,.inquiry-form select:focus,.inquiry-form textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(47,103,232,.13)}.inquiry-form [aria-invalid=true]{border-color:#ba2f45}.honeypot{position:absolute!important;left:-9999px!important}.form-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:7px}.form-bottom p{font-size:11px;line-height:1.5;color:var(--muted);max-width:290px;margin:0}.form-bottom p a{text-decoration:underline}.inquiry-form .button{background:var(--navy);color:#fff}.inquiry-form .button:disabled{opacity:.5;cursor:wait}.form-status{min-height:24px;margin-top:15px;font-size:13px;font-weight:600}.form-status.success{color:#157347}.form-status.error{color:#b4233c}
.footer{background:#041426;color:#fff;padding:75px 0 28px}.footer-grid{display:grid;grid-template-columns:1fr auto auto;gap:110px;align-items:start}.footer-brand{font-size:37px}.footer-grid>div:first-child p{color:var(--sky);font-family:'Instrument Serif',serif;font-size:26px;margin:15px 0 0}.footer-links{display:grid;gap:10px;min-width:140px}.footer-links>span{font-size:9px;text-transform:uppercase;letter-spacing:.13em;color:#7890a8;margin-bottom:8px}.footer-links a{font-size:12px;color:rgba(255,255,255,.7)}.footer-bottom{border-top:1px solid rgba(255,255,255,.13);margin-top:58px;padding-top:24px;display:flex;justify-content:space-between;color:#6f879f;font-size:10px}.mobile-cta{display:none}
.legal{background:#fff;min-height:80vh;padding:100px 0}.legal-wrap{max-width:820px}.legal h1{font-size:76px;margin:25px 0 8px}.legal-updated{color:var(--muted);font-size:13px;margin-bottom:64px}.legal section{padding:28px 0;border-top:1px solid var(--line)}.legal section h2{font-size:28px;margin-bottom:12px}.legal section p{color:var(--muted);line-height:1.75}.legal section a{text-decoration:underline}.legal .text-link{margin-top:28px}.not-found{min-height:100vh;background:var(--navy);color:#fff;padding:45px}.not-found main{min-height:calc(100vh - 90px);max-width:1160px;margin:auto;display:flex;flex-direction:column;justify-content:space-between}.not-found main>div{max-width:760px;margin-bottom:6vh}.not-found h1{font-size:clamp(60px,8vw,110px);margin:28px 0}.not-found h1 em{color:var(--sky)}.not-found p{color:rgba(255,255,255,.68);font-size:18px;max-width:600px}.not-found .button{margin-top:24px}
:focus-visible{outline:3px solid var(--sky);outline-offset:4px}.work :focus-visible,.services :focus-visible,.faq :focus-visible,.about :focus-visible{outline-color:var(--blue)}
@media(min-width:1001px){.hero{min-height:760px}.hero-grid{grid-template-columns:.88fr 1.12fr;gap:88px;min-height:760px;padding:62px 0 70px}.hero h1{font-size:clamp(74px,6.4vw,98px);line-height:.95;max-width:540px;margin:25px 0 25px}.hero-lead{max-width:510px}.hero-visual{width:100%;max-width:640px;justify-self:end}.hero-visual .rail-actions{display:none}.mosaic-scroll{overflow:visible;padding:8px 0 0}.mosaic{width:100%;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);grid-template-rows:560px;gap:18px}.mosaic .hero-card-tall,.mosaic .hero-card-type{grid-column:auto!important;grid-row:auto!important;width:auto;height:560px!important}.mosaic .hero-card-wide,.mosaic .hero-card-system{display:none}.hero-card-type{padding:30px}.section{padding:148px 0}.section-intro{gap:120px;margin-bottom:84px}.section-intro h2,.faq-head h2,.about-copy h2{font-size:clamp(56px,5.45vw,78px)}.case-feature{grid-template-columns:.8fr 1.2fr;min-height:620px}.case-copy{padding:58px}.case-copy h3{font-size:44px}.case-media{display:block}.case-media>img{display:none}.case-media .video-wrap{height:620px}.portfolio-grid{gap:20px}.portfolio-grid figure{flex:0 0 calc((100% - 40px)/3)}.service-family{grid-template-columns:54px 1.25fr .9fr 166px;gap:32px;padding:56px 0}.service-main h3{font-size:33px}.model-head h2{font-size:clamp(58px,6vw,84px)}.process-list{margin-top:104px}.contact-grid{gap:120px}.inquiry-form{padding:42px}}
@media(max-width:1000px){.site-header.is-scrolled{top:8px}.site-header.is-scrolled .nav{width:calc(100% - 20px);height:58px;padding:0 13px}.container{width:min(calc(100% - 40px),var(--max))}.nav-links{display:none}.mobile-menu{position:fixed;inset:76px 0 0;z-index:99;background:var(--navy);padding:42px 24px max(42px,env(safe-area-inset-bottom));flex-direction:column;align-items:flex-start;gap:24px;font-family:Outfit,sans-serif;font-size:30px;overflow-y:auto;-webkit-overflow-scrolling:touch}.mobile-menu.open{display:flex}.mobile-menu[hidden]{display:none!important}.mobile-menu a{font-size:inherit;color:#fff}.mobile-menu .nav-mobile-cta{display:inline-flex!important;background:#fff;color:var(--navy)!important;border-radius:999px;padding:12px 19px;margin-top:10px;font-family:Manrope,sans-serif;font-size:13px!important}.nav-project{display:none}.menu-button{display:block}.hero{min-height:auto}.hero-grid{grid-template-columns:1fr;gap:55px;padding:85px 0 60px}.hero-copy{max-width:760px}.hero h1{font-size:92px}.hero-visual{width:calc(100% + 20px)}.mosaic-scroll{padding-right:20px}.section{padding:105px 0}.section-intro,.model-head,.about-grid,.faq-grid,.contact-grid{grid-template-columns:1fr;gap:45px}.section-intro>p{max-width:700px}.case-feature{grid-template-columns:1fr}.case-copy{min-height:560px}.case-media>img,.video-wrap{height:620px}.study-grid{grid-template-columns:1fr}.service-family{grid-template-columns:55px 1fr 1fr}.service-action{grid-column:2/-1;justify-content:flex-start}.model-head .eyebrow{grid-column:auto}.process-list{grid-template-columns:1fr 1fr}.process-list li:nth-child(2){border-right:0}.process-list li:nth-child(n+3){border-top:1px solid rgba(255,255,255,.18)}.about-art,.about-image{height:460px}.about-word{font-size:420px}.contact-copy{position:static}.footer-grid{grid-template-columns:1fr 1fr 1fr;gap:40px}}
@media(max-width:640px){html{scroll-padding-top:72px}body{font-size:15px;padding-bottom:68px}.container{width:min(calc(100% - 30px),var(--max))}.site-header{height:70px}.mobile-menu{inset:70px 0 0}.brand{font-size:22px}.brand-image img{height:18px}.nav-actions{gap:7px}.lang-switch{height:36px;min-width:70px}.menu-button{min-height:44px}.hero-grid{padding:50px 0 35px;gap:45px}.hero h1{font-size:clamp(56px,18vw,70px);margin:23px 0 20px;max-width:360px}.hero-lead{font-size:15px}.hero-actions{gap:15px;align-items:center}.hero-actions .button{min-height:46px}.response-note{font-size:10px}.hero-visual{width:calc(100% + 15px)}.rail-head{padding-right:15px}.rail-actions>span{display:none}.rail-button{width:34px;height:34px}.mosaic{display:flex;gap:12px}.hero-card{flex:0 0 min(290px,calc(100vw - 45px));height:390px;grid-row:auto;grid-column:auto}.hero-card-type{padding:25px}.hero-card-type strong{font-size:48px}.hero-card-system{padding:25px}.hero-card-system strong{font-size:32px}.hero-card figcaption{align-items:flex-start;flex-direction:column}.trust-inner{min-height:116px;grid-template-columns:1fr 1fr}.trust-inner span{padding:11px 5px;text-align:left!important;border-right:1px solid var(--line);font-size:9px}.trust-inner span:nth-child(2){border-right:0}.section{padding:82px 0}.section-intro{gap:25px;margin-bottom:40px}.section-intro h2,.faq-head h2,.about-copy h2{font-size:45px;margin-top:17px}.section-intro>p{font-size:14px}.case-feature{border-radius:18px}.case-copy{padding:28px;min-height:auto}.case-copy h3{font-size:36px;margin:22px 0 15px}.case-copy p{font-size:13px}.case-meta{margin-top:35px}.case-meta div{grid-template-columns:80px 1fr}.case-media{grid-template-columns:1fr}.case-media>img,.video-wrap{height:auto;aspect-ratio:3/4}.case-media>img{display:none}.video-toggle{min-height:42px}.portfolio-grid figure{flex-basis:min(255px,calc(100vw - 60px))}.study-grid{margin-top:35px}.study-card{min-height:470px;border-radius:18px}.study-image>div{left:25px;right:25px;bottom:24px}.study-card h3{font-size:34px}.study-type{padding:27px;min-height:420px}.study-type h3{font-size:43px}.service-family{grid-template-columns:38px 1fr;gap:20px;padding:36px 0;min-width:0}.service-main,.service-family ul,.service-action{grid-column:2}.service-main h3{font-size:29px;overflow-wrap:anywhere}.service-family ul{margin-top:8px}.service-action{justify-content:flex-start;white-space:normal;margin-top:4px}.model-head h2{font-size:54px}.model-head>p{font-size:15px}.process-list{grid-template-columns:1fr;margin-top:60px}.process-list li,.process-list li+li{padding:24px 0;border-right:0;border-top:1px solid rgba(255,255,255,.18);min-height:0}.process-list h3{margin:20px 0 8px}.about-grid{gap:38px}.about-art,.about-image{height:350px}.about-word{font-size:330px}.about-points div{grid-template-columns:1fr;gap:4px}.faq-grid{gap:40px}.faq-q{min-height:82px;font-size:20px}.faq-a{padding-right:20px}.contact-grid{gap:40px}.contact-copy h2{font-size:48px}.inquiry-form{padding:24px 18px;border-radius:18px}.form-row{grid-template-columns:1fr;gap:0}.form-bottom{align-items:flex-start;flex-direction:column}.form-bottom .button{width:100%}.footer{padding:60px 0 24px}.footer-grid{grid-template-columns:1fr 1fr;gap:45px 24px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{align-items:flex-start;flex-direction:column;gap:8px}.mobile-cta{position:fixed;z-index:90;left:12px;right:12px;bottom:10px;min-height:50px;border-radius:999px;background:var(--blue);color:#fff;box-shadow:0 8px 28px rgba(7,28,51,.26);display:flex;align-items:center;justify-content:center;gap:9px;font-size:13px;font-weight:700;opacity:0;pointer-events:none;transform:translateY(14px);transition:opacity .25s,transform .25s}.mobile-cta.is-visible{opacity:1;pointer-events:auto;transform:none}.footer{margin-bottom:-68px;padding-bottom:96px}}
html[lang=fr] .hero h1{font-size:clamp(72px,6.7vw,106px)}html[lang=fr] .section-intro h2,html[lang=fr] .faq-head h2,html[lang=fr] .about-copy h2{letter-spacing:-.035em;line-height:1.04}@media(max-width:640px){html[lang=fr] .hero h1{font-size:clamp(49px,15.6vw,61px);line-height:1.02}html[lang=fr] .section-intro h2,html[lang=fr] .faq-head h2,html[lang=fr] .about-copy h2{font-size:41px;line-height:1.06}.about-copy,.service-family,.service-main{min-width:0;overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}

/* Account entry point */
.nav-account{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.76);padding:10px 2px;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}.nav-account:hover{color:#fff;border-color:var(--sky)}
@media(max-width:1000px){.nav-actions>.nav-account{display:none}}

/* 2026-07-27 — Apex-inspired editorial pass: original ZAYRO composition */
.hero{min-height:auto}.hero-grid{grid-template-columns:1fr!important;gap:68px;min-height:0!important;padding:118px 0 90px!important}.hero-copy{width:100%;max-width:940px;margin:0 auto;text-align:center}.hero h1{max-width:940px!important;margin:28px auto 30px!important;font-size:clamp(76px,8.6vw,124px)!important;line-height:.88!important;letter-spacing:-.065em}.hero-lead{max-width:700px;margin:0 auto;font-size:18px;line-height:1.7}.hero-actions{justify-content:center}.response-note{text-align:center}.hero-visual{width:100%!important;max-width:none!important;justify-self:stretch}.hero-visual .rail-head{padding:0 2px}.hero-visual .rail-actions{display:flex!important}.mosaic-scroll{overflow-x:auto!important;overflow-y:hidden;padding:10px 2px 18px!important;scroll-snap-type:x mandatory;scrollbar-width:none}.mosaic-scroll::-webkit-scrollbar{display:none}.mosaic{display:flex!important;width:max-content!important;gap:18px!important;grid-template-columns:none!important;grid-template-rows:none!important}.mosaic .hero-card{display:flex!important;flex:0 0 clamp(300px,27vw,360px)!important;width:auto!important;height:460px!important;grid-column:auto!important;grid-row:auto!important;scroll-snap-align:start}.hero-card-type,.hero-card-system{padding:32px}.hero-card-type strong{font-size:clamp(43px,4vw,58px)}
@media(max-width:1000px){.hero-grid{gap:58px;padding:90px 0 72px!important}.hero-copy{max-width:780px}.hero h1{font-size:clamp(68px,12vw,98px)!important}.hero-visual{width:calc(100% + 20px)!important}.mosaic .hero-card{flex-basis:min(330px,42vw)!important;height:430px!important}}
@media(max-width:640px){.hero-grid{gap:45px;padding:58px 0 46px!important}.hero h1{max-width:360px!important;font-size:clamp(56px,18vw,70px)!important;line-height:.94!important;margin:23px auto 22px!important}.hero-lead{font-size:15px}.hero-actions{justify-content:center}.hero-visual{width:calc(100% + 15px)!important}.mosaic .hero-card{flex-basis:min(300px,calc(100vw - 45px))!important;height:400px!important}.hero-visual .rail-head{padding-right:15px}.hero-card-type strong{font-size:47px}}

.delivery{background:var(--ice)}.delivery-intro{display:grid;grid-template-columns:1.08fr .92fr;gap:110px;align-items:end;margin-bottom:72px}.delivery-intro h2{font-size:clamp(58px,6vw,84px);margin:23px 0 0;line-height:.98}.delivery-intro h2 em{color:var(--blue)}.delivery-intro>p{max-width:520px;margin:0;color:var(--muted);font-size:17px;line-height:1.65}.delivery-list{list-style:none;padding:0;margin:0;border-top:1px solid #cad7e6}.delivery-item{display:grid;grid-template-columns:62px minmax(0,1.1fr) minmax(280px,.9fr) auto;gap:30px;align-items:center;padding:30px 0;border-bottom:1px solid #cad7e6}.delivery-item>span{font-size:10px;font-weight:700;letter-spacing:.12em;color:var(--blue)}.delivery-item h3{font-size:25px;margin:0}.delivery-item p{grid-column:3;margin:0;color:var(--muted);font-size:13px;line-height:1.58}.delivery-item b{justify-self:end;border:1px solid #c5d4e5;border-radius:999px;padding:8px 11px;font-size:9px;letter-spacing:.11em;color:#49617a}.delivery-cta{margin-top:42px}
@media(max-width:1000px){.delivery-intro{grid-template-columns:1fr;gap:28px}.delivery-item{grid-template-columns:48px minmax(0,1fr) auto}.delivery-item p{grid-column:2;margin-top:-12px}.delivery-item b{grid-column:3;grid-row:1}}
@media(max-width:640px){.delivery-intro{margin-bottom:44px}.delivery-intro h2{font-size:45px}.delivery-intro>p{font-size:14px}.delivery-item{grid-template-columns:34px minmax(0,1fr);gap:12px 16px;padding:27px 0;align-items:start}.delivery-item h3{font-size:21px}.delivery-item p{grid-column:2;margin:0}.delivery-item b{grid-column:2;grid-row:auto;justify-self:start;margin-top:3px}.delivery-cta{width:100%;justify-content:center;margin-top:34px}}

/* Page transition into the categorized work experience */
.page-transition{position:fixed;z-index:9999;inset:0;background:var(--navy);display:grid;place-items:center;transform:translateY(101%);transition:transform .72s cubic-bezier(.76,0,.24,1);pointer-events:none}.transition-word{font-family:var(--display);font-size:clamp(44px,8vw,98px);font-weight:650;letter-spacing:-.06em;color:#fff}.transition-word span{display:inline-block;width:.14em;height:.14em;border-radius:50%;background:var(--ice);margin-left:.05em}body.is-leaving{overflow:hidden}body.is-leaving .page-transition{transform:translateY(0);pointer-events:auto}@media(prefers-reduced-motion:reduce){.page-transition{transition:none}}

/* Compact free-concepts offer inside the mobile navigation island */
.free-label-mobile{display:none}@media(max-width:1000px){.nav-project.nav-free-offer{display:inline-flex;min-height:38px;padding:0 13px;border-radius:999px;background:#fff;color:var(--navy);font-size:10px;font-weight:800;line-height:1;white-space:nowrap}.nav-free-offer .free-label-desktop{display:none}.nav-free-offer .free-label-mobile{display:inline}.nav-free-offer .arrow{display:none}}@media(max-width:640px){.nav{gap:7px}.nav-actions{gap:5px}.nav-project.nav-free-offer{min-height:34px;padding:0 10px;font-size:9px}.lang-switch{min-width:64px;padding-inline:7px}.menu-button{padding-inline:7px;font-size:10px}.site-header.is-scrolled .nav{padding-inline:10px}}@media(max-width:390px){.nav-project.nav-free-offer{padding-inline:8px;font-size:8.5px}.lang-switch{min-width:58px}.menu-button{padding-inline:4px}}

/* 2026-07-30 — ZAYRO brand film and capabilities board */
.video-sound{position:absolute;left:112px;bottom:16px;min-height:40px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(7,28,51,.82);color:#fff;padding:0 14px;display:flex;align-items:center;gap:8px;cursor:pointer}.video-sound span{width:12px;height:12px;border:2px solid currentColor;border-radius:50%;position:relative}.video-sound span:after{content:"";position:absolute;width:6px;height:2px;background:currentColor;left:7px;top:3px;transform:rotate(-45deg);transform-origin:left center}.video-sound.is-on span:after{width:4px;height:4px;background:transparent;border:2px solid currentColor;border-left:0;border-bottom:0;border-radius:50%;left:8px;top:1px;transform:rotate(45deg)}.video-sound b{font-size:10px;text-transform:uppercase;letter-spacing:.1em}.portfolio-overview-frame{background:var(--navy)!important}.portfolio-overview-frame picture{display:block;width:100%;height:100%}.portfolio-overview-frame img{object-fit:contain!important;background:var(--navy)}@media(max-width:640px){.video-sound{left:auto;right:16px;min-height:42px}}

/* ---- Smooth scroll-reveal system ---- */
[data-reveal]{opacity:0;transform:translateY(30px);transition:opacity .9s cubic-bezier(.22,1,.36,1),transform .9s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0s);will-change:opacity,transform}
[data-reveal].is-revealed{opacity:1;transform:translateY(0)}
/* Hero intro: plays once on load */
.hero [data-reveal]{transform:translateY(26px)}
body.hero-ready .hero [data-reveal]{opacity:1;transform:translateY(0)}
/* Portfolio/study cards get a slightly deeper rise */
.portfolio-grid [data-reveal],.study-card[data-reveal]{transform:translateY(38px)}
.portfolio-grid [data-reveal].is-revealed,.study-card[data-reveal].is-revealed{transform:translateY(0)}
@media(prefers-reduced-motion:reduce){[data-reveal]{opacity:1!important;transform:none!important;transition:none!important}}
