/* AC DIGITAL — editorial surfaces and progressive motion. */
:root{--ease-out:cubic-bezier(.16,1,.3,1);--ease-in-out:cubic-bezier(.76,0,.24,1)}
body{overflow-x:clip}button{cursor:pointer}button:disabled{cursor:default}.eyebrow{font-size:14px;letter-spacing:.1em}.brand .brand-name small{font-size:9px}
header{background:#ffffffed;transition:box-shadow .35s,border-color .35s}header.is-scrolled{box-shadow:0 10px 35px #101e360c;border-color:transparent}
.nav nav>a:not(.navaction){position:relative}.nav nav>a:not(.navaction):after{content:'';position:absolute;left:0;right:0;bottom:-7px;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:right;transition:transform .45s var(--ease-out)}.nav nav>a:not(.navaction):hover:after{transform:scaleX(1);transform-origin:left}
.homehero{padding-top:74px;position:relative;isolation:isolate}.homehero:before{content:'';position:absolute;z-index:-1;inset:0 0 35%;pointer-events:none;background:radial-gradient(ellipse at 80% 25%,#c7fe021a,transparent 50%),linear-gradient(110deg,transparent 59%,#2a399408 59.1%,transparent 59.25%);opacity:.8}
.homehero h1{font-size:clamp(3.5rem,6.4vw,6.4rem);line-height:1.06;letter-spacing:-.058em}.heroheading{gap:55px;grid-template-columns:1.5fr 1fr;animation:none}.heroheading h1 em:after{display:none}.heroheading h1 em{font-style:normal}.herocopy{padding-bottom:12px}.herocopy p{font-size:18px;line-height:1.7}.heroimage{height:clamp(380px,42vw,590px);border-radius:3px;contain:paint;isolation:isolate}.heroimage>img{animation:none;transform:translate3d(var(--hero-x,0px),calc(var(--parallax-y,0px) + var(--hero-y,0px)),0) scale(1.09);height:100%;width:100%;object-fit:cover}.imagecaption{z-index:2;background:linear-gradient(transparent,#121d55e6);padding:45px 25px 20px;font-size:12px}.herostamp{animation:none!important;border-radius:50%;box-shadow:0 12px 30px #101e3626}.tangier-inset{bottom:75px;right:26px;transform:rotate(2deg);border-width:3px;width:230px;height:130px}.heroimage .herostamp{bottom:70px}
.word-mask{display:inline-block;overflow:hidden;vertical-align:top;padding:0 .02em .15em;margin:0 -.02em -.15em;line-height:1.15}.word-mask>span{display:inline-block;transform-origin:0 100%}
.motion-enabled:not(.motion-ready) .cinematic-intro .word-mask>span{transform:translateY(115%) rotate(4deg);opacity:0}.motion-enabled.motion-ready .cinematic-intro .word-mask>span{animation:word-arrive 1.1s var(--ease-out) var(--word-delay,0ms) both}
.motion-enabled .cinematic-intro .eyebrow{animation:quiet-arrive .9s var(--ease-out) both}.motion-enabled .herocopy>*{animation:quiet-arrive 1s var(--ease-out) both}.motion-enabled .herocopy>*:nth-child(1){animation-delay:.22s}.motion-enabled .herocopy>*:nth-child(2){animation-delay:.32s}.motion-enabled .herocopy>*:nth-child(3){animation-delay:.4s}.motion-enabled .herocopy>*:nth-child(4){animation-delay:.48s}.motion-enabled .heroimage{animation:frame-arrive 1.3s var(--ease-out) .15s both}
@keyframes word-arrive{from{transform:translateY(115%) rotate(4deg);opacity:0}to{transform:translateY(0) rotate(0);opacity:1}}@keyframes quiet-arrive{from{opacity:0;translate:0 20px}to{opacity:1;translate:0 0}}@keyframes frame-arrive{from{clip-path:inset(9% 3% 9% 3%);opacity:.4}to{clip-path:inset(0);opacity:1}}
.ticker{margin-top:42px;justify-content:space-evenly;gap:20px;font-size:14px;padding:25px 30px}.ticker b{transition:transform .65s var(--ease-out)}.ticker:hover b{transform:rotate(90deg)}
.motion-reveal{opacity:1}.motion-enabled .motion-reveal{opacity:0;translate:0 32px;transition:opacity .85s var(--ease-out) var(--reveal-delay,0ms),translate .85s var(--ease-out) var(--reveal-delay,0ms)}.motion-enabled .motion-reveal.revealed{opacity:1;translate:0 0}.motion-enabled .gallery-grid figure.motion-reveal{clip-path:inset(0 0 18% 0);transition:opacity 1s var(--ease-out),translate 1s var(--ease-out),clip-path 1.2s var(--ease-out)}.motion-enabled .gallery-grid figure.revealed{clip-path:inset(0)}
.sectionintro h2,.portfolio-heading h2{letter-spacing:-.055em}.sectionintro>p{line-height:1.75}.servicecard{padding:12px;border:1px solid transparent;border-radius:10px;transition:background .5s,border-color .5s,transform .5s var(--ease-out),box-shadow .5s;transform:perspective(1200px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}.servicecard:hover{transform:perspective(1200px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));background:#f4f6fa;border-color:#2a399414;box-shadow:0 25px 45px -30px #2a399430}.cardimage{border-radius:4px;overflow:hidden}.cardimage img{transition:transform 1s var(--ease-out),filter .6s;transform:scale(1.015)}.servicecard:hover img{transform:scale(1.07)}.cardbody h3{transition:translate .5s var(--ease-out),color .5s}.servicecard:hover .cardbody h3{translate:4px 0;color:var(--blue)}.cardbody{padding:24px 10px 6px}.roundarrow{transition:transform .6s var(--ease-out),background .4s,color .4s}.servicecard:hover .roundarrow{transform:rotate(45deg) scale(1.06)}.cardindex{font-size:14px;background:var(--lime);color:var(--blue)}.servicegrid>.servicecard:last-child{padding:0;background:var(--blue)}.servicegrid>.servicecard:last-child:hover h3{color:white}
.magnetic{translate:var(--mag-x,0px) var(--mag-y,0px);transition:translate .45s var(--ease-out),background .35s,box-shadow .35s,transform .35s}.button{border:0;border-radius:100px;padding:18px 28px;min-height:58px;box-shadow:0 8px 20px -12px #2a399460}.button:hover{transform:none;box-shadow:0 14px 28px -16px #2a399480}.navaction{border-radius:100px}.button:after,.navaction:after{transition:transform .8s var(--ease-out)}.textlink{background-image:linear-gradient(var(--blue),var(--blue));background-repeat:no-repeat;background-size:0 2px;background-position:left bottom;transition:background-size .6s var(--ease-out),color .3s;border-bottom-color:#2a39942b}.textlink:hover{background-size:100% 2px}
.visual-3d{transform:perspective(1200px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .6s var(--ease-out)}.visual-3d img{animation:none!important;transition:transform 1s var(--ease-out)}.visual-3d:hover img{transform:scale(1.035)}.agencywide,.agencyteaser>img{transform:translate3d(0,var(--parallax-y,0px),0)}
/* Native horizontal portfolio: no wheel trapping, no fake case-study claims. */
.portfolio-section{background:#111a49;color:white;padding:110px 0 48px;overflow:hidden;margin-top:0;position:relative}.portfolio-heading{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:55px}.portfolio-heading .eyebrow{color:var(--lime)}.portfolio-heading h2{font-size:clamp(3rem,6.3vw,6.5rem);line-height:1.05;margin-bottom:0}.portfolio-heading h2 em{font-style:normal;color:var(--lime)}.portfolio-intro{max-width:380px}.portfolio-intro p{color:#d3d9ee;font-size:17px}.portfolio-controls{display:flex;gap:10px;align-items:center}.portfolio-count{font:600 14px Manrope;margin-right:auto;letter-spacing:.12em}.portfolio-controls button{width:48px;height:48px;border-radius:50%;border:1px solid #ffffff55;background:transparent;color:white;font-size:25px;transition:background .3s,color .3s,transform .3s}.portfolio-controls button:hover:not(:disabled){background:var(--lime);color:var(--blue);transform:scale(1.06)}.portfolio-controls button:disabled{opacity:.3}.portfolio-section :focus-visible{outline-color:var(--lime)}
.portfolio-track{display:flex;gap:30px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:12px max(46px,calc((100vw - 1228px)/2)) 30px;scroll-padding-left:max(46px,calc((100vw - 1228px)/2));scrollbar-width:thin;scrollbar-color:#8ca42a #ffffff12;position:relative;overscroll-behavior-x:contain}.project-card{display:block;flex:0 0 min(69vw,850px);scroll-snap-align:start;min-width:0;transform:perspective(1500px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .65s var(--ease-out)}.project-media{position:relative;overflow:hidden;aspect-ratio:1.6;border-radius:3px;background:#25306d;isolation:isolate}.project-media:after{content:'';position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#050e3055);pointer-events:none}.project-media img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease-out);transform:scale(1.015)}.project-card:hover .project-media img,.project-card:focus-visible .project-media img{transform:scale(1.065)}.project-number{position:absolute;top:22px;left:24px;z-index:1;font:500 14px Manrope;letter-spacing:.15em;background:#111a49c9;border:1px solid #ffffff40;padding:9px 12px;border-radius:100px}.project-action{position:absolute;right:24px;bottom:24px;z-index:1;display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:var(--lime);color:var(--blue);font-size:29px;transition:transform .6s var(--ease-out)}.project-card:hover .project-action{transform:rotate(45deg)}.project-info{display:flex;justify-content:space-between;align-items:end;gap:20px;padding:24px 0 0}.project-info h3{font-size:clamp(1.8rem,3vw,2.8rem);margin:8px 0 0;transition:translate .6s var(--ease-out);letter-spacing:-.045em}.project-category{font-size:12px;letter-spacing:.12em;color:var(--lime);display:block;transition:opacity .5s,translate .5s}.project-info>span{font-size:14px;color:#bbc5e1;white-space:nowrap}.project-card:hover h3{translate:8px 0}.project-card:hover .project-category{translate:4px 0}.portfolio-bottom{display:flex;gap:25px;align-items:center;margin-top:22px;font-size:12px;color:#b5bfdb}.portfolio-bottom>span{white-space:nowrap}.portfolio-progress{height:2px;background:#ffffff24;flex:1;overflow:hidden}.portfolio-progress>span{display:block;height:100%;background:var(--lime);transform:scaleX(.15);transform-origin:left;transition:transform .25s}
@media(hover:hover) and (pointer:fine){.project-category{opacity:.68;translate:0 5px}.project-card:hover .project-category,.project-card:focus-visible .project-category{opacity:1;translate:0 0}}
.studio-cursor{position:fixed;top:0;left:0;z-index:110;pointer-events:none;opacity:0;transition:opacity .2s;color:var(--blue)}.studio-cursor:before{content:'';position:absolute;left:0;top:0;width:24px;height:24px;border-radius:50%;border:1px solid #2a39947a;transform:translate(-50%,-50%);transition:width .3s var(--ease-out),height .3s var(--ease-out),background .3s,border-color .3s}.studio-cursor>span{position:absolute;left:0;top:0;transform:translate(-50%,-50%);font:700 12px Manrope;opacity:0;transition:opacity .2s;white-space:nowrap}.studio-cursor.is-active{opacity:1}.studio-cursor.is-link:before{width:48px;height:48px;border-color:var(--blue);background:#c7fe021c}.studio-cursor.is-project:before{width:92px;height:92px;background:var(--lime);border-color:var(--lime)}.studio-cursor.is-project>span{opacity:1}.studio-cursor.is-input{opacity:0}.floating-whatsapp{animation:none!important;transition:transform .4s,width .25s,border-radius .25s,background .25s}.floating-whatsapp:hover{transform:translateY(-3px)}
.endcta{position:relative;isolation:isolate;overflow:hidden;padding:85px 0}.endcta:before{content:'';position:absolute;z-index:-1;inset:0;background:linear-gradient(115deg,transparent 55%,#2a39940a 55.1%,transparent 55.3%);pointer-events:none}.endcta h2{font-size:clamp(2.5rem,4.5vw,4.5rem)}.faq summary{transition:color .3s}.faq[open] summary{color:var(--blue)}.faq[open] p{animation:quiet-arrive .4s var(--ease-out)}.project-form:focus-within{border-color:#2a399460;box-shadow:0 25px 60px -30px #2a399444}.project-form{transition:border-color .3s,box-shadow .4s}.project-form label{font-size:14px}.project-form input,.project-form select,.project-form textarea{font-size:16px}.reading-progress{height:3px;z-index:105}
@view-transition{navigation:auto}::view-transition-old(root){animation:page-out .22s ease both}::view-transition-new(root){animation:page-in .45s var(--ease-out) both}@keyframes page-out{to{opacity:0;transform:translateY(-8px)}}@keyframes page-in{from{opacity:0;transform:translateY(12px);filter:blur(2px)}to{opacity:1;transform:none;filter:none}}
@media(min-width:1500px){.portfolio-track{padding-left:max(46px,calc((100vw - 1308px)/2));scroll-padding-left:max(46px,calc((100vw - 1308px)/2))}}
@media(max-width:1100px){.nav nav{gap:16px;font-size:13px}.navaction{padding:12px 14px}.homehero h1{font-size:clamp(3.2rem,6.3vw,5rem)}.heroheading{gap:35px}.portfolio-heading{gap:35px}.portfolio-track{padding-left:28px;scroll-padding-left:28px}.project-info>span{display:none}}
@media(max-width:900px){.nav nav{gap:12px}.brand .brand-name{font-size:20px}.nav{gap:14px}.navaction{max-width:165px;text-align:center}.heroheading{grid-template-columns:1.2fr 1fr}.homehero h1{font-size:clamp(3rem,6vw,4.4rem)}}
@media(max-width:720px){.studio-cursor{display:none}.homehero{padding-top:45px}.homehero h1{font-size:clamp(2.8rem,11.1vw,4.5rem);line-height:1.08}.heroheading{grid-template-columns:1fr;gap:30px}.herocopy{max-width:100%}.heroimage{height:360px}.heroimage>img{transform:translateY(var(--parallax-y,0px)) scale(1.12)}.heroimage .herostamp{bottom:65px;width:82px;height:82px;font-size:11px}.tangier-inset{width:138px;height:86px;bottom:64px;right:18px}.imagecaption{font-size:9px;gap:12px;padding:35px 18px 16px}.eyebrow{font-size:12px}.ticker{font-size:12px;padding:22px 20px;gap:14px}.portfolio-section{padding-top:65px;padding-bottom:30px}.portfolio-heading{display:block;margin-bottom:30px}.portfolio-heading h2{font-size:3.6rem}.portfolio-intro{margin-top:24px;max-width:100%}.portfolio-controls{margin-top:25px}.portfolio-track{padding:8px 21px 25px;gap:18px;scroll-padding-left:21px}.project-card{flex-basis:86vw}.project-media{aspect-ratio:1.12}.project-info{padding-top:18px}.project-info h3{font-size:1.8rem}.project-category{font-size:10px;letter-spacing:.08em;opacity:1}.project-number{left:16px;top:16px;font-size:12px}.project-action{width:44px;height:44px;font-size:24px;bottom:16px;right:16px}.portfolio-bottom{font-size:11px;gap:15px}.portfolio-bottom>span:last-child{display:none}.servicecard{padding:0;border:0}.servicecard:hover{box-shadow:none}.cardbody{padding:22px 0 0}.navaction{max-width:none}.button{min-height:54px}.endcta{padding:65px 0}.depth-card,.magnetic{transform:none!important;translate:none!important}.brand .brand-name small{font-size:7px}.servicehero h1{font-size:clamp(2.2rem,9.5vw,3rem);overflow-wrap:anywhere}.word-mask{max-width:100%}}
@media(prefers-reduced-motion:reduce){:root,.portfolio-track{scroll-behavior:auto!important}*,*:before,*:after{animation:none!important;transition:none!important}.studio-cursor{display:none!important}.word-mask>span,.motion-reveal{opacity:1!important;transform:none!important;translate:none!important;clip-path:none!important}.heroimage{clip-path:none!important;opacity:1!important}.heroimage>img{transform:none!important}.depth-card,.magnetic,.agencywide,.agencyteaser>img{transform:none!important;translate:none!important}.project-category{opacity:1;translate:none}.project-media img,.visual-3d img{transform:none!important}::view-transition-old(root),::view-transition-new(root){animation:none!important}}
.parallax-type{transform:translate3d(0,var(--parallax-y,0px),0)}.motion-enabled .homehero:before{animation:ambient-arrival 2s var(--ease-out) both}@keyframes ambient-arrival{from{opacity:0;transform:translateX(30px)}to{opacity:.8;transform:translateX(0)}}
@media(min-width:1050px){.bluepanel .split{align-items:start}.bluepanel .split>div:first-child{position:sticky;top:135px}}
@media(max-width:1024px){.nav{height:76px}.menu{display:flex;gap:15px;align-items:center;padding:10px 12px;background:var(--pale);border:0;border-radius:4px;font-size:14px}.nav nav{display:none;position:absolute;top:76px;left:0;right:0;background:white;border-bottom:1px solid var(--line);padding:22px;align-items:stretch;flex-direction:column;gap:22px;max-height:calc(100dvh - 76px);overflow:auto;font-size:16px}.nav nav.open{display:flex}.dropdown{position:static;width:100%;box-shadow:none;margin-top:15px}.navaction{max-width:none;text-align:center}.brand .brand-name{font-size:22px}}
@media(prefers-reduced-motion:reduce){.parallax-type{transform:none!important}}
@media(max-width:400px){.servicehero h1{font-size:clamp(1.6rem,8.1vw,2rem)}h2{font-size:clamp(1.65rem,8.4vw,2.1rem)}.portfolio-heading h2{font-size:clamp(2.6rem,11.5vw,3rem)}.mobile-contact{padding-left:15px;padding-right:15px;gap:10px}.mobile-contact a{white-space:nowrap;padding:12px 14px}.mobile-contact>span{font-size:12px}.nav{gap:8px}.brand .brand-name{font-size:20px}.menu{gap:8px;padding:10px}}
.service-scenes{border-top:1px solid var(--line)}.scene-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}.service-scene{margin:0;min-width:0}.scene-image{position:relative;aspect-ratio:1.5;overflow:hidden;border-radius:6px;background:var(--pale)}.scene-image img{width:100%;height:100%;object-fit:cover;transition:transform 1s var(--ease-out)}.service-scene:hover img{transform:scale(1.035)}.scene-index{position:absolute;left:18px;top:18px;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--lime);color:var(--blue);font:700 14px Manrope}.service-scene figcaption{padding-top:24px}.service-scene h3{font-size:25px;margin-bottom:12px}.service-scene p{font-size:16px;margin-bottom:0}.scene-note{font-size:13px;margin:30px 0 0;color:var(--muted)}
@media(max-width:720px){.scene-grid{grid-template-columns:1fr;gap:35px}.service-scene h3{font-size:23px}.service-scene figcaption{padding-top:20px}}
@media(prefers-reduced-motion:reduce){.service-scene:hover img{transform:none}}
.page-photos{border-top:1px solid var(--line)}.page-photos .scene-grid>.service-scene:nth-child(3){grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}.page-photos .scene-grid>.service-scene:nth-child(3) figcaption{padding:0}.welcome-assistant{position:fixed;right:24px;bottom:104px;z-index:60}.assistant-launcher{display:grid;place-items:center;width:58px;height:58px;margin-left:auto;border:2px solid white;border-radius:50%;background:var(--blue);color:white;box-shadow:0 8px 25px #101e3626;font-size:27px;transition:transform .3s,background .3s}.assistant-launcher:hover{transform:translateY(-3px);background:#202c74}.assistant-panel[hidden]{display:none!important}.assistant-panel{width:350px;max-width:calc(100vw - 32px);margin-bottom:14px;padding:22px;border:1px solid #2a399420;border-radius:16px;background:white;box-shadow:0 18px 65px #101e3626;animation:assistant-enter .4s var(--ease-out)}.assistant-heading{display:flex;gap:12px;align-items:center;margin-bottom:16px}.assistant-avatar{display:grid;place-items:center;flex:0 0 40px;height:40px;border-radius:12px;background:var(--lime);font-size:24px}.assistant-heading strong{display:block;font:700 15px/1.4 Manrope;color:var(--blue)}.assistant-heading>div>span{display:block;font-size:12px;color:var(--muted);margin-top:4px}.assistant-close{align-self:start;margin:-10px -10px 0 auto;border:0;background:transparent;color:var(--ink);width:36px;height:36px;flex:0 0 36px;font-size:25px}.assistant-panel p{font-size:15px;line-height:1.65;margin:0 0 18px}.assistant-choices{display:grid;gap:9px}.assistant-choices a{display:block;padding:13px 15px;text-align:center;border-radius:8px;font-size:14px;font-weight:700;line-height:1.5;transition:background .2s}.assistant-form{background:var(--blue);color:white}.assistant-form:hover{background:#202c74}.assistant-whatsapp{background:var(--lime);color:var(--ink)}.assistant-whatsapp:hover{background:#b9ee00}#formulaire{scroll-margin-top:105px}@keyframes assistant-enter{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:720px){.welcome-assistant{right:18px;bottom:158px}.assistant-launcher{width:52px;height:52px;font-size:24px}.assistant-panel{width:320px;padding:18px;max-height:calc(100dvh - 240px);overflow-y:auto}.assistant-panel p{font-size:14px}.page-photos .scene-grid>.service-scene:nth-child(3){display:block}.page-photos .scene-grid>.service-scene:nth-child(3) figcaption{padding-top:20px}}
@media(prefers-reduced-motion:reduce){.assistant-panel{animation:none}.assistant-launcher:hover{transform:none}}
.assistant-avatar{color:var(--blue)}.assistant-launcher>span{display:grid;place-items:center}
/* Clearer decisions, fewer competing prompts. */
body{padding-bottom:0}.welcome-assistant{bottom:102px}.assistant-launcher{width:auto;min-width:58px;padding:12px 17px;gap:9px;display:flex;align-items:center}.assistant-launcher>b{font:700 13px Manrope;color:white;white-space:nowrap}.assistant-launcher>span svg{width:25px;height:25px}.floating-whatsapp{bottom:25px}.next-steps{margin-top:30px;padding-top:25px;border-top:1px solid var(--line)}.next-steps h3{font-size:21px;margin-bottom:18px}.next-steps ol{list-style:none;counter-reset:next;padding:0;margin:0;display:grid;gap:20px}.next-steps li{counter-increment:next;position:relative;padding-left:36px}.next-steps li:before{content:'0' counter(next);position:absolute;left:0;top:2px;font:700 13px Manrope;color:var(--blue)}.next-steps strong{display:block;font-size:16px;margin-bottom:5px}.next-steps li span{display:block;font-size:15px;line-height:1.6;color:var(--muted)}.form-status a{display:inline-block;color:var(--blue);text-decoration:underline;text-underline-offset:4px}.form-note{line-height:1.65;display:block;margin-top:16px}.portfolio-proof{padding-top:26px}.portfolio-proof a{font-size:15px;color:var(--lime);border-bottom:1px solid #c7fe0266;padding-bottom:7px}.agency-figure{margin:0}.agency-figure figcaption{font-size:13px;color:var(--muted);margin-top:12px}.contact-details>.next-steps{padding:25px 0}.contact-intro{max-width:900px}.inquiry-grid h2{font-size:clamp(2rem,3.1vw,3rem)}.heroheading .herocopy{max-width:710px}.heroheading .herocopy p{font-size:19px}.homehero h1{font-size:clamp(3.3rem,6.2vw,6rem)}.project-card .project-info>span{white-space:normal}.scene-note{max-width:600px}.portfolio-heading h2{font-size:clamp(3rem,5.6vw,5.5rem)}
@media(max-width:720px){.welcome-assistant{right:18px;bottom:95px}.assistant-launcher{padding:10px 13px;min-width:50px;min-height:50px}.assistant-launcher>b{font-size:12px}.floating-whatsapp{bottom:22px}.assistant-panel{max-height:calc(100dvh - 180px)}.homehero h1{font-size:clamp(2.65rem,10.4vw,4rem)}.heroheading .herocopy p{font-size:17px}.portfolio-heading h2{font-size:clamp(2.65rem,10vw,3.5rem)}.inquiry-grid h2{font-size:2rem}.next-steps{margin-top:24px}.contact-details>.next-steps{margin-top:8px}.endcta .contact-action{padding-bottom:20px}}
/* Basketball: one bounce, then rest. The silhouette is an image asset. */
.basket-motion-mark{display:block;width:88px;height:100px;position:relative;margin:0 0 15px;pointer-events:none;isolation:isolate}.basket-motion-mark img{display:block;width:88px;height:88px;object-fit:contain;transform-origin:50% 88%;position:relative;z-index:1}.basket-motion-mark:after{content:'';position:absolute;bottom:6px;left:24px;right:24px;height:5px;background:#2a399421;border-radius:50%;transform:scaleX(.8);opacity:.6}.basket-motion-mark.is-bouncing img{animation:basket-rebound .95s both}.basket-motion-mark.is-bouncing:after{animation:basket-contact .95s both}.basketball-project .project-info>div{position:relative;padding-right:76px}.basketball-project .basket-motion-mark{position:absolute;right:0;bottom:-7px;width:66px;height:78px;margin:0}.basketball-project .basket-motion-mark img{width:66px;height:66px}.basketball-project .basket-motion-mark:after{left:18px;right:18px;background:#c7fe0240}.basketball-project:hover .project-action{transform:translateY(-6px) rotate(45deg)}.basket-concept .eyebrow{letter-spacing:.15em}.basket-concept .visual-3d{transition:transform .6s var(--ease-out),box-shadow .6s}.basket-concept:hover .visual-3d{box-shadow:0 26px 55px -32px #2a39946b}
@keyframes basket-rebound{0%{transform:translateY(0) rotate(-8deg)}18%{transform:translateY(-22px) rotate(3deg);animation-timing-function:cubic-bezier(.55,0,1,.5)}46%{transform:translateY(0) rotate(12deg) scale(1.05,.95)}59%{transform:translateY(-8px) rotate(16deg)}78%{transform:translateY(0) rotate(20deg) scale(1.02,.98)}100%{transform:translateY(0) rotate(0) scale(1)}}@keyframes basket-contact{0%,46%,78%,100%{transform:scaleX(1);opacity:.65}18%{transform:scaleX(.55);opacity:.25}59%{transform:scaleX(.75);opacity:.4}}
@media(max-width:720px){.basket-motion-mark{width:70px;height:80px}.basket-motion-mark img{width:70px;height:70px}.basketball-project .project-info>div{padding-right:65px}.basketball-project .basket-motion-mark{width:54px;height:65px}.basketball-project .basket-motion-mark img{width:54px;height:54px}.basketball-project .project-info h3{font-size:1.65rem}}
@media(prefers-reduced-motion:reduce){.basket-motion-mark img,.basket-motion-mark:after{animation:none!important;transform:none!important}.basketball-project:hover .project-action{transform:none}}

/* A real client story takes priority over illustrative concepts. */
.case-heading{padding-bottom:36px}.case-heading h1{font-size:clamp(2.5rem,5.4vw,5rem);line-height:1.06;max-width:1000px;margin:22px 0}.case-heading .lead{max-width:700px}.case-tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}.case-tags span{border:1px solid #2a399430;border-radius:30px;padding:8px 15px;font-size:.875rem;color:#2a3994}.case-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,400px);gap:8%;align-items:start;padding-top:24px}.case-story article{padding:32px 0;border-top:1px solid #2a399420}.case-story h2{font-size:clamp(1.8rem,3vw,3rem);margin:15px 0}.case-story p{font-size:1.05rem;line-height:1.8}.case-deliverables{list-style:none;padding:0;margin:24px 0}.case-deliverables li{display:grid;gap:6px;padding:20px 0;border-bottom:1px solid #2a399420}.case-deliverables span{line-height:1.65;color:#586579}.case-video{position:sticky;top:110px;min-width:0}.reel-player{overflow:hidden;border-radius:22px;background:#2a3994;min-height:560px}.reel-cover{min-height:560px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:32px;color:white}.reel-cover .eyebrow{color:#c7fe02}.reel-cover strong{font-size:3rem;line-height:1.05;margin:26px 0 36px}.reel-cover p{font-size:.875rem;line-height:1.6;color:#fff9;margin-top:24px}.reel-cover button{cursor:pointer;border:0;font:inherit}.reel-player iframe{display:block;width:100%;height:650px;border:0;background:white}.reel-fallback{font-size:.875rem;line-height:1.7;padding:0 8px}.reel-fallback a{text-decoration:underline;color:#2a3994}.case-teaser,.case-next{display:flex;align-items:center;justify-content:space-between;gap:36px;border-top:1px solid #2a399430}.case-teaser p,.case-next p{max-width:640px;line-height:1.75}.case-teaser .button,.case-next .button{flex-shrink:0}.case-teaser h2{font-size:clamp(2rem,3.8vw,3.8rem)}@media(max-width:1000px){.case-teaser{align-items:flex-start;flex-direction:column}}@media(max-width:700px){.case-layout{grid-template-columns:1fr;gap:24px}.case-video{position:static}.case-next{align-items:flex-start;flex-direction:column}.case-heading h1{font-size:2.6rem}.reel-cover,.reel-player{min-height:440px}.reel-cover{padding:26px}.reel-cover strong{font-size:2.7rem}.case-teaser .button{white-space:normal}}

.client-testimonials h1{font-size:clamp(2.5rem,4.7vw,4.8rem);line-height:1.06;margin:20px 0}.testimonial-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:36px}.testimonial-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border:1px solid #2a399424;border-radius:22px;overflow:hidden;background:#fff;align-items:start}.testimonial-card video{display:block;width:100%;height:auto;aspect-ratio:9/16;background:#111;object-fit:contain}.testimonial-copy{padding:26px 22px}.testimonial-copy h3{font-size:1.7rem;margin:18px 0 8px}.testimonial-copy p{font-size:1rem;line-height:1.7}.testimonial-copy .eyebrow{font-size:.75rem;letter-spacing:.07em}.testimonial-company{color:#2a3994;font-weight:600}.case-heading h2{font-size:clamp(2.2rem,4vw,4rem);line-height:1.1}@media(max-width:1100px){.testimonial-card{grid-template-columns:1fr}.testimonial-card video{max-height:520px;object-fit:contain}.testimonial-copy{padding:24px}}@media(max-width:600px){.testimonial-grid{grid-template-columns:1fr;gap:28px}.testimonial-card video{max-height:none}.client-testimonials h1{font-size:2.5rem}}

.reel-player.direct-testimonial{min-height:0;background:#111}.direct-testimonial video{display:block;width:100%;height:auto;aspect-ratio:9/16;object-fit:contain}

.client-video-wrap{position:relative;width:100%;aspect-ratio:9/16;background:#111;overflow:hidden}.client-video-wrap video{width:100%;height:100%;max-height:none;object-fit:contain}.client-video-cover{position:absolute;inset:0;width:100%;height:100%;padding:0;border:0;text-align:left;cursor:pointer;color:white;background:#2a3994;font:inherit}.client-video-cover[hidden]{display:none}.client-video-cover>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.client-video-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,25,70,.6),transparent 35%,rgba(14,24,69,.2) 50%,#142363 100%)}.cover-brand{position:absolute;z-index:1;top:18px;left:18px;right:18px;font-size:12px;font-weight:800;letter-spacing:.08em;display:flex;justify-content:space-between;gap:8px}.cover-brand>span{font-weight:500;letter-spacing:0}.cover-play{position:absolute;z-index:1;top:48%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#c7fe02;color:#2a3994;font-size:21px;box-shadow:0 0 0 9px #ffffff20;transition:box-shadow .2s}.client-video-cover:hover .cover-play{box-shadow:0 0 0 14px #ffffff20}.client-video-cover:focus-visible{outline:4px solid #c7fe02;outline-offset:-4px}.cover-caption{position:absolute;z-index:1;bottom:24px;left:20px;right:20px;display:grid;gap:8px}.cover-caption small{font-size:12px;color:#c7fe02;font-weight:700;letter-spacing:.07em}.cover-caption strong{font-size:clamp(1.2rem,1.8vw,1.8rem);line-height:1.1}.cover-caption>span{font-size:14px;line-height:1.4}.testimonial-card{grid-template-columns:1fr}.testimonial-card .client-video-wrap{max-width:320px;margin:auto}.testimonial-card{background:#f3f5fa}.testimonial-copy{background:white;width:100%;box-sizing:border-box}.direct-testimonial .client-video-wrap{max-width:400px;margin:auto}@media(max-width:600px){.testimonial-card .client-video-wrap{max-width:none}.cover-caption strong{font-size:1.7rem}}@media(prefers-reduced-motion:reduce){.cover-play{transition:none}}

.home-testimonials .testimonial-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.home-testimonials .testimonial-card{display:flex;flex-direction:column}.home-testimonials .client-video-wrap{width:100%;max-width:none;aspect-ratio:3/4}.home-testimonials .client-video-wrap video{object-fit:contain}.home-testimonials .client-video-cover>img{object-position:center 32%}.home-testimonials .testimonial-copy{flex:1;padding:24px}.home-testimonials .cover-caption strong{font-size:1.5rem}.all-testimonials{display:inline-block;margin-top:30px}.heroheading{position:relative}.basket-opening{display:none;position:absolute;z-index:3;left:50%;top:0;transform:translateX(-50%);width:180px;height:230px;pointer-events:none}.basket-opening img{position:relative;z-index:1;width:180px;height:180px;object-fit:contain}.basket-opening>span{position:absolute;left:35px;bottom:12px;width:110px;height:13px;border-radius:50%;background:#19296b29;filter:blur(5px)}
@media(prefers-reduced-motion:no-preference){.motion-enabled .basket-opening{display:block;animation:basket-exit .25s ease-in 1.1s both}.motion-enabled .basket-opening img{animation:basket-entry 1.15s both}.motion-enabled .basket-opening>span{animation:basket-shadow 1.15s both}.motion-enabled.motion-ready .homehero .word-mask>span{animation-delay:calc(1.2s + var(--word-delay,0ms))}.motion-enabled .homehero .heroheading>.herocopy>*{animation-delay:1.4s}.motion-enabled .homehero .heroheading .eyebrow{animation-delay:1.2s}.motion-enabled .homehero .heroimage{animation-delay:1.1s}}
@keyframes basket-entry{0%{transform:translateY(-110px) scale(.65) rotate(-24deg);opacity:0}15%{opacity:1}36%{transform:translateY(32px) scale(1.08,.91) rotate(0)}58%{transform:translateY(-38px) scale(.97,1.03) rotate(12deg)}77%{transform:translateY(32px) scale(1.04,.96) rotate(20deg)}91%{transform:translateY(5px) scale(1) rotate(24deg)}100%{transform:translateY(32px) scale(1) rotate(26deg)}}@keyframes basket-shadow{0%,58%{opacity:.25;transform:scale(.55)}36%,77%,100%{opacity:1;transform:scale(1)}}@keyframes basket-exit{from{opacity:1}to{opacity:0;visibility:hidden}}
@media(max-width:900px){.home-testimonials .testimonial-grid{gap:15px}.home-testimonials .testimonial-copy{padding:18px}.home-testimonials .cover-caption{left:14px;right:14px}.home-testimonials .cover-caption strong{font-size:1.2rem}}@media(max-width:680px){.home-testimonials .testimonial-grid{grid-template-columns:1fr}.home-testimonials .testimonial-card{max-width:400px;width:100%;margin:auto}.home-testimonials .cover-caption strong{font-size:1.7rem}.basket-opening{width:140px;height:190px;top:20px}.basket-opening img{width:140px;height:140px}.basket-opening>span{left:25px;width:90px}}

.brand-film-section{margin-top:48px;background:#18245d;color:#fff;padding:76px 0}.brand-film-grid{display:grid;grid-template-columns:.85fr 1.35fr;gap:60px;align-items:center}.brand-film-copy .eyebrow{color:#c7fe02}.brand-film-copy h2{font-size:clamp(2.2rem,3.7vw,3.7rem);line-height:1.06;margin:24px 0}.brand-film-copy h2 em{color:#c7fe02;font-style:normal}.brand-film-copy p{color:#dde2fa;font-size:17px;line-height:1.8;margin-bottom:28px}.brand-film-copy .textlink{color:#fff}.brand-film .client-video-wrap{aspect-ratio:16/9;border-radius:16px;border:1px solid #ffffff24}.brand-film .client-video-cover>img{object-fit:cover}.brand-film .cover-caption{bottom:20px}.brand-film .cover-caption strong{font-size:clamp(1rem,1.8vw,1.6rem)}.brand-film .cover-play{top:44%;width:54px;height:54px}.brand-film-caption{display:flex;justify-content:space-between;gap:16px;padding-top:16px;font-size:12px;letter-spacing:.07em;color:#c4cbea}.brand-film-caption>span:first-child{color:#c7fe02;font-weight:700}@media(max-width:850px){.brand-film-grid{grid-template-columns:1fr;gap:32px}.brand-film-section{padding:50px 0}.brand-film-copy{max-width:600px}}@media(max-width:440px){.brand-film .cover-caption{left:14px;bottom:12px;gap:4px}.brand-film .cover-caption small{font-size:10px}.brand-film .cover-brand{top:12px;left:14px;right:14px;font-size:10px}.brand-film .cover-play{width:42px;height:42px;font-size:17px}.brand-film-caption{font-size:10px;letter-spacing:.03em}}

/* Official supplied navbar logo: full proportions, no zoom or clipping. */
header .official-navbar-brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0;text-decoration:none}header .official-navbar-brand .brand-symbol{width:54px;height:54px;flex:0 0 54px;border-radius:3px;overflow:visible;background:transparent}header .official-navbar-brand .brand-symbol img{display:block;width:100%;height:100%;max-width:100%;object-fit:contain;transform:none}header .official-navbar-brand:focus-visible{outline:3px solid var(--blue);outline-offset:5px;border-radius:4px}@media(max-width:720px){header .official-navbar-brand{gap:9px}header .official-navbar-brand .brand-symbol{width:44px;height:44px;flex-basis:44px}header .official-navbar-brand .brand-name{font-size:20px}}@media(max-width:360px){header .official-navbar-brand .brand-symbol{width:40px;height:40px;flex-basis:40px}header .official-navbar-brand .brand-name{font-size:18px}}
