.main-header-box p.lead-line{max-width:900px}.projects-label,.clients-label{letter-spacing:.12em;text-transform:uppercase;margin:96px 0 28px;font-size:14px;font-weight:500;line-height:1.5}.intro-divider{border:0;border-top:1px solid #00000014;height:0;margin:30px 0 0}.intro-divider+.projects-label{margin-top:65px}@media (forced-colors:active){.intro-divider{border-top-color:canvastext}}.projects{--projects-row-gap:32px;column-gap:32px;row-gap:var(--projects-row-gap);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.projects>li{min-width:0}.project-card{cursor:pointer;transition:transform .35s cubic-bezier(.2,.7,.2,1);position:relative}.project-card__media{aspect-ratio:4/3;background:#f2f2f2;border-radius:8px;transition:box-shadow .35s;position:relative;overflow:hidden;box-shadow:0 0 0 1px #0000000a}.project-card__open{z-index:1;color:#fff;opacity:0;background:#000;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:opacity .3s,transform .35s;display:flex;position:absolute;bottom:28px;right:12px;transform:translate(6px,6px)}.project-card__open svg{width:18px;height:18px}.project-card{flex-direction:column;min-width:0;display:flex}.project-card__meta{display:contents}.project-card__title{margin:16px 0 4px;font-size:22px;font-weight:600;line-height:1.3}.project-card__title-end{white-space:nowrap}.project-card__button{all:unset;cursor:pointer}.project-card__button:after{content:"";z-index:2;position:absolute;inset:0}.project-card__button:focus-visible{outline:none}.project-card:has(.project-card__button:focus-visible) .project-card__media{outline-offset:4px;outline:3px solid #000}.project-card__arrow{margin-left:8px;transition:transform .35s;display:inline-block}.project-card__summary{color:#333;margin:0;font-size:15px;line-height:1.5}.project-card__credits{padding-top:16px}.project-card__stack{color:#6b6b6b;margin:0;font-size:12px;font-weight:400;line-height:1.5}.project-card:hover,.project-card:has(.project-card__button:focus-visible){transform:translateY(-6px)}.project-card:hover .project-card__media,.project-card:has(.project-card__button:focus-visible) .project-card__media{box-shadow:0 0 0 1px #0000000a,0 18px 40px #00000029}.project-card:hover .project-card__open,.project-card:has(.project-card__button:focus-visible) .project-card__open{opacity:1;transform:none}.project-card:hover .project-card__arrow,.project-card:has(.project-card__button:focus-visible) .project-card__arrow{transform:translate(4px)}.reel{background:#f2f2f2;width:100%;height:100%;position:relative;overflow:hidden}.reel__still,.reel__video{object-fit:cover;object-position:top center;width:100%;height:100%;display:block;position:absolute;inset:0}.reel__video{opacity:0;transition:opacity .2s}.reel.is-live .reel__video{opacity:1}.reel__thumb,.reel__frames,.reel__frame{position:absolute;inset:0}.reel__frames{opacity:0;transition:opacity .3s}.reel.is-playing .reel__frames{opacity:1}.reel__frame{opacity:0;background:#e9e9e9}.reel__frame--2{background:#f5f5f5}.reel__frame--3{background:#e2e2e2}.reel.is-playing .reel__frame{animation:6s infinite both reel-frame}.reel.is-playing .reel__frame--2{animation-delay:2s}.reel.is-playing .reel__frame--3{animation-delay:4s}.reel.is-paused .reel__frame{animation-play-state:paused}@keyframes reel-frame{0%{opacity:0;transform:translate(8%)scale(1.08)}8%{opacity:1;transform:translate(0)scale(1.04)}33%{opacity:1;transform:scale(1)}41%{opacity:0;transform:translate(-6%)scale(1)}to{opacity:0}}.ph{background:#dcdcdc;border-radius:4px;display:block;position:absolute}.ph--bar{background:#e4e4e4;border-radius:0;height:9%;top:0;left:0;right:0}.reel__frame .ph--bar{background:#d4d4d4}.ph--title{width:48%;height:8%;top:20%;left:8%}.ph--line{background:#e4e4e4;width:66%;height:4%;top:33%;left:8%}.ph--tile{background:#e4e4e4;width:26%;height:36%;top:50%}.ph--t1{left:8%}.ph--t2{left:37%}.ph--t3{left:66%}.ph--side{background:#d6d6d6;width:22%;height:72%;top:18%;left:6%}.ph--panel{background:#f4f4f4;width:61%;height:72%;top:18%;left:33%}.ph--row{background:#e6e6e6;width:84%;height:14%;left:8%}.ph--r1{top:20%}.ph--r2{width:64%;top:42%}.ph--r3{width:74%;top:64%}.ph--hero{background:#cfcfcf;width:84%;height:46%;top:20%;left:8%}.reel__frame--3 .ph--line{background:#d6d6d6;top:74%}.reel__toggle{z-index:1;color:#fff;cursor:pointer;background:#000;border:0;border-radius:20px;height:40px;padding:0 16px;font:600 13px Poppins,sans-serif;position:absolute;bottom:12px;left:12px}.reel__toggle:focus-visible{outline:3px solid #fff;box-shadow:0 0 0 6px #000}.project-dialog{background:0 0;border:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0;overflow:auto}.project-dialog:focus{outline:none}.project-dialog__close:focus:not(:focus-visible),.reel__toggle:focus:not(:focus-visible),.project-dialog__link a:focus:not(:focus-visible){box-shadow:none;outline:none}.project-dialog::backdrop{background:#fffffff0}html:has(.project-dialog[open]){overflow:hidden}.project-dialog__box{background:#fff;border:2px solid #000;border-radius:10px;width:min(1080px,100vw - 32px);margin:6vh auto;padding:20px 20px 26px;position:relative}.project-dialog[open] .project-dialog__box{animation:.38s cubic-bezier(.2,.7,.2,1) dialog-pop}.project-dialog[open]::backdrop{animation:.3s dialog-fade}@keyframes dialog-pop{0%{opacity:0;transform:translateY(16px)scale(.97)}to{opacity:1;transform:none}}@keyframes dialog-fade{0%{opacity:0}to{opacity:1}}.project-dialog__close{z-index:3;color:#000;cursor:pointer;background:#fff;border:2px solid #000;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;padding:0;display:flex;position:absolute;top:-22px;right:-22px}.project-dialog__close svg{width:16px;height:16px}.project-dialog__close:focus-visible{outline-offset:0;outline:3px solid #000}@media (forced-colors:active){.project-dialog__close:focus-visible,.reel__toggle:focus-visible,.project-dialog__link a:focus-visible{outline-offset:2px;outline:3px solid highlight}}.project-dialog .reel{aspect-ratio:4/3;border-radius:6px;width:min(100%,85.3333vh);height:auto;margin:0 auto}.project-dialog__title{margin:20px 0 6px;font-size:28px;font-weight:600;line-height:1.3}.project-dialog__details{max-width:760px;margin:0 0 6px;font-size:16px;line-height:1.55}.project-dialog__stack{color:#6b6b6b;margin:16px 0 6px;font-size:13px;font-weight:400;line-height:1.5}.project-dialog__link{margin:0}.project-dialog__link a{color:#000;font-size:15px;font-weight:600;text-decoration:underline}.project-dialog__link a:focus-visible{outline-offset:3px;outline:3px solid #000}@media (width>=768px) and (width<=1023px){.projects{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=768px){.project-card__title{margin:24px 0 12px}.project-card__credits{padding-top:16px}.project-card__stack{line-height:1.7}}@media (width>=1024px){.projects{--projects-row-gap:88px;column-gap:48px}}@media (width<=767px){.main-header-box h2,.main-header-box .hello{font-size:72px}.main-header-box h3,.main-header-box .im{font-size:30px}.main-header-box p:not(.hello){font-size:16px}.projects-label,.clients-label{margin-top:64px}.intro-divider+.projects-label{margin-top:33px}.projects{--projects-row-gap:24px;grid-template-columns:minmax(0,1fr);column-gap:40px}.projects>li+li{border-top:1px solid #00000014;padding-top:24px}.project-dialog__box{margin:56px auto 24px;padding:12px 12px 20px}.project-dialog__close{top:-52px;right:0}.project-dialog__title{font-size:22px}}@media (prefers-reduced-motion:reduce){.project-card,.project-card__media,.project-card__open,.project-card__arrow,.reel__frames{transition:none}.project-card:hover,.project-card:has(.project-card__button:focus-visible),.project-card:hover .project-card__arrow,.project-card:has(.project-card__button:focus-visible) .project-card__arrow{transform:none}.reel.is-playing .reel__frames{opacity:0}.reel.is-playing .reel__frame,.project-dialog[open] .project-dialog__box,.project-dialog[open]::backdrop{animation:none}.reel__video,.reel__toggle{display:none}}.rm .project-card,.rm .project-card__media,.rm .project-card__open,.rm .project-card__arrow,.rm .reel__frames{transition:none}.rm .project-card:hover,.rm .project-card:has(.project-card__button:focus-visible),.rm .project-card:hover .project-card__arrow,.rm .project-card:has(.project-card__button:focus-visible) .project-card__arrow{transform:none}.rm .reel.is-playing .reel__frames{opacity:0}.rm .reel.is-playing .reel__frame,.rm .project-dialog[open] .project-dialog__box,.rm .project-dialog[open]::backdrop{animation:none}.rm .reel__video,.rm .reel__toggle{display:none}@font-face{font-family:Typesoft Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/typesoft-mono-400-subset.woff2)format("woff2")}.lead-line{position:relative}.js .lead-line__text{opacity:0}.stream{pointer-events:none;user-select:none;position:absolute;inset:0;overflow:clip}.stream .w{opacity:0;transition:opacity .14s linear}.stream .w.on{opacity:1}.stream__cursor{will-change:transform;opacity:0;background:#000;width:.5em;height:1.05em;position:absolute;top:0;left:0}.stream.is-streaming .stream__cursor,.stream.is-done .stream__cursor{opacity:1}@media (prefers-reduced-motion:reduce){.js .lead-line__text{opacity:1}.stream{display:none}}html.rm .lead-line__text{opacity:1}html.rm .stream{display:none}@media (forced-colors:active){.js .lead-line__text{opacity:1}.stream{display:none}}.stream__status{white-space:nowrap;opacity:0;color:#6b6b6b;align-items:center;gap:.6em;height:30px;font-family:Typesoft Mono,ui-monospace,monospace;font-size:15px;transition:opacity .2s linear;display:flex;position:absolute;top:0;left:0;right:0;overflow:hidden}.stream.is-working .stream__status{opacity:1}.stream.is-working.is-settled .stream__status{opacity:0}.stream__glyph{color:#000;flex:none;width:16px;height:16px}.stream__glyph svg{width:100%;height:100%;display:block;overflow:visible}.stream.is-working .stream__glyph svg{animation:1.1s linear infinite c-spin,.9s ease-in-out infinite c-pulse}.stream.is-settled .stream__glyph svg{animation-play-state:paused}.stream__phrase{text-overflow:ellipsis;transition:opacity .1s linear;overflow:hidden}.stream__phrase.is-swapping{opacity:0}.stream--c.is-done .stream__cursor{animation:.45s step-end 4 forwards c-blink}.stream--c.is-idle .stream__cursor{opacity:0;visibility:hidden;transition:none}@keyframes c-blink{0%{opacity:1}50%,to{opacity:0}}@keyframes c-spin{to{rotate:360deg}}@keyframes c-pulse{0%,to{opacity:.55;scale:.82}50%{opacity:1;scale:1}}@media (width<=767px){.stream__status{height:24px;font-size:13px}.stream__glyph{width:14px;height:14px}}.js [data-reveal]{opacity:0;transition:opacity .6s ease-out var(--reveal-delay,0s), transform .6s ease-out var(--reveal-delay,0s);transform:translateY(20px)}.js [data-reveal].is-in{opacity:1;transform:translateY(0)}.js [data-reveal][data-stagger="0"]{--reveal-delay:0s}.js [data-reveal][data-stagger="1"]{--reveal-delay:90ms}.js [data-reveal][data-stagger="2"]{--reveal-delay:.18s}.js [data-reveal][data-stagger="3"]{--reveal-delay:.27s}.js [data-reveal=card][data-stagger="1"]{--reveal-delay:75ms}.js [data-reveal=card][data-stagger="2"]{--reveal-delay:.15s}@media (prefers-reduced-motion:reduce){.js [data-reveal]{opacity:1;transition:none;transform:none}}html.rm [data-reveal],.rm [data-reveal]{opacity:1;transition:none;transform:none}@media (forced-colors:active){.js [data-reveal]{opacity:1;transition:none;transform:none}}.social{--social-hit:44px;--social-gap:4px;--social-inset:10px;gap:var(--social-gap);flex-wrap:wrap;display:flex}.social a{width:var(--social-hit);height:var(--social-hit);color:#000;border-radius:8px;justify-content:center;align-items:center;text-decoration:none;transition:background-color .15s linear;display:inline-flex}.social a:hover,.social a:focus-visible{color:#000;background-color:#efefef;text-decoration:none}.social a:focus-visible{outline-offset:2px;outline:3px solid #000}.social__icon{font-size:24px;line-height:1}.social svg.social__icon{width:24px;height:24px}.social--hero{margin-top:10px;margin-left:calc(-1 * var(--social-inset))}@media (width>=768px){.social--hero{top:calc(30px - var(--social-inset));right:calc(15px - var(--social-inset));flex-wrap:nowrap;margin:0;position:absolute}}.site-footer{background:#fff;margin-top:-60px;padding:0 0 40px}.social--footer{margin-right:calc(-1 * var(--social-inset));justify-content:flex-end}@media (prefers-reduced-motion:reduce){.social a{transition:none}}.rm .social a{transition:none}@media (forced-colors:active){.social a:hover,.social a:focus-visible{background-color:#0000}}.clients{--cell-h:96px;--logo-scale:1;border-top:1px solid #00000014;border-bottom:1px solid #00000014;flex-wrap:wrap;justify-content:center;margin:0;padding:8px 0;list-style:none;display:flex}.client{min-width:0;height:var(--cell-h);flex:0 0 20%;justify-content:center;align-items:center;padding:0 16px;display:flex}.client__logo{width:min(calc(var(--w) * var(--logo-scale) * var(--opt,1)), 100%);height:auto;display:block}.client[data-client=invisible-colors]{--w:194.5px;--opt:.88}.client[data-client=bell]{--w:69.5px}.client[data-client=videotron]{--w:123.1px;--opt:1.06}.client[data-client=universite-de-montreal]{--w:88.6px;--opt:1.22}.client[data-client=virtuel-graphique]{--w:103.3px;--opt:1.18}.client[data-client=amelio]{--w:118px}.client[data-client=swat-factory-group]{--w:81px;--opt:1.15}.client__name{color:#111;text-align:center;letter-spacing:-.005em;text-wrap:balance;font-size:15px;font-weight:600;line-height:1.25}.client[data-mode=logo] .client__name{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (forced-colors:active){.client[data-mode=logo] .client__logo{display:none}.client[data-mode=logo] .client__name{clip:auto;white-space:normal;width:auto;height:auto;margin:0;display:block;position:static;overflow:visible}}@media (width>=768px) and (width<=991px){.clients{--cell-h:88px;--logo-scale:.9}.client{flex-basis:25%}}@media (width<=767px){.clients{--cell-h:80px;--logo-scale:.8}.client{flex-basis:50%;padding:0 10px}.client__name{font-size:14px}}
