/* The LAB's lighter editorial system, shared by the portfolio's six universes. */
@font-face{font-family:Satoshi;src:url('/faster/criativos/assets/satoshi-400.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Satoshi;src:url('/faster/criativos/assets/satoshi-500.woff2') format('woff2');font-weight:500 900;font-display:swap}
:root{--paper:#f5f5f1;--paper-2:#eaeae4;--paper-3:#d9d9d0;--ink:#191a1b;--ink-2:#55564f;--grey:#77786f;--line:rgb(25 26 27 / .15);--klein:#1834ed;--klein-bright:#5268ff;--font-sans:Satoshi,'Helvetica Neue',Arial,sans-serif;--margin:clamp(26px,7.5vw,180px);--gutter:clamp(18px,2vw,32px);--header-h:96px;--fs-body:clamp(15px,1.08vw,18px);--fs-small:13px;--fs-label:10px;--fs-lead:clamp(21px,2vw,30px);--fs-h3:clamp(38px,4.6vw,76px);--fs-h2:clamp(58px,8.2vw,132px)}
html{scroll-padding-top:calc(var(--header-h) + 28px)}
body{line-height:1.65}
.label{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-weight:400;letter-spacing:.075em;line-height:1.5}
.site-header{gap:24px}.site-header.is-solid{background:rgb(245 245 241 / .96);box-shadow:0 1px 0 var(--fg-line)}
.wordmark{font-size:23px;font-weight:500;letter-spacing:-1px}.header-chapter{margin-left:clamp(16px,3vw,60px);font-size:9px}
.primary-nav{gap:clamp(18px,2vw,30px);font-family:var(--font-sans);font-size:12px;text-transform:none;letter-spacing:0}.lang-switch{font-family:var(--font-sans);letter-spacing:0;font-size:11px}.primary-nav a[href='/lab/']{color:var(--klein)}
.hero-title{top:calc(var(--header-h) + 5vh);font-family:var(--font-sans);font-size:min(14.5vw,27vh,240px);font-weight:500;font-stretch:normal;line-height:.94;letter-spacing:-.075em;text-transform:none}
.hero-title__line--2{padding-left:.32em}.hero-role{top:calc(var(--header-h) + 5vh + min(14.5vw,27vh,240px)*1.98);font-size:clamp(25px,2.5vw,40px);color:var(--ink-2)}
.hero-meta{top:calc(var(--header-h) + 5vh);font-size:9px;line-height:1.7}.hero-premise{line-height:1.6;font-size:13px;max-width:24ch}.hero-cues{font-size:9px}.lab-entry{color:var(--klein)}
.universe-head{padding-top:clamp(96px,12vw,190px);padding-bottom:clamp(64px,8vw,120px);row-gap:38px}.universe-title{font-family:var(--font-sans);font-stretch:normal;font-weight:400;line-height:1.02;text-transform:none;letter-spacing:-.065em;max-width:15ch;overflow-wrap:break-word}.universe-lede{grid-column:6/span 7;font-stretch:normal;line-height:1.45;letter-spacing:-.025em;max-width:42ch;color:var(--ink-2)}.universe-toc{grid-column:6/span 7;padding-top:24px;gap:16px 24px;line-height:1.6}
.constellation__statement p{font-weight:400;line-height:1.14;letter-spacing:-.04em;font-stretch:normal}.constellation__statement em{font-family:var(--font-serif)}
.case{padding-top:clamp(90px,11vw,170px);padding-bottom:clamp(52px,6vw,96px)}.case-head{row-gap:26px;padding-bottom:clamp(52px,6.5vw,100px)}.case-kicker{gap:24px}.case-title{font-weight:400;font-stretch:normal;line-height:1.06;letter-spacing:-.055em;text-transform:none;overflow-wrap:break-word}.case-tagline{font-size:clamp(25px,2.6vw,40px);line-height:1.2}.case-intro{line-height:1.5;font-stretch:normal;letter-spacing:-.025em;max-width:35ch;margin-top:12px}.case-meta{font-size:12px;line-height:1.6}.case-meta div{padding-block:14px;grid-template-columns:6em minmax(0,1fr)}.case-meta dd{min-width:0;overflow-wrap:break-word}
.case-text{padding-block:clamp(64px,8vw,130px);row-gap:40px}.case-text p{line-height:1.8;max-width:37ch}.case-text h4{font-size:14px;font-weight:500;margin-bottom:20px}.gallery{row-gap:clamp(32px,4vw,64px)}.gallery-label{padding-top:22px;margin-top:clamp(50px,7vw,110px);font-size:10px}.media figcaption{padding-top:14px;line-height:1.7;font-size:9px;color:var(--grey)}
.supporting{padding-block:clamp(80px,10vw,160px)}.support{padding-block:clamp(36px,5vw,78px);row-gap:30px}.support__text{padding-left:clamp(0px,1.5vw,24px)}.support--flip .support__text{padding-left:0;padding-right:24px}.support__text h3{font-weight:400;font-stretch:normal;line-height:1.06;text-transform:none;letter-spacing:-.05em;margin-bottom:22px}.support__text p{line-height:1.8}.support__link{margin-top:28px;padding-bottom:7px}.proof{padding-block:clamp(64px,8vw,128px);row-gap:32px}.proof-list{gap:40px var(--gutter)}
.case-chapter{padding-top:26px;margin-top:clamp(60px,8vw,128px);row-gap:22px}.case-chapter h4{font-stretch:normal;font-weight:400;letter-spacing:-.035em;line-height:1.2}.case-chapter p:last-child{font-size:15px;line-height:1.8}
.index{background:var(--paper);border-top:1px solid var(--line);padding-block:clamp(90px,12vw,180px);row-gap:48px}.index h2{font-weight:400;font-stretch:normal;text-transform:none;letter-spacing:-.055em;line-height:1.05}.index-row{padding-block:26px;row-gap:16px}.index-row__name{font-size:clamp(20px,1.85vw,28px);font-stretch:normal;font-weight:400;line-height:1.2;letter-spacing:-.035em;overflow-wrap:break-word}.index-row__projects{font-size:12px;line-height:1.85}
.about{padding-block:clamp(100px,13vw,200px);row-gap:42px;border-top:1px solid var(--line)}.about__statement{font-weight:400;font-stretch:normal;font-size:clamp(30px,3.6vw,56px);line-height:1.25;letter-spacing:-.045em;max-width:27ch}.about__body{line-height:1.85;gap:24px}.about__disciplines{line-height:1.6}.about__disciplines li{padding-block:15px}
.site-footer{background:var(--paper);color:var(--ink);border-top:1px solid var(--line);padding-top:clamp(64px,8vw,120px);padding-bottom:32px}.site-footer>.label{color:var(--grey);opacity:1}.contact-title{font-weight:400;font-stretch:normal;text-transform:none;letter-spacing:-.06em;line-height:1.08;font-size:clamp(50px,7.5vw,120px);max-width:15ch;margin-block:55px 80px}.contact-title em{color:var(--klein)}.contact-title:hover{color:var(--klein)}.footer-row{border-color:var(--line);color:var(--grey);font-size:11px;line-height:1.7;gap:18px 30px;padding-top:24px}
.lab-feature{padding-top:clamp(56px,7vw,110px);padding-bottom:clamp(96px,12vw,180px)}.lab-feature h3{font-family:var(--font-sans);font-stretch:normal;font-weight:400;letter-spacing:-.075em;font-size:clamp(85px,10vw,150px);line-height:1}.lab-feature__tagline{font-size:clamp(25px,2.5vw,38px)}.lab-feature__description{line-height:1.8}.lab-window__layout b{font-family:var(--font-sans);font-stretch:normal;font-weight:500}.lab-window--motion{background:#1834ed}
.journey-map{right:clamp(16px,2.8vw,52px)}.journey-map a,.journey-map span[aria-disabled]{font-family:ui-monospace,SFMono-Regular,monospace;font-size:9px;letter-spacing:.07em}.journey-map ol{gap:12px}.journey-map .jm-dot{width:5px;height:5px}
@media(min-width:1001px){.index-row{grid-template-columns:2em minmax(0,1.1fr) minmax(0,1.6fr)}.support__text{align-self:center}.case-intro{grid-column:1/span 6}}
@media(max-width:1200px){.header-chapter{display:none}.primary-nav{gap:22px}.site-header{gap:22px}}
@media(max-width:1000px){.universe-lede,.universe-toc{grid-column:1/-1}.universe-lede{max-width:46ch}.support__text,.support--flip .support__text{padding:0;max-width:580px}.case-intro{max-width:45ch}.case-text p{max-width:60ch}.about__statement{max-width:30ch}.about__body{max-width:60ch}.about__disciplines{max-width:60ch;width:100%}.case-chapter p:last-child{max-width:60ch}}
@media(max-width:900px){:root{--header-h:78px;--margin:clamp(26px,6vw,60px)}.header-chapter{display:block;margin-left:auto}.wordmark{font-size:21px}.menu-toggle{font-family:var(--font-sans);font-size:12px;letter-spacing:0;text-transform:none}.menu{padding-top:calc(var(--header-h) + 35px)}.menu__universes a{font-stretch:normal;font-weight:400;text-transform:none;letter-spacing:-.04em;line-height:1.15}.universe-head{padding-top:100px}.lab-feature__description{font-size:13px}}
@media(max-width:600px){:root{--header-h:78px;--margin:clamp(24px,7vw,36px);--gutter:18px;--fs-lead:21px;--fs-h3:clamp(35px,8.8vw,49px);--fs-h2:clamp(46px,12vw,68px)}.site-header{gap:14px}.wordmark{font-size:20px}.header-chapter{font-size:8px;margin-left:auto}.header-chapter + .menu-toggle{margin-left:0}.hero-title{top:calc(var(--header-h) + 4vh);font-size:min(20vw,17vh);line-height:.98}.hero-title__line--2{padding-left:.28em}.hero-role{top:calc(var(--header-h) + 4vh + min(20vw,17vh)*2.12);font-size:24px}.hero-premise{font-size:12px;line-height:1.6;max-width:18ch}.hero-cues{font-size:8px;gap:18px}.lab-entry{width:78px;height:78px;bottom:clamp(154px,23vh,220px)}.universe-head{padding-top:88px;padding-bottom:56px;row-gap:28px}.universe-title{max-width:12ch}.universe-lede{font-size:20px}.universe-toc{padding-top:22px;gap:15px 20px;font-size:12px}.case{padding-top:88px;padding-bottom:48px}.case-head{padding-bottom:48px;row-gap:24px}.case-tagline{font-size:26px;line-height:1.18}.case-intro{font-size:20px;line-height:1.5}.case-meta{margin-top:12px;width:100%}.case-meta div{grid-template-columns:6em minmax(0,1fr)}.gallery{row-gap:28px}.gallery-label{margin-top:52px}.case-chapter{margin-top:48px;padding-top:24px}.case-chapter h4{font-size:25px}.case-chapter p:last-child{font-size:15px}.supporting{padding-block:64px}.support{padding-block:32px}.support__text h3{font-size:34px}.support__text p{font-size:15px}.proof-list{gap:28px 18px}.proof-list figcaption b{font-size:12px}.index{padding-block:80px}.index h2{font-size:48px}.index-row{grid-template-columns:1.7em minmax(0,1fr);padding-block:24px}.index-row__name{font-size:23px}.about{padding-block:88px;row-gap:30px}.about__statement{font-size:32px;line-height:1.25}.about__body{font-size:15px}.site-footer{padding-top:64px}.contact-title{font-size:clamp(42px,11vw,66px);margin-block:40px 56px;line-height:1.08}.footer-row{font-size:10px}.lab-feature{padding-top:40px;padding-bottom:88px}.lab-feature h3{font-size:104px}.lab-feature__windows{margin-top:5px}.lab-window__meta{line-height:1.6}.lab-window__foot{line-height:1.6}}
@media(prefers-reduced-motion:reduce){.lab-entry svg,.lab-window__ribbon i{animation:none}}

/* LAB is the lead project in AI Practice. */
.lab-feature{margin-inline:var(--margin);padding:clamp(52px,5.5vw,90px) clamp(24px,3.8vw,64px);background:var(--klein);color:var(--paper);margin-bottom:clamp(72px,10vw,150px);align-items:center;column-gap:clamp(22px,3vw,46px)}
.lab-feature__copy{grid-column:1/span 5}.lab-feature__copy>p.label{color:rgb(245 245 241 / .72)}.lab-feature h3{font-size:clamp(110px,14vw,230px);margin:24px 0 20px;line-height:.9}.lab-feature h3 span{color:#b5c2ff}.lab-feature__tagline{font-family:var(--font-sans);font-style:normal;font-size:clamp(26px,2.7vw,42px);line-height:1.12;letter-spacing:-.045em}.lab-feature__description{color:rgb(245 245 241 / .8);font-size:14px;max-width:39ch;margin:25px 0 28px;line-height:1.8}.lab-feature__copy>.lab-feature__invitation{font-size:9px;color:rgb(245 245 241 / .65);margin-bottom:14px}.lab-feature__link{background:var(--paper);color:var(--klein);border:1px solid var(--paper);padding:18px 22px;max-width:350px;font-size:11px}.lab-feature__link:hover{background:transparent;color:var(--paper)}.lab-feature a:focus-visible{outline-color:var(--paper)}.lab-feature__windows{grid-column:7/span 6;grid-template-columns:1fr;gap:18px}.lab-window{aspect-ratio:2.05;padding:20px}.lab-window--motion{background:var(--paper);color:var(--klein)}.lab-window--layout{margin-top:0;background:#e4e7f2;color:var(--ink)}.lab-window__ribbon{gap:3px;left:58%}.lab-window__ribbon i{height:110px;width:21px}.lab-window__layout{width:73%;align-self:center;grid-template-columns:repeat(4,1fr);gap:4px;padding:9px 0;transform:rotate(-4deg)}.lab-window__layout b{font-size:clamp(25px,3.1vw,46px)}.lab-window__meta,.lab-window__foot{font-size:9px}
@media(max-width:1000px){.lab-feature__copy{grid-column:1/span 6}.lab-feature__windows{grid-column:8/span 5}.lab-feature h3{font-size:clamp(100px,15vw,170px)}.lab-window{aspect-ratio:1.1;padding:16px}.lab-window__layout{grid-template-columns:1fr 1fr;width:85%}.lab-window__ribbon{gap:1px;left:53%}.lab-window__ribbon i{width:15px;height:94px}.lab-feature__description{font-size:13px}.lab-window__meta,.lab-window__foot{font-size:8px}}
@media(max-width:650px){.lab-feature{padding:38px 24px 30px;row-gap:34px;margin-bottom:75px}.lab-feature__copy,.lab-feature__windows{grid-column:1/-1}.lab-feature h3{font-size:clamp(104px,29vw,170px);margin:22px 0 18px}.lab-feature__tagline{font-size:30px}.lab-feature__description{font-size:14px;max-width:45ch;margin:22px 0}.lab-feature__copy>p.label{font-size:8px}.lab-feature__link{max-width:none;padding:17px 18px}.lab-feature__windows{grid-template-columns:1fr;gap:12px}.lab-window{aspect-ratio:1.8;padding:16px}.lab-window__layout{grid-template-columns:repeat(4,1fr);width:80%}.lab-window__ribbon{left:55%}.lab-window__ribbon i{width:18px;height:100px}.lab-window__meta,.lab-window__foot{font-size:8px}}

/* Keep the invitation low; leave clear space by shifting the 3D composition. */
.lab-entry{top:auto}.lab-entry svg text{paint-order:stroke fill;stroke:var(--paper);stroke-width:1.5px;stroke-linejoin:round}.lab-entry__caption{font-family:var(--font-sans);font-size:10px;font-weight:500;letter-spacing:.025em;text-transform:none;line-height:1.5;text-shadow:0 0 4px var(--paper),0 1px 5px var(--paper)}

@media(max-width:600px){.lab-entry{top:auto}.lab-entry__caption{font-size:9px}}

@media(max-width:650px){.lab-feature .lab-window__ribbon i{height:70px;width:13px}}
/* Featured culinary case leads the AI universe. */
.culinary-feature{margin-inline:var(--margin);padding-bottom:clamp(80px,10vw,150px)}.culinary-feature__head{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:clamp(35px,7vw,120px);align-items:end;padding:30px 0 45px;border-top:1px solid var(--line,#d5d5cc)}.culinary-feature__title>.label{color:var(--grey);font-size:10px;margin-bottom:28px}.culinary-feature h3{font:400 clamp(58px,6.8vw,112px)/1.02 var(--font-sans);letter-spacing:-.065em;text-transform:none;font-stretch:normal}.culinary-feature h3 span{color:var(--klein)}.culinary-feature h3 a:hover{color:var(--ink)}.culinary-feature__intro{max-width:420px;min-width:0;padding-bottom:5px}.culinary-feature__premise{font-size:clamp(24px,2.4vw,35px);line-height:1.22;letter-spacing:-.04em;max-width:20ch}.culinary-feature__description{font-size:16px;line-height:1.8;margin:22px 0;color:var(--grey);max-width:40ch}.culinary-feature__scope{font-size:8px;line-height:1.8;letter-spacing:.06em;color:var(--grey);margin-top:28px}.culinary-feature__link{display:flex;justify-content:space-between;align-items:center;gap:25px;border-bottom:1px solid var(--ink);font-size:14px;padding:18px 0 13px;margin-top:12px}.culinary-feature__link>span:last-child{font-size:24px;color:var(--klein);transition:transform .25s}.culinary-feature__link:hover>span:last-child{transform:translate(3px,-3px)}.culinary-feature__image{position:relative;display:block;overflow:hidden;background:#e3e3da}.culinary-feature__image img{display:block;width:100%;height:auto;aspect-ratio:1.65;object-fit:cover;object-position:center 43%;transition:transform .7s}.culinary-feature__image:hover img{transform:scale(1.015)}.culinary-feature__image-note{position:absolute;bottom:23px;left:24px;background:var(--paper);color:var(--ink);padding:12px 15px;font-size:8px;line-height:1.6;max-width:calc(100% - 110px)}.culinary-feature__image-arrow{position:absolute;right:24px;bottom:23px;display:grid;place-items:center;width:46px;height:46px;background:var(--klein);color:var(--paper);font-size:25px}.culinary-feature__disciplines{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;border-bottom:1px solid var(--line,#d5d5cc);padding:19px 0;font-size:9px;line-height:1.8;color:var(--grey)}@media(max-width:900px){.culinary-feature__head{grid-template-columns:1fr 1fr;gap:35px}.culinary-feature h3{font-size:clamp(50px,7.2vw,78px)}.culinary-feature__description{font-size:14px}.culinary-feature__premise{font-size:25px}}@media(max-width:650px){.culinary-feature__head{grid-template-columns:1fr;gap:30px;padding:24px 0 30px}.culinary-feature h3{font-size:clamp(56px,14vw,86px)}.culinary-feature__title>.label{font-size:8px;margin-bottom:24px}.culinary-feature__intro{max-width:none}.culinary-feature__premise{font-size:27px;max-width:24ch}.culinary-feature__description{font-size:15px;max-width:40ch;margin-block:18px}.culinary-feature__scope{margin-top:22px}.culinary-feature__image img{aspect-ratio:4/5;object-position:53% center}.culinary-feature__image-note{left:14px;bottom:14px;padding:9px 10px;font-size:7px;max-width:calc(100% - 82px)}.culinary-feature__image-arrow{right:14px;bottom:14px;width:38px;height:38px;font-size:22px}.culinary-feature__disciplines{gap:10px 20px;font-size:8px}.culinary-feature{padding-bottom:75px}}@media(prefers-reduced-motion:reduce){.culinary-feature__image img,.culinary-feature__link>span:last-child{transition:none}.culinary-feature__image:hover img{transform:none}}

/* Product cases share the editorial grid and keep their own interface language. */
.product-pair{margin-inline:var(--margin);padding-bottom:clamp(80px,10vw,150px)}.product-pair>header{border-top:1px solid var(--line,#d5d5cc);padding:28px 0 40px}.product-pair>header>.label{font-size:9px;color:var(--grey);margin-bottom:25px}.product-pair h3{font:400 clamp(34px,4vw,60px)/1.1 var(--font-sans);letter-spacing:-.05em;text-transform:none}.product-pair__grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.product-pair__visual{aspect-ratio:1.4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:45px;padding:35px;overflow:hidden}.product-pair__visual>img{width:190px;height:auto;transition:transform .4s}.product-pair__visual--pb{background:#e9ebed}.product-pair__visual--pb>div{padding:20px 24px;background:#f4f4f0;border-radius:18px;min-width:235px;display:grid;grid-template-columns:1fr auto;gap:14px;color:#111214;transform:rotate(3deg)}.product-pair__visual--pb span{font:10px monospace;color:#62666b;grid-column:1/-1}.product-pair__visual--pb strong{font:400 30px var(--font-sans);letter-spacing:-.04em}.product-pair__visual--pb small{font-size:13px}.product-pair__visual--pb i{font-style:normal;display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#002fa7;color:white}.product-pair__visual--corpus{background:#e5e3d7}.product-pair__visual--corpus>div{display:grid;grid-template-columns:1fr auto;gap:10px;background:#faf9f3;padding:23px;border:1px solid #d4d1bf;border-radius:16px;min-width:235px;transform:rotate(-2deg);color:#535b40}.product-pair__visual--corpus strong{font:400 35px var(--font-sans);letter-spacing:-.05em}.product-pair__visual--corpus span{font-size:11px;align-self:center}.product-pair__visual--corpus i{grid-column:1/-1;font-size:24px;font-style:normal;color:#827e63}.product-pair__caption{display:flex;justify-content:space-between;gap:20px;padding-top:22px}.product-pair__caption h4{font:400 25px var(--font-sans);letter-spacing:-.04em}.product-pair__caption p{font-size:13px;color:var(--grey);margin-top:8px;line-height:1.7}.product-pair__caption>span{font-size:25px;color:var(--klein);transition:transform .3s}.product-pair__card:hover .product-pair__caption>span{transform:translate(3px,-3px)}.product-pair__card:hover .product-pair__visual>img{transform:translateY(-4px)}@media(max-width:700px){.product-pair__grid{grid-template-columns:1fr;gap:38px}.product-pair__visual{aspect-ratio:1.2;padding:28px;gap:35px}.product-pair h3{font-size:37px}.product-pair__visual>img{width:160px}}@media(prefers-reduced-motion:reduce){.product-pair__card *{transition:none!important}}
.product-pair{padding-top:clamp(60px,8vw,130px)}.product-pair>header h2{font:400 clamp(65px,8vw,125px)/1 var(--font-sans);letter-spacing:-.065em;margin:30px 0}.product-pair>header h3{font-size:clamp(27px,3vw,44px);max-width:25ch;line-height:1.2}
.product-pair__visual--pb{position:relative;justify-content:start;gap:25px;padding-top:30px}.product-pair__visual--pb>.product-pair__app-screen{width:220px;border:5px solid #17191c;border-radius:24px;transform:rotate(3deg);height:auto;flex-shrink:0}.product-pair__card:hover .product-pair__visual--pb>.product-pair__app-screen{transform:rotate(3deg) translateY(-5px)}@media(max-width:700px){.product-pair__visual--pb>.product-pair__app-screen{width:200px}}

.systems-collection-link{display:grid;grid-template-columns:1fr 1fr;gap:7vw;border-top:1px solid var(--line);padding-top:40px;margin-top:65px}.systems-collection-link h3{font-size:clamp(35px,4vw,64px)!important;letter-spacing:-.06em;line-height:1.06!important;margin-top:24px;max-width:18ch}.systems-collection-link>div>p{font-size:17px;line-height:1.7;max-width:42ch;color:var(--ink-2);margin-bottom:30px}.systems-collection-link>div:last-child{padding-top:35px}.systems-collection-link>div>span:last-child:not(.label){font-size:12px;color:var(--klein)}.systems-collection-link:hover h3{color:var(--klein)}@media(max-width:700px){.systems-collection-link{grid-template-columns:1fr;gap:20px}.systems-collection-link>div:last-child{padding-top:0}}
