@font-face{font-family:Albert Sans;src:url(/fonts/AlbertSans-latin.woff2)format("woff2");font-weight:500 600;font-display:swap}@font-face{font-family:Fraunces;src:url(/fonts/Fraunces-Italic-latin.woff2)format("woff2");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-latin.woff2)format("woff2");font-weight:400;font-display:swap}:root{--ink:#0e0e0e;--paper:#f4f4f2;--olive:#5b6b4c;--signal:#ff4d1a;--data:#3e6bff;--mute:#6b6b68;--radius:4px;--gutter:clamp(16px, 4vw, 56px);--max:1440px;--ease:cubic-bezier(.16, 1, .3, 1);--f-display:"Albert Sans", system-ui, sans-serif;--f-em:"Fraunces", Georgia, serif;--f-mono:"Roboto Mono", ui-monospace, monospace}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;overflow-x:clip}html.lenis,html.lenis body{height:auto}body{background:var(--paper);color:var(--ink);font:500 1rem/1.55 var(--f-display);-webkit-font-smoothing:antialiased;margin:0;overflow-x:clip}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3,p,figure,ol,ul,dl,dd{margin:0;padding:0}ol,ul{list-style:none}.display{font:600 clamp(2.6rem, 8vw, 8.5rem)/.9 var(--f-display);letter-spacing:-.02em;text-transform:uppercase}.display-sm{font:600 clamp(1.8rem, 3.6vw, 3.2rem)/.95 var(--f-display);letter-spacing:-.02em;text-transform:uppercase}.display em,.display-sm em{font:italic 500 1.12em/.85 var(--f-em);text-transform:none;letter-spacing:-.01em}.lead{max-width:36ch;font-size:clamp(1.05rem,1.4vw,1.3rem);line-height:1.45}.kicker{opacity:.8;font-size:1rem}.note{opacity:.7;font-size:.9rem}.data{font:400 .8rem/1.4 var(--f-mono)}.w-mask{margin-top:-.22em;padding-top:.22em}.wrap{width:100%;max-width:var(--max);padding:0 var(--gutter);margin:0 auto}section{position:relative}.on-light{color:var(--ink)}.on-dark{color:var(--paper)}.bg{z-index:-1;background:var(--paper);position:fixed;inset:0}.grain{z-index:100;pointer-events:none;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}.nav{z-index:50;padding:12px var(--gutter);color:var(--ink);-webkit-backdrop-filter:blur(14px)saturate(140%);backdrop-filter:blur(14px)saturate(140%);transition:color .4s var(--ease), background-color .4s var(--ease), border-color .4s var(--ease);background:#f4f4f28c;border-bottom:1px solid #0e0e0e14;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;display:grid;position:fixed;inset:0 0 auto}.nav[data-tone=dark]{color:var(--paper);background:#0e0e0e59;border-color:#f4f4f21a}.nav__logo{aspect-ratio:449/61;background:currentColor;justify-self:start;width:clamp(110px,13vw,170px);-webkit-mask:url(/logos/logo.svg) 50%/contain no-repeat;mask:url(/logos/logo.svg) 50%/contain no-repeat}.nav .btn{justify-self:end;position:relative;overflow:hidden}@media (prefers-reduced-motion:no-preference){.nav .btn:after{content:"";pointer-events:none;background:linear-gradient(105deg,#0000 30%,#ffffff8c 50%,#0000 70%);animation:7s ease-in-out 2s infinite shine;position:absolute;inset:0;transform:translate(-120%)}}@keyframes shine{0%,86%{transform:translate(-120%)}to{transform:translate(120%)}}.dots{display:flex}.dots a{place-items:center;width:24px;height:24px;display:grid;position:relative}.dots a:before{content:"";box-sizing:border-box;width:10px;height:10px;transition:background-color .3s, transform .3s var(--ease);border:1.5px solid;border-radius:50%}.dots a.is-on:before{background:currentColor}.dots a:hover:before{transform:scale(1.3)}.dots a:after{content:attr(aria-label);border-radius:var(--radius);background:var(--ink);color:var(--paper);font:600 .72rem/1 var(--f-display);letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .25s, translate .25s var(--ease);padding:.45em .7em;position:absolute;top:calc(100% + 6px);left:50%;translate:-50% -4px}.nav[data-tone=dark] .dots a:after{background:var(--paper);color:var(--ink)}.dots a:hover:after,.dots a:focus-visible:after{opacity:1;translate:-50%}@media (width<=599px){.nav{grid-template-columns:auto 1fr auto;gap:6px}.nav .btn{padding-inline:.8em}.dots{justify-self:center}.nav__logo{aspect-ratio:1;width:34px;-webkit-mask-image:url(/logos/isotipo-amp.svg);mask-image:url(/logos/isotipo-amp.svg)}.dots a:before{width:8px;height:8px}}.btn{border-radius:var(--radius);background:var(--signal);color:var(--ink);font:600 .95rem/1 var(--f-display);letter-spacing:.02em;text-transform:uppercase;transition:transform .4s var(--ease);align-items:center;gap:.6em;padding:1.05em 1.6em;text-decoration:none;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn:focus-visible,a:focus-visible{outline:2px solid var(--data);outline-offset:3px}.btn--sm{padding:.8em 1.1em;font-size:.78rem}.btn--ghost{color:var(--paper);background:0 0;box-shadow:inset 0 0 0 2px}.btn--wa{background:#25d366}.wa-ic{fill:currentColor;flex:none;width:1.35em;height:1.35em}.wa-fab{right:max(16px, env(safe-area-inset-right));bottom:max(16px, env(safe-area-inset-bottom));z-index:40;color:#fff;width:56px;height:56px;transition:transform .4s var(--ease), opacity .4s;background:#25d366;border-radius:50%;place-items:center;display:grid;position:fixed;box-shadow:0 6px 20px #0e0e0e40}.wa-fab:hover{transform:translateY(-2px)}.wa-fab .wa-ic{width:28px;height:28px}.wa-fab.is-hidden{opacity:0;pointer-events:none}.intro__stage{position:relative}.intro__logo{display:none}.loader{z-index:100;background:var(--paper);transition:opacity .6s var(--ease), visibility .6s;place-items:center;display:grid;position:fixed;inset:0}.loader img{width:min(86vw,1100px);height:auto}.loader i{background:#0e0e0e1f;width:140px;height:2px;position:absolute;bottom:22svh;left:50%;overflow:hidden;translate:-50%}.loader i:after{content:"";background:var(--ink);animation:1.1s ease-in-out infinite loader;position:absolute;inset:0}@keyframes loader{0%{transform:translate(-100%)}to{transform:translate(100%)}}.loader.is-done{opacity:0;visibility:hidden;pointer-events:none}@media (prefers-reduced-motion:reduce){.loader i:after{animation:none}}.intro__window{background:var(--ink);height:100svh;position:relative;overflow:hidden}.intro__photo{object-fit:cover;object-position:50% 40%;width:100%;height:100%}.intro__pic{display:contents}.intro__hero{height:100svh;padding:0 var(--gutter) clamp(36px, 7vh, 80px);color:var(--paper);background:linear-gradient(#0000 45%,#0e0e0eb3);flex-direction:column;justify-content:flex-end;gap:22px;display:flex;position:absolute;top:0;left:0;right:0}.intro__hero .display{max-width:12ch}.intro__hero em{white-space:nowrap}.folio{padding:clamp(96px, 14vh, 160px) var(--gutter)}.folio__title{margin-bottom:clamp(40px,6vw,80px)}.folio__title span{display:inline-block}.folio__canvas{grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));gap:clamp(24px,3vw,40px);display:grid}.folio__geo,.walker{display:none}.tile figcaption{margin-top:10px;font-size:.95rem}.tile__img{aspect-ratio:16/10;overflow:hidden}.tile__img img{object-fit:cover;object-position:top center;width:100%;height:100%}.motion .intro{height:900vh}.motion .intro__stage{height:100svh;position:sticky;top:0;overflow:hidden}.motion .intro__logo{width:min(86vw,1100px);display:block;position:absolute;top:50%;left:50%;translate:-50% -50%}.motion .intro__window{height:auto;-webkit-mask:var(--amp-mask) no-repeat;-webkit-mask:var(--amp-mask) no-repeat;mask:var(--amp-mask) no-repeat;background:0 0;position:absolute;inset:0}.motion .intro__window.is-open{-webkit-mask:none;mask:none}.intro__veil{display:none}.motion .intro__veil{background:var(--paper);opacity:.6;pointer-events:none;display:block;position:absolute;inset:0}.motion .intro__photo{transform-origin:var(--lens-x,55%) var(--lens-y,26%)}.motion .intro__hero{opacity:0}.motion .folio{pointer-events:none;padding:0;position:absolute;inset:0}.motion .folio>*{pointer-events:auto}.motion .folio__title{left:var(--gutter);white-space:nowrap;opacity:0;z-index:0;margin:0;font-size:clamp(4rem,16vw,17rem);line-height:.82;position:absolute;top:50%;translate:0 -50%}.motion .folio__title span{display:block}.motion .folio__canvas{z-index:1;width:100%;height:220vh;display:block;position:absolute;top:0;left:0}.motion .folio__geo{fill:none;width:100%;height:100%;stroke:var(--olive);stroke-width:1.2px;z-index:-1;display:block;position:absolute;inset:0}.motion .folio__geo *{vector-effect:non-scaling-stroke}.motion .tile{opacity:0;position:absolute}.motion .tile figcaption{color:var(--ink);font-size:.9rem}.motion .tile.is-lens{opacity:1;z-index:3;visibility:hidden}.motion .tile.is-lens .tile__img{aspect-ratio:auto;border-radius:0;height:100%}.tile__m{display:none}@media (width<=899px){.motion .tile.is-lens .tile__img{position:relative}.motion .tile__m{display:block;position:absolute;inset:0}}.motion .walker{z-index:4;opacity:0;pointer-events:none;width:auto;height:min(78svh,760px);display:block;position:absolute;bottom:-2vh;left:0}.motion .tile--1{width:40vw;top:14vh;left:6vw}.motion .tile--1 .tile__img{aspect-ratio:16/10}.motion .tile--2{width:38vw;top:8vh;left:54vw}.motion .tile--3{width:28vw;top:56vh;left:60vw}.motion .tile--4{width:22vw;top:66vh;left:7vw}.motion .tile--5{width:20vw;top:60vh;left:33vw}.motion .tile--6{width:34vw;top:104vh;left:25vw}.motion .tile--7{width:28vw;top:98vh;left:66vw}.motion .tile--8{width:24vw;top:126vh;left:4vw}.motion .tile--9{width:32vw;top:146vh;left:40vw}.motion .tile--10{width:18vw;top:140vh;left:76vw}.motion .tile--11{width:28vw;top:172vh;left:10vw}.motion .tile--12{width:32vw;top:184vh;left:52vw}.devices{padding:clamp(96px,14vh,160px) 0}html:not(.motion) .devices{background:#140c0c}.devices__bg,.devices__canvas{display:none}.devices__scenes{padding:0 var(--gutter);max-width:var(--max);gap:clamp(56px,8vw,96px);margin:0 auto;display:grid}.scene{gap:14px;max-width:40ch;display:grid}.scene p{opacity:.85}.scene__logo{margin-bottom:6px}.scene__logo img{width:auto;height:clamp(52px,5.5vw,84px)}.scene:first-child .scene__logo img{height:clamp(80px,8vw,124px)}.scene:last-child .scene__logo img{height:clamp(84px,8.5vw,132px)}.scene__fallback{aspect-ratio:16/10;object-fit:cover;object-position:top;border:8px solid #2a2a28;border-radius:14px;width:min(100%,560px);margin-top:12px}.scene:first-child .scene__fallback{aspect-ratio:9/19;border-radius:34px;width:min(260px,70vw)}.is-3d .devices{height:700vh;padding:0}.is-3d .devices__pin{height:100svh;position:sticky;top:0;overflow:hidden}.is-3d .devices__bg{background:radial-gradient(circle at var(--spot-x,65%) var(--spot-y,50%), rgba(var(--spot-rgb,255,77,26), .28), transparent 50%), var(--scene-bg,#140c0c);display:block;position:absolute;inset:0}.devices__cols{position:absolute;inset:0;overflow:hidden}.devices__cols .set{opacity:0;filter:grayscale(.5);gap:18px;transition:opacity .7s;display:flex;position:absolute;inset:-30% -10%;rotate:-10deg}.devices__pin[data-scene="0"] .set[data-s="0"],.devices__pin[data-scene="1"] .set[data-s="1"],.devices__pin[data-scene="2"] .set[data-s="2"]{opacity:1}.devices__cols .col{flex:1;overflow:hidden}.devices__cols .col>div{animation:70s linear infinite paused cols}.devices__cols .col:nth-child(2n)>div{animation-duration:85s;animation-direction:reverse}.devices__pin.is-on .devices__cols .col>div{animation-play-state:running}.devices__cols img{width:100%;height:auto;margin-bottom:18px;display:block}.devices__cols .tint{opacity:.92;background:radial-gradient(circle at var(--spot-x,65%) var(--spot-y,50%), rgba(var(--spot-rgb,255,77,26), .28), transparent 50%), var(--scene-bg,#140c0c);position:absolute;inset:0}@keyframes cols{to{transform:translateY(-50%)}}.is-3d .devices__canvas{width:100%;height:100%;display:block;position:absolute;inset:0}.is-3d .devices__scenes{padding:0;display:block}.is-3d .scene{left:var(--gutter);opacity:0;max-width:30ch;color:var(--scene-fg,var(--paper));position:absolute;top:50%;translate:0 -50%}.is-3d .scene .display-sm{font-size:clamp(2rem,4.6vw,4.5rem)}.is-3d .scene p{font-size:1.1rem}.is-3d .scene__fallback{display:none}@media (width<=899px){.is-3d .scene{top:auto;bottom:max(5svh,84px);right:var(--gutter);max-width:none;translate:none}.is-3d .scene .display-sm{font-size:2rem}.is-3d .scene p{font-size:1rem}}.qroma{background:var(--q,#1c60b4);padding:clamp(80px,12vh,140px) 0}.qroma__bg{pointer-events:none;position:absolute;inset:0;overflow:hidden}.qroma__blobs{width:100%;height:100%}.blob{fill:#fff}.blob--1{fill-opacity:.08}.blob--2{fill-opacity:.06}.blob--3{fill:#000;fill-opacity:.08}.qroma__pin{position:relative}.qroma__track{scroll-snap-type:x mandatory;padding:0 var(--gutter);gap:2vw;display:flex;position:relative;overflow-x:auto}.qpanel{scroll-snap-align:center;flex:none;width:92vw}.qpanel>img{object-fit:cover;object-position:top center;border-radius:var(--radius);width:100%;height:min(78svh,52vw);box-shadow:0 40px 80px -40px #00000080}.qpanel figcaption{margin-top:12px;font-size:1rem}.qpanel--title{flex-direction:column;justify-content:center;gap:24px;width:min(92vw,900px);padding-right:4vw;display:flex}.qroma__logos{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;max-width:640px;margin-top:12px;display:grid}.qroma__logos li{background:var(--paper);border-radius:var(--radius);justify-content:center;align-items:center;height:clamp(44px,4.6vw,58px);padding:8px 14px;display:flex}.qroma__logos img{width:auto;max-width:100%;height:auto;max-height:clamp(22px,2.6vw,34px)}@media (width<=599px){.qroma__logos{grid-template-columns:repeat(2,minmax(0,1fr));max-width:340px}}.motion .qroma{padding:0}.motion .qroma__pin{align-items:center;height:100svh;display:flex;overflow:hidden}.motion .qroma__track{scroll-snap-type:none;will-change:transform;align-items:center;width:max-content;padding:0 3vw;overflow:visible}.motion .qpanel>img,.motion .qpanel--title{height:82svh}.process{color:var(--paper);background:var(--ink)}.process__head{padding:clamp(80px, 12vh, 140px) var(--gutter) 24px;font:600 clamp(1rem, 1.6vw, 1.4rem)/1.2 var(--f-display);text-transform:uppercase;letter-spacing:.04em}.process__bar{display:none}.step{padding:clamp(48px, 8vw, 96px) var(--gutter);border-top:6px solid;gap:28px;display:grid;position:relative;overflow:hidden}.step--ink{background:var(--ink);color:var(--paper)}.step--paper{background:var(--paper);color:var(--ink)}.step--signal{background:var(--signal);color:var(--ink)}.step__title{font:600 clamp(3rem, 11vw, 12rem)/.86 var(--f-display);letter-spacing:-.035em;text-transform:uppercase;overflow-wrap:anywhere}.step__text{max-width:34ch;font-size:clamp(1.1rem,1.6vw,1.45rem);line-height:1.4}.step__art{fill:none;stroke:currentColor;stroke-width:2.5px;width:min(100%,520px);height:auto}.step__art text{fill:currentColor;stroke:none;font:500 15px var(--f-display)}.step__art .val,.step__art .term,.step__art .url-t{font-family:var(--f-mono);font-size:14px}.step__art .frame{stroke-width:4px}.step__char{pointer-events:none;width:auto;height:min(64vh,620px);max-height:calc(100% - 140px);position:absolute;bottom:0;right:4vw}.chips{flex-wrap:wrap;gap:10px;max-width:760px;display:flex}.chips li{font:600 clamp(.95rem, 1.4vw, 1.25rem)/1 var(--f-display);text-transform:uppercase;border:3px solid;padding:.7em 1.1em}.art-layout .wf{fill:#0e0e0e14}.art-qa .ring-bg{stroke:#f4f4f233;stroke-width:12px}.art-form .caret{fill:currentColor;stroke:none;animation:1s step-end infinite blink}@keyframes blink{50%{opacity:0}}.art-qa .ring{stroke:#4ade80;stroke-width:12px;stroke-dasharray:1 1;stroke-dashoffset:0;transform-origin:345px 150px;transform:rotate(-90deg)}.art-qa .ring-n{font:600 36px var(--f-display)!important}.art-qa .qa-tick{stroke:#4ade80;stroke-width:4px}.art-deploy .laptop rect,.art-deploy .server rect{fill:#0e0e0e0a}.art-deploy .scr-l,.art-deploy .slot{stroke:#0e0e0e4d;stroke-width:5px;stroke-linecap:round}.art-deploy .link{stroke-dasharray:5 6;stroke-width:2px}.art-deploy .packet{fill:var(--signal);stroke:none}.art-deploy .led{fill:#16a34a;stroke:none}.art-deploy .wave{stroke:var(--signal);stroke-width:3px;stroke-linecap:round}.art-deploy .globe *{stroke-width:2px}.art-deploy .url{fill:#0e0e0e0f}.art-deploy .lock{fill:#16a34a;stroke:none}.art-deploy .halo{fill:#16a34a;stroke:none;transform-box:fill-box;transform-origin:50%;animation:1.8s ease-out infinite live}@keyframes live{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(2.8)}}.motion .process{background:0 0;height:650vh}.motion .process__pin{--fg:#f4f4f2;background:var(--ink);height:100svh;position:sticky;top:0;overflow:hidden}.motion .process__head{z-index:5;left:var(--gutter);color:var(--fg);padding:0;position:absolute;top:84px}.motion .process__bar{z-index:5;left:var(--gutter);right:var(--gutter);gap:6px;display:flex;position:absolute;top:116px}.motion .process__bar li{background:color-mix(in srgb, var(--fg) 25%, transparent);flex:1;height:6px}.motion .process__bar li i{background:var(--fg);transform-origin:0;width:100%;height:100%;display:block;transform:scaleX(0)}.motion .step{padding:150px var(--gutter) 40px;clip-path:inset(100% 0 0);border:0;align-content:start;position:absolute;inset:0}.motion .step:first-of-type{clip-path:inset(0)}@media (width>=900px){.step{grid-template-columns:1fr 1fr;align-items:end}.step__title{grid-column:1/-1}.motion .step__art{justify-self:end}.step:has(.step__char)>:not(.step__title,.step__char){grid-column:1}.motion .step:has(.step__char) .step__art{justify-self:start;width:min(100%,440px)}}.seo{padding:clamp(96px, 14vh, 160px) var(--gutter)}.seo__pin{max-width:var(--max);gap:40px;margin:0 auto;display:grid}.seo__copy .display-sm{max-width:18ch;margin-bottom:32px}.seo__phases{gap:28px;display:grid}.phase h3{font:600 clamp(1.4rem, 2.4vw, 2.2rem)/1 var(--f-display);letter-spacing:-.01em;margin-bottom:10px}.phase p{max-width:42ch}.seo__plan{margin-top:14px;font-weight:600}.seo__art{fill:none;width:100%;max-width:640px;height:auto;stroke:var(--ink);stroke-width:2px}.seo__art text{fill:var(--ink);stroke:none;font:500 16px var(--f-display)}.seo__art .q,.seo__art .doc-t,.seo__art .res--me text,.seo__art .cite-t,.seo__art .answer-src{font-family:var(--f-mono);font-size:15px}.seo__art .res rect{fill:#fff;stroke:#0e0e0e26}.seo__art .res path,.seo__art .answer-l,.seo__art .bub-l,.seo__art .m-l{stroke:#0e0e0e40;stroke-width:6px;stroke-linecap:round}.seo__art .res--me rect{fill:var(--ink)}.seo__art .res--me text{fill:var(--paper)}.seo__art .res--me path{stroke:#f4f4f266}.seo__art .answer{fill:#fff;stroke:var(--data);stroke-width:3px}.seo__art .chat{fill:#fff;stroke:#0e0e0e26}.seo__art .bub--q{fill:var(--ink)}.seo__art .bub-t{fill:var(--paper);font-size:13px}.seo__art .bub--a{fill:#f0efe9;stroke:none}.seo__art .cite{fill:var(--data);stroke:none}.seo__art .cite-t{fill:#fff;font-size:13px}.seo__art .doc{fill:#fff}.seo__art .doc-ear{fill:#f0efe9}.seo__art .ll{font:400 13px var(--f-mono);fill:#4a4a47}.seo__art .ll--h{fill:var(--ink);font-weight:600}.seo__art .hl{fill:var(--signal);fill-opacity:.12;stroke:none;opacity:0}.seo__art .req{stroke:var(--ink);stroke-width:1.5px;stroke-dasharray:4 5}.seo__art .bot rect{fill:var(--ink);stroke:none}.seo__art .bot text{fill:var(--paper);font:600 13px var(--f-mono)}.seo__art .bot .st{fill:#16a34a;font:400 11px var(--f-mono)}.seo__art .pk{fill:var(--signal);stroke:none}.seo__art .m-card{fill:#fff;stroke:#0e0e0e2e}.seo__art .m-hero{fill:#f0efe9;stroke:none}.seo__art .m-wa{fill:#16a34a;stroke:none}.seo__art .m-wa-t{fill:#fff;font-size:14px;font-weight:600}.seo__art .mw{stroke:var(--olive);stroke-width:2px}.seo__art .m-k{font:400 12px var(--f-mono);fill:var(--mute)}.seo__art .m-n{font:600 44px var(--f-display);fill:var(--ink)}.seo__art .m-s{fill:var(--mute);font-size:14px}.seo__art .m-ev{font:400 12px var(--f-mono);fill:var(--ink)}.seo__art .m-bar{fill:var(--data);stroke:none}.seo__art .m-ax{stroke:#0e0e0e33;stroke-width:1px}.seo__art .m-imp{stroke:var(--olive);stroke-width:2.5px}.seo__art .m-clk{stroke:var(--data);stroke-width:2.5px}.seo__art .m-lg{font:400 11px var(--f-mono);fill:var(--olive)}.seo__art .m-lg--c{fill:var(--data)}.seo__art .m-cur{fill:var(--ink);stroke:#fff;stroke-width:1.5px}.seo__art .m-click{stroke:var(--signal);stroke-width:2px}.seo__art .m-pk rect{fill:var(--signal);stroke:none}.seo__art .m-pk text{fill:var(--ink);font:600 11px var(--f-mono)}.seo__art .m-dot{fill:var(--data);stroke:none}.seo__art .pg{fill:#fff;stroke:#0e0e0e33}.seo__art .pg-b{fill:#f0efe9;stroke:none}.seo__art .pg-btn{fill:var(--ink);stroke:none}.seo__art .pg-l{stroke:#0e0e0e2e;stroke-width:7px;stroke-linecap:round}.seo__art .heat circle{fill:url(#hot);stroke:none;mix-blend-mode:multiply}.seo__art .cursor-path{stroke:none}.seo__art .cursor{fill:var(--ink);stroke:#fff;stroke-width:1.5px}.seo__art .click{fill:none;stroke:var(--signal);stroke-width:2px}.seo__art .heat-t{font:400 14px var(--f-mono);fill:var(--mute)}.seo__cta{border-radius:var(--radius);background:var(--ink);color:var(--paper);justify-items:start;gap:12px;max-width:560px;margin-top:28px;padding:24px;display:grid}.seo__cta p{max-width:44ch}.seo__cta .seo__cta-t{font:600 clamp(1.15rem, 1.6vw, 1.45rem)/1.15 var(--f-display)}.seo__cta-t em{font:italic 500 1.1em/1 var(--f-em)}.seo__cta-btns{flex-wrap:wrap;gap:10px;margin-top:4px;display:flex}.seo__pin{position:relative}.seo__bg{display:none}.motion .seo__bg{z-index:-1;pointer-events:none;display:block;position:absolute;inset:0;overflow:hidden}.seo__code{font:400 13px/1.8 var(--f-mono);color:#0e0e0e33;white-space:pre;opacity:0;margin:0;position:absolute;top:13%;left:40%}.seo__code mark{color:inherit;background:0 0}.sq{font:400 .78rem/1 var(--f-mono);color:var(--mute);white-space:nowrap;background:#ffffff8c;border:1px solid #0e0e0e24;padding:.5em .8em;position:absolute}.seo__art .g-seo,.seo__art .g-aeo,.seo__art .g-geo,.seo__art .g-llms,.seo__art .g-heat,.seo__art .m-cur,.seo__art .m-click,.seo__art .m-pk,.seo__art .m-dot{display:none}.motion .seo{height:800vh;padding:0}.motion .seo__pin{height:100svh;padding:100px var(--gutter) 40px;isolation:isolate;align-content:center;position:sticky;top:0}.motion .seo__art .g-seo,.motion .seo__art .g-aeo,.motion .seo__art .g-geo,.motion .seo__art .g-llms,.motion .seo__art .g-heat,.motion .seo__art .m-cur,.motion .seo__art .m-click,.motion .seo__art .m-pk,.motion .seo__art .m-dot{display:inline}.motion .seo__phases{min-height:15em;display:block;position:relative}.motion .phase{opacity:0;position:absolute;inset:0 0 auto}@media (width>=900px){.seo__pin{grid-template-columns:5fr 7fr;align-items:center}}@media (width<=899px){.motion .seo__pin{align-content:start;gap:16px;padding-top:84px}.motion .seo__copy .display-sm{margin-bottom:12px;font-size:1.5rem}.motion .seo__phases{min-height:11em;font-size:.95rem}.motion .seo__art{justify-self:center;max-height:40svh}}.soft{background:var(--ink);padding:clamp(96px,16vh,200px) 0}.soft__title{margin-bottom:clamp(56px,8vw,120px)}.app{border-top:1px solid #2c2c2a;gap:clamp(32px,5vw,72px);padding:clamp(40px,5vw,72px) 0;display:grid}.app+.app{margin-top:clamp(48px,7vw,120px)}.app__meta{align-content:start;gap:18px;display:grid}.app__sub{color:#d5d5d0;max-width:44ch;font-size:1.1rem}.app__logo{width:200px;height:auto}.app__logo--chip{background:var(--paper);border-radius:var(--radius);box-sizing:content-box;width:220px;padding:12px 16px}.app__logo--celsa{border-radius:2px;width:240px}.app__intro,.app__more{align-content:start;gap:18px;display:grid}.feats{color:#bdbdb8;gap:8px;display:grid}.app__stage{aspect-ratio:16/11;position:relative}.dev{background:#1a1a18;position:absolute;overflow:hidden;box-shadow:0 40px 80px -30px #000c}.dev img{object-fit:cover;object-position:top left;width:100%;height:100%}.dev--laptop{aspect-ratio:16/10;border:10px solid #232321;border-radius:10px;width:78%;top:0;left:0}.dev--tablet{aspect-ratio:1180/820;border:12px solid #232321;border-radius:18px;width:46%;bottom:4%;right:0}.dev--phone{aspect-ratio:9/19.5;border:6px solid #232321;border-radius:22px;width:20%;bottom:0;left:8%}.app__strip{border-radius:var(--radius);background:#fff;grid-column:1/-1;padding:clamp(10px,2vw,24px)}.app__strip img{width:100%;height:auto}.dash{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.kpis{grid-column:1/-1;grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.kpi{border-radius:var(--radius);background:#161615;border:1px solid #2c2c2a;gap:6px;padding:18px;display:grid}.kpi__n{font:600 clamp(1.8rem, 3vw, 2.8rem)/1 var(--f-display);color:#9fd36b;font-variant-numeric:tabular-nums}.kpi:first-child .kpi__n{color:#7fc8a9}.kpi__l{color:#a5a5a0;font-size:.85rem}.card{border-radius:var(--radius);background:#161615;border:1px solid #2c2c2a;grid-column:1/-1;align-content:start;gap:12px;padding:16px;display:grid}.card figcaption{color:#b9c4ad;font-size:.9rem}.chart{width:100%;height:auto;overflow:visible}.chart .ax{fill:#8a8a8a;font:10px var(--f-mono)}.chart .range{stroke:#3a3a37;stroke-width:6px;stroke-linecap:round}.chart .coast{fill:none;stroke:var(--olive);stroke-width:1.5px}.chart .grid,.chart .gl{stroke:#262624;stroke-width:1px}.chart .ln{fill:none;stroke-width:3px}.chart--map .dot{fill-opacity:.85}.legend{color:#9a9a95;flex-wrap:wrap;gap:8px 16px;font-size:.78rem;display:flex}.legend i{vertical-align:-1px;border-radius:2px;width:10px;height:10px;margin-right:6px;display:inline-block}.alerts{color:#d5d5d0;gap:10px;font-size:.92rem;display:grid}.alerts li{border-bottom:1px solid #262624;align-items:baseline;gap:10px;padding-bottom:10px;display:flex}.alerts i{background:#e0a32e;border-radius:50%;flex:0 0 8px;height:8px}.alerts i.ok{background:#4ade80}.upload{color:#d5d5d0;gap:12px;display:grid}.upload__bar{background:#262624;border-radius:4px;height:8px;overflow:hidden}.upload__bar i{background:var(--olive);transform-origin:0;width:100%;height:100%;display:block}.upload__ok{font-size:.92rem}.upload__btn{border-radius:var(--radius);background:var(--paper);color:var(--ink);justify-self:start;padding:.6em 1em;font-size:.85rem;font-weight:600}.reel{padding:clamp(64px,10vh,120px) 0;overflow:hidden}.reel__stage{perspective:1500px}.reel__strip{transform:rotateX(8deg)rotateY(-6deg)rotate(-2deg)}.reel__track{gap:clamp(12px,1.6vw,24px);width:max-content;animation:70s linear infinite reel;display:flex}.reel__track img{aspect-ratio:16/10;object-fit:cover;object-position:top;border-radius:var(--radius);width:clamp(240px,28vw,440px);box-shadow:0 30px 60px -30px #00000059}@keyframes reel{to{transform:translate(-50%)}}.cta{padding-top:clamp(64px,10vh,140px)}.cta__grid{align-items:end;gap:clamp(32px,6vw,96px);display:grid}.cta__copy{justify-items:start;gap:28px;display:grid}.cta__amp{width:clamp(96px,10vw,160px);height:auto;fill:var(--ink)}.cta__duo img{width:min(100%,520px);height:auto;margin-left:auto}.foot{color:var(--mute);border-top:1px solid #d6d6d1;flex-wrap:wrap;align-items:center;gap:14px 32px;margin-top:clamp(48px,8vw,96px);padding-top:48px;padding-bottom:32px;font-size:.9rem;display:flex}.foot img{width:160px;height:auto;margin-right:auto}.foot a{text-decoration:none}@media (width>=900px){.app{grid-template-columns:4fr 8fr}.app__strip{grid-column:2}.kpis{grid-template-columns:repeat(4,1fr)}.card--heat{grid-column:1/-1}.card--evol,.card--reco,.card--strip,.card--map,.card--alerts,.card--upload{grid-column:auto}.app--celsa{grid-template-columns:1fr}.app--celsa .app__meta{grid-template-columns:5fr 7fr;column-gap:clamp(32px,5vw,72px)}.app--celsa .feats{grid-template-columns:1fr 1fr;column-gap:28px}.app--celsa .dash{grid-template-columns:repeat(12,1fr)}.app--celsa .card--heat{grid-area:span 2/span 7}.app--celsa .card--alerts,.app--celsa .card--upload{grid-column:span 5}.app--celsa .card--evol,.app--celsa .card--reco,.app--celsa .card--strip,.app--celsa .card--map{grid-column:span 3}.cta__grid{grid-template-columns:7fr 5fr}}@media (width<=899px){.motion .folio__canvas{height:330vh}.motion .tile--1{width:90vw;top:12vh;left:5vw}.motion .tile--2{width:64vw;top:46vh;left:30vw}.motion .tile--3{width:56vw;top:74vh;left:5vw}.motion .tile--4{width:38vw;top:92vh;left:56vw}.motion .tile--5{width:34vw;top:108vh;left:8vw}.motion .tile--6{width:58vw;top:128vh;left:36vw}.motion .tile--7{width:60vw;top:156vh;left:5vw}.motion .tile--8{width:50vw;top:180vh;left:44vw}.motion .tile--9{width:66vw;top:210vh;left:5vw}.motion .tile--10{width:32vw;top:236vh;left:62vw}.motion .tile--11{width:52vw;top:262vh;left:8vw}.motion .tile--12{width:64vw;top:290vh;left:30vw}.motion .tile figcaption{font-size:.8rem}.motion .walker{height:52svh}.motion .qpanel>img{object-position:left top;height:64svh}.step__char{opacity:.9;height:34vh;right:0}.motion .step{gap:18px;padding-top:132px}.motion .step__title{font-size:clamp(2.2rem,10.5vw,4.5rem)}.motion .step__text{font-size:1rem}.motion .step__art{width:92%}.sq{display:none}.seo__code{left:var(--gutter);color:#0e0e0e21;font-size:12px;top:46%}.seo__cta{gap:8px;margin-top:12px;padding:14px}.seo__cta p{font-size:.8rem}.seo__cta .seo__cta-t{font-size:1rem}.seo__cta .btn{padding:.8em 1em;font-size:.74rem}.wa-fab{width:52px;height:52px}.motion .seo__phases{min-height:12.5em}}.arcade{padding:clamp(48px,8vh,96px) 0 clamp(64px,10vh,120px)}.arcade__wrap{gap:16px;display:grid}.arcade__k{font:600 .85rem/1 var(--f-display);text-transform:uppercase;letter-spacing:.04em;color:var(--mute)}.arcade__screen{border:3px solid var(--ink);background:var(--ink);line-height:0}.arcade__cv{aspect-ratio:256/116;width:100%;height:auto;image-rendering:pixelated;touch-action:none;cursor:pointer}.arcade__cv:focus-visible{outline:3px solid var(--data);outline-offset:3px}.arcade__ctl{flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.arcade__ctl .note{flex:280px}.arcade__alt{background:var(--ink);color:var(--paper)}.arcade__full,.arcade__x{display:none}@media (pointer:coarse){.arcade__full{color:var(--ink);font:600 .95rem/1 var(--f-display);cursor:pointer;background:#0e0e0e12;border:0;border-radius:999px;justify-self:start;align-items:center;gap:.55em;padding:.7em 1.1em .7em .9em;display:inline-flex}.arcade__full svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}}.arcade.is-full{z-index:60;background:var(--ink);padding:0;position:fixed;inset:0;overflow:hidden}.arcade.is-full .arcade__k,.arcade.is-full .arcade__ctl{display:none}.arcade.is-full .arcade__screen{border:0;width:min(100vw,220.69dvh);position:absolute;top:50%;left:50%;translate:-50% -50%}.arcade.is-full .arcade__x{z-index:61;top:max(10px, env(safe-area-inset-top));background:var(--paper);width:44px;height:44px;color:var(--ink);font:600 1.5rem/1 var(--f-display);cursor:pointer;border:0;border-radius:50%;place-items:center;display:grid;position:fixed;left:50%;translate:-50%}@media (orientation:portrait){.arcade.is-full .arcade__screen{width:min(100dvh,220.69vw);rotate:90deg}}button.btn{cursor:pointer;border:0}@media (prefers-reduced-motion:reduce){.reel__track{animation:none}}
