/* GreenEdgeIT / Product in motion / 2026-09-25
   Additive, dependency-free motion system. Public text and links never depend on it.
   Every scene uses the existing Motion preference and pauses when not visible. */
:root{--ge-motion-ease:cubic-bezier(.22,.76,.2,1);--ge-motion-ink:#113945;--ge-motion-teal:#00ac83}
/* Dimensional hero composition. The original device art and its links stay together. */
.ge-scene{perspective:1200px}
.ge-device-art{position:absolute;inset:0}
.ge-device-art>picture,.ge-device-art>picture>img{display:block;width:100%;height:100%}
.ge-device-art>picture>img{object-fit:fill}
.ge-device-art>.ge-scene-links{position:absolute;inset:0;width:100%;height:100%}
html[data-ge-motion="on"] .ge-scene.is-inview{animation:none}
html[data-ge-motion="on"] .ge-scene.is-inview .ge-device-art{animation:ge-device-settle 12s ease-in-out infinite}
.ge-build-stage{position:absolute;z-index:5;left:8%;top:13%;width:clamp(240px,24vw,360px);aspect-ratio:380/288;pointer-events:none;isolation:isolate;--ge-tilt-x:0deg;--ge-tilt-y:0deg}
.ge-build-stage::before{content:"";position:absolute;inset:3% 0 -2% -7%;z-index:-1;background:radial-gradient(ellipse,#e0fff8b0,transparent 69%);border-radius:50%;pointer-events:none}
.ge-build-tilt{position:absolute;inset:0;transform:perspective(800px) rotateX(var(--ge-tilt-x)) rotateY(var(--ge-tilt-y));transition:transform .45s var(--ge-motion-ease);transform-style:preserve-3d}
.ge-build-rig{position:absolute;inset:0;transform-style:preserve-3d}
.ge-build-wires{position:absolute;inset:0;width:100%;height:100%;overflow:visible;fill:none;stroke-linecap:round}
.ge-build-wire{stroke:#eefff9;stroke-width:2}
.ge-build-current{stroke:#02d296;stroke-width:2.5;stroke-dasharray:55 945;stroke-dashoffset:0;opacity:.8;filter:drop-shadow(0 0 3px #00d79555)}
.ge-code-panel{position:absolute;left:0;top:13%;width:76%;border:1px solid #fffffff2;border-radius:14px;background:linear-gradient(130deg,#fcfffff5,#f0fafef7 65%,#ebfff3f5);box-shadow:0 14px 42px #133e4f25,0 3px 6px #03384212,inset 0 1px 1px white;transform:rotate(-6deg) rotateY(7deg);overflow:hidden;isolation:isolate;color:#173d4b}
.ge-code-chrome{display:flex;align-items:center;justify-content:space-between;gap:7px;min-height:31px;padding:8px 12px;border-bottom:1px solid #c7e1df66;background:linear-gradient(100deg,#fcffff,#f2f5fd);font-family:ui-monospace,SFMono-Regular,Consolas,monospace;line-height:1}
.ge-code-chrome>div{display:flex;gap:4px}.ge-code-chrome i{height:5px;width:5px;border-radius:50%;background:#a1d8ca}.ge-code-chrome i:nth-child(2){background:#cbbbec}.ge-code-chrome i:nth-child(3){background:#a3e9c3}.ge-code-chrome>span{font-size:9px;letter-spacing:.15px;color:#5b7783}.ge-code-chrome>b{font-size:10px;color:#139577;font-weight:500}
.ge-code-content{padding:14px 10px 13px;font-size:clamp(9px,.85vw,12px);line-height:1.8;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:-.35px}
.ge-code-line{display:flex;gap:10px;white-space:pre;min-width:0}.ge-code-line em{font-style:normal;color:#78949b;font-size:.75em;padding-top:.3em;min-width:1.4em;text-align:right;flex-shrink:0}.ge-code-line code{display:block;font:inherit;min-width:0;white-space:pre;transform:translateZ(0)}
.ge-code-kw{color:#8154b5}.ge-code-bool{color:#04885a}.ge-code-comment code{color:#799694;font-size:.87em}.ge-code-caret{display:inline-block;width:1px;height:1em;background:#008563;vertical-align:middle;margin-left:3px}
.ge-code-status{display:flex;align-items:center;gap:6px;padding:8px 12px;background:#e5f9efad;border-top:1px solid #d0eddf;color:#457363;font-size:8px;line-height:1.3;letter-spacing:.04px}.ge-code-status>span{flex:1;min-width:0}.ge-code-status>i{width:4px;height:4px;border-radius:50%;background:#00b784;box-shadow:0 0 0 3px #00b78413;flex-shrink:0}.ge-code-status>svg{width:11px;height:11px;color:#009265}
.ge-code-edge-light{position:absolute;top:0;bottom:0;left:0;width:35%;background:linear-gradient(110deg,transparent,#ffffffa6,transparent);transform:translateX(-160%) skewX(-18deg);opacity:0;pointer-events:none}
.ge-build-product{position:absolute;right:0;top:54%;width:50%;padding:6px;border:1px solid white;border-radius:13px;background:linear-gradient(130deg,#fff,#f1fffaf5);box-shadow:0 14px 27px #18464820,0 2px 6px #85bdae2e;transform:rotate(5deg) translateZ(24px);isolation:isolate}
.ge-build-product-chrome{display:flex;align-items:center;gap:4px;padding:0 3px 4px;font-size:6px;color:#557e6e;line-height:1.3}.ge-build-product-chrome>i{width:4px;height:4px;background:#00bf84;border-radius:50%;flex-shrink:0}.ge-build-product-chrome>span{flex:1;min-width:0}.ge-build-product-chrome>b{font-size:9px;color:#4b7c70}
.ge-mini-browser{display:block;width:100%;padding:6px;border:1px solid #ddf0ea;border-radius:8px;background:#ffffffef;overflow:hidden;box-shadow:0 2px 4px #e0f0ec40}
.ge-mini-nav{display:flex;align-items:center;gap:3px;padding-bottom:4px;border-bottom:1px solid #d7eee677;transform-origin:50% 0}
.ge-mini-nav>img{width:9px;height:11px;object-fit:contain}.ge-mini-nav>b{font-size:6px;letter-spacing:-.2px;color:#143e34;flex:1;line-height:1}.ge-mini-nav>i{width:10px;height:2px;background:#b7d5c9;border-radius:4px}
.ge-mini-hero{display:grid;grid-template-columns:1fr 40%;gap:5px;padding:7px 5px;margin-top:5px;border-radius:5px;background:radial-gradient(at 90% 10%,#bdffe8,transparent 80%),#effdf8;align-items:center}
.ge-mini-hero>div{display:flex;flex-direction:column;gap:3px}.ge-mini-hero i{height:4px;border-radius:3px;background:#176047;width:82%}.ge-mini-hero i:nth-child(2){width:65%;background:#00aa76}.ge-mini-hero small{height:2px;background:#9fcab9;width:88%;border-radius:3px;margin-top:2px}.ge-mini-hero b{height:6px;width:24px;background:linear-gradient(#20e39d,#019567);border-radius:3px;margin-top:3px}.ge-mini-leaf{display:grid;place-items:center;transform:rotate(10deg)}.ge-mini-leaf img{width:28px;height:32px;object-fit:contain;filter:drop-shadow(0 3px 3px #26b58025)}
.ge-mini-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:5px}.ge-mini-cards i{height:12px;border:1px solid #d3f1e7;background:linear-gradient(120deg,#e7fbee,#fafffc);border-radius:3px}.ge-mini-cards i:nth-child(2){background:#eee8ff;border-color:#e2d8f9}.ge-mini-cards i:nth-child(3){background:#eaf7ff;border-color:#d5edf7}
.ge-build-ai{position:absolute;right:2%;top:0;display:flex;align-items:center;justify-content:center;gap:7px;min-width:65px;padding:11px 10px;border:1px solid white;border-radius:13px;background:linear-gradient(130deg,#fff,#eee5ffec);box-shadow:0 8px 25px #865ea827;transform:rotate(8deg) translateZ(30px);color:#8651c0;font-size:11px;font-weight:650}.ge-build-ai>svg{width:21px;height:21px}.ge-build-ai>i{position:absolute;right:6px;top:6px;height:4px;width:4px;background:#bb8bed;border-radius:50%}
.ge-build-workflow{position:absolute;left:8%;bottom:0;display:flex;align-items:center;gap:6px;transform:rotate(-5deg);font-size:7px;line-height:1;color:#368374}.ge-build-workflow>span,.ge-build-workflow>b{display:grid;place-items:center;width:30px;height:30px;border:1px solid white;border-radius:9px;background:#eefff5ef;box-shadow:0 5px 10px #38756016;font-weight:600}.ge-build-workflow>b{background:#edf0ff;color:#9671d5}.ge-build-workflow>i{width:13px;height:1px;background:#abe1cb}.ge-build-workflow svg{height:15px;width:15px}
.ge-build-star{position:absolute;color:#62e6bc;left:-4%;top:14%;width:13px;height:13px;filter:drop-shadow(0 0 3px #dbfff5)}.ge-build-star svg{width:100%;height:100%}.ge-build-star-two{left:auto;right:-3%;top:38%;width:10px;height:10px;color:#c597f1}
.ge-build-caption{position:absolute;top:-4%;left:3%;display:flex;align-items:center;gap:5px;padding:4px 7px;background:#fafffbdd;border:1px solid #fff;border-radius:7px;color:#517267;font-size:7px;line-height:1.3;letter-spacing:.25px;white-space:nowrap;transform:rotate(-6deg)}.ge-build-caption>i{height:3px;width:3px;border-radius:50%;background:#008d67}
/* Card demos: one miniature visual per service, never on top of copy or CTA. */
.ge-home .ge-category-card,.ge-home:not(:lang(nl)) .ge-category-card{min-height:241px;padding:22px 18px 139px 76px;border-radius:20px;overflow:hidden}
.ge-home .ge-category-icon{left:15px;top:17px;width:46px;height:46px}.ge-home .ge-category-icon .ge-icon{width:26px;height:26px}
.ge-home .ge-category-card h3,.ge-home:not(:lang(nl)) .ge-category-card h3{font-size:14px;line-height:1.2;letter-spacing:-.35px;margin:0 0 7px}
.ge-home .ge-category-card p,.ge-home:not(:lang(nl)) .ge-category-card p,.ge-home .ge-category-card:nth-child(4) p{font-size:11px;line-height:1.5;max-width:185px}
.ge-home .ge-category-art{width:144px;bottom:0;right:-2px;z-index:1}.ge-home .ge-category-card:nth-child(2) .ge-category-art{width:98px;right:3px;bottom:24px}.ge-home .ge-category-card:nth-child(3) .ge-category-art{width:103px;right:-4px;bottom:29px}.ge-home .ge-category-card:nth-child(4) .ge-category-art{width:129px;right:-2px;bottom:10px}
.ge-home .ge-category-more{left:18px;bottom:20px;font-size:10px;white-space:normal;max-width:calc(100% - 32px);gap:7px}.ge-category-more>svg{flex-shrink:0}
.ge-service-motion{position:absolute;z-index:2;left:18px;bottom:48px;width:53%;max-width:177px;height:84px;pointer-events:none;isolation:isolate}
.ge-service-motion-websites{width:52%;max-width:152px;transform:rotate(-5deg);transform-origin:left bottom}
.ge-service-motion-websites .ge-mini-browser{box-shadow:0 8px 17px #1756371b;border-color:#ddf6e7;padding:6px}
.ge-service-motion-websites .ge-mini-hero{padding-block:6px}.ge-service-motion-websites .ge-mini-leaf img{width:23px;height:27px}.ge-service-motion-websites .ge-mini-cards i{height:9px}
.ge-service-motion-ai{width:60%;max-width:176px;display:flex;flex-direction:column;justify-content:center;gap:8px;height:81px}
.ge-chat-question,.ge-chat-answer{position:relative;display:flex;align-items:center;gap:5px;border:1px solid #fff;border-radius:10px;padding:8px 9px;font-size:8px;line-height:1.4;color:#775594;box-shadow:0 4px 12px #77549912;max-width:100%;width:max-content;background:#fffffff2}.ge-chat-question{align-self:flex-start;background:#f1e9fff5}.ge-chat-answer{align-self:flex-start;margin-left:10px;color:#245c52;background:#effff7f0;min-height:28px}
.ge-chat-answer>svg{width:12px;height:12px;color:#7f55bb;flex-shrink:0}.ge-chat-answer>span{min-width:0}.ge-chat-question::after{content:"";position:absolute;width:5px;height:5px;bottom:-3px;left:12px;transform:rotate(45deg);background:#f1e9fff5;border-bottom:1px solid white;border-right:1px solid white}
.ge-chat-typing{position:absolute;bottom:12px;left:23px;display:flex;gap:3px;opacity:0}.ge-chat-typing i{width:4px;height:4px;background:#a985d0;border-radius:50%}
.ge-service-motion-automation{width:61%;max-width:183px;bottom:52px;display:flex;flex-direction:column;justify-content:center;height:68px}
.ge-flow-track{position:relative;display:flex;align-items:center;justify-content:space-between;gap:7px;height:44px}.ge-flow-track>svg{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke-width:1.3}.ge-flow-line{stroke:#94ceeb}.ge-flow-current{stroke:#4879ed;stroke-width:2.3;stroke-dasharray:90 910;stroke-dashoffset:0;opacity:.7}
.ge-flow-node{position:relative;z-index:1;display:grid;place-items:center;width:34px;height:34px;flex-shrink:0;border:1px solid white;border-radius:11px;background:linear-gradient(140deg,#fff,#edf7fff5);box-shadow:0 6px 12px #2b5f9c12;font-size:8px;color:#467bba;font-weight:700}.ge-flow-node:nth-of-type(2){background:#f2ecfff5;color:#9762d9}.ge-flow-node:nth-of-type(3){background:#effff7f5;color:#008a62}.ge-flow-node>svg{width:18px;height:18px}.ge-flow-caption{font-size:7px;color:#6f8b9d;text-align:center;margin-top:4px;line-height:1.4}
.ge-service-motion-products{bottom:52px;height:83px;width:55%}.ge-product-stack{position:relative;width:115px;height:80px;perspective:500px;isolation:isolate}.ge-product-plane{position:absolute;display:flex;align-items:center;justify-content:center;width:72px;height:43px;border:1px solid #fff;border-radius:9px;font-size:8px;letter-spacing:.5px;box-shadow:0 6px 12px #54466e0c;transform:rotateX(30deg) rotateZ(-20deg);color:#ac6dce;left:12px;top:28px}.ge-product-plane-back{background:#eedcfff5;transform:translate(9px,7px) rotateX(30deg) rotateZ(-20deg)}.ge-product-plane-mid{background:#f7effff5;transform:translate(4px,-6px) rotateX(30deg) rotateZ(-20deg);color:#97a9be}.ge-product-plane-front{background:linear-gradient(130deg,#fff,#f1fff9);transform:translate(0,-20px) rotateX(30deg) rotateZ(-20deg);display:grid;grid-template-columns:24px 1fr;grid-template-rows:1fr 1fr;gap:4px;padding:7px 10px}.ge-product-plane-front>img{height:24px;width:20px;grid-row:1 / 3}.ge-product-plane-front>i{height:3px;width:22px;border-radius:3px;background:#6fd5b2;align-self:end}.ge-product-plane-front>i:last-child{width:15px;background:#ccbaea;align-self:start}.ge-product-orbit{position:absolute;left:0;top:5px;width:117px;height:73px;border:1px solid #edd7f777;border-radius:50%;transform:rotate(-18deg);z-index:-1}
.ge-category-card::after{content:"";position:absolute;inset:0;border:1px solid #ffffffb5;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .3s}
.ge-category-card:hover::after,.ge-category-card:focus-visible::after{opacity:1}
.ge-category-card:focus-visible{outline:3px solid #7662c0;outline-offset:4px}
/* Shared tactile controls. A sheen is clipped inside the button, never in the text. */
.ge-button,.btn{isolation:isolate;overflow:hidden}
.ge-button::after,.btn::after{content:"";position:absolute;inset:-50% auto -50% -65%;width:45%;background:linear-gradient(110deg,transparent,#ffffff4d,transparent);transform:translateX(0) skewX(-22deg);opacity:0;pointer-events:none;z-index:0}
.ge-button>*,.btn>*{position:relative;z-index:1}
@media(hover:hover) and (pointer:fine){html[data-ge-motion="on"] .ge-button:hover::after,html[data-ge-motion="on"] .btn:hover::after{animation:ge-button-sheen .7s var(--ge-motion-ease) 1}}
.ge-menu-button,.ge-language summary{transition:box-shadow .22s,background .22s,transform .22s}
.ge-menu-button:active{transform:scale(.97)}
html[data-ge-motion="on"] details[open]>.ge-language-panel,html[data-ge-motion="on"] details[open]>.ge-nav-popover{animation:ge-menu-enter .22s var(--ge-motion-ease) both;transform-origin:top center}
html[data-ge-motion="on"] .site-header.menu-open .ge-nav{animation:ge-menu-enter .26s var(--ge-motion-ease) both}
.site-header.ge-has-scrolled::before{box-shadow:0 7px 30px #4f817c14}
.ge-nav>a:not([aria-current])::before{content:"";position:absolute;bottom:9px;left:6px;right:6px;height:2px;border-radius:2px;background:#00a66d;transform:scaleX(0);transform-origin:left;transition:transform .2s}
.ge-nav>a:hover::before,.ge-nav>a:focus-visible::before{transform:scaleX(1)}
/* Integration signals and metrics. Values do not count up or change. */
.ge-tech-logos{position:relative;isolation:isolate}
.ge-tech-logo{position:relative;isolation:isolate}.ge-tech-logo::after{content:"";position:absolute;left:7%;right:7%;bottom:-7px;height:2px;background:linear-gradient(90deg,transparent,#21c698,transparent);border-radius:3px;opacity:0;transform:scaleX(.35)}
.ge-metric{position:relative;isolation:isolate}.ge-metric::before{content:"";position:absolute;left:15%;right:15%;top:15%;bottom:15%;border-radius:16px;box-shadow:0 0 15px #46d8ad40;opacity:0;pointer-events:none;z-index:-1}
/* VPN: three independent rings, expanding light, and routed network signals. */
.ge-vpn-route-network{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;fill:none;stroke-linecap:round;opacity:.6}.ge-route-base{stroke:#f8fffbed;stroke-width:.8}.ge-route-current{stroke:#12d5aa;stroke-width:1.9;stroke-dasharray:24 976;stroke-dashoffset:1000;opacity:0}.ge-route-b{stroke:#b994f1;stroke-width:1.6}.ge-route-c{stroke:#5de8b3;stroke-width:1.5}
.ge-power-orbit-three{inset:-13px;box-shadow:none;border-color:#dcfff69e;transform:rotate(70deg);opacity:.7}.ge-power-orbit-three::before{width:4px;height:4px;background:#c5ffee;box-shadow:0 0 7px #25dbb28c}
.ge-vpn-ripple{position:absolute;inset:1px;border:1px solid #c0ffe7;border-radius:50%;transform:scale(1);opacity:0;pointer-events:none;z-index:-1}
.ge-vpn-power{z-index:1}
html[data-ge-motion="on"] .ge-vpn-visual.is-inview .ge-map-dot,html[data-ge-motion="on"] .ge-vpn-visual.is-inview .ge-vpn-shield{animation:none}
html[data-ge-motion="on"] .ge-vpn-visual.is-inview .is-demo-active .ge-map-dot{animation:ge-net 8s ease-in-out infinite}
html[data-ge-motion="on"] .ge-vpn-visual.is-inview .is-demo-active .ge-map-dot-b{animation-delay:-3s}
html[data-ge-motion="on"] .ge-vpn-visual.is-inview .is-demo-active .ge-vpn-shield{animation:ge-shield-hover 9s ease-in-out infinite}
html[data-ge-motion="on"] .ge-vpn-visual.is-inview .is-demo-active .ge-power-orbit{animation:ge-turn 12s linear infinite}
html[data-ge-motion="on"] .ge-vpn-visual.is-inview .is-demo-active .ge-power-orbit-two{animation:ge-turn 17s linear infinite reverse}
html[data-ge-motion="on"] .ge-vpn-visual.is-inview .is-demo-active .ge-power-orbit-three{animation:ge-turn 23s linear infinite}
html[data-ge-motion="on"] .ge-vpn-visual.is-inview .is-demo-active .ge-vpn-ripple{animation:ge-vpn-ripple-out 5.8s ease-out infinite}
html[data-ge-motion="on"] .ge-vpn-visual.is-inview .is-demo-active .ge-vpn-ripple-two{animation-delay:-2.9s}
html[data-ge-motion="on"] .ge-vpn-visual.is-inview .is-demo-active .ge-route-current{animation:ge-vpn-route 9s linear infinite}
html[data-ge-motion="on"] .ge-vpn-visual.is-inview .is-demo-active .ge-route-b{animation-duration:12s;animation-delay:-5s}
html[data-ge-motion="on"] .ge-vpn-visual.is-inview .is-demo-active .ge-route-c{animation-duration:15s;animation-delay:-8s}
/* Quiet connective strokes at the end of the page. */
.ge-services-head .ge-kicker::before{transform-origin:left}.ge-footer-light{position:absolute;top:-1px;left:0;right:0;height:2px;overflow:hidden;pointer-events:none;background:linear-gradient(90deg,transparent,#a2e6d55e,transparent)}.ge-footer-light>i{display:block;height:2px;width:19%;background:linear-gradient(90deg,transparent,#18bd8e,#b497df,transparent);transform:translateX(-110%);opacity:0}
/* Timeline selectors. Text is present before JS and stays present without motion. */
html[data-ge-motion="on"] .ge-build-stage.is-scene-ready .ge-build-rig{animation:ge-rig-float 11s ease-in-out infinite}
html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing{animation:ge-motion-clock 7.2s linear 1}
html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-code-line code{animation:ge-code-type .62s steps(24,end) both}
html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-code-line:nth-child(2) code{animation-delay:.5s}html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-code-line:nth-child(3) code{animation-delay:1s}html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-code-line:nth-child(4) code{animation-delay:1.5s}html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-code-line:nth-child(5) code{animation-delay:2s}html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-code-line:nth-child(6) code{animation-delay:2.4s}
html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-code-caret{animation:ge-caret .7s steps(1,end) 5}
html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-build-product{animation:ge-product-arrive .85s 2.8s var(--ge-motion-ease) both}
html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-mini-nav{animation:ge-part-arrive .55s 3.2s var(--ge-motion-ease) both}
html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-mini-hero{animation:ge-part-arrive .6s 3.5s var(--ge-motion-ease) both}
html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-mini-cards i{animation:ge-part-arrive .55s 3.9s var(--ge-motion-ease) both}
html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-mini-cards i:nth-child(2){animation-delay:4.05s}html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-mini-cards i:nth-child(3){animation-delay:4.2s}
html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-build-ai{animation:ge-ai-arrive .85s 4.7s var(--ge-motion-ease) both}
html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-build-workflow>*{animation:ge-part-arrive .6s 5.25s var(--ge-motion-ease) both}
html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-build-workflow>*:nth-child(3){animation-delay:5.5s}html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-build-workflow>*:nth-child(5){animation-delay:5.75s}
html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-build-current{animation:ge-build-signal 3s 3.8s ease-in-out both}
html[data-ge-motion="on"] .ge-build-stage.is-sequence-playing .ge-code-edge-light{animation:ge-code-sheen 1s 6.1s ease-in-out both}
html[data-ge-motion="on"] .ge-build-stage.is-scene-ready .ge-build-star{animation:ge-star-soft 9s ease-in-out infinite}
html[data-ge-motion="on"] .ge-build-stage.is-scene-ready .ge-build-star-two{animation-delay:-4s}
html[data-ge-motion="on"] .ge-category-card.is-card-active{animation:ge-motion-clock 4.2s linear 1}
html[data-ge-motion="on"] .ge-category-card.is-card-active .ge-category-icon{animation:ge-icon-accent .65s ease-out 1}
html[data-ge-motion="on"] [data-motion-kind="websites"].is-card-active .ge-mini-nav{animation:ge-part-arrive .5s .15s var(--ge-motion-ease) both}
html[data-ge-motion="on"] [data-motion-kind="websites"].is-card-active .ge-mini-hero{animation:ge-part-arrive .6s .65s var(--ge-motion-ease) both}
html[data-ge-motion="on"] [data-motion-kind="websites"].is-card-active .ge-mini-cards i{animation:ge-part-arrive .6s 1.25s var(--ge-motion-ease) both}
html[data-ge-motion="on"] [data-motion-kind="websites"].is-card-active .ge-mini-cards i:nth-child(2){animation-delay:1.45s}html[data-ge-motion="on"] [data-motion-kind="websites"].is-card-active .ge-mini-cards i:nth-child(3){animation-delay:1.65s}
html[data-ge-motion="on"] [data-motion-kind="ai"].is-card-active .ge-chat-question{animation:ge-chat-arrive .4s ease-out both}
html[data-ge-motion="on"] [data-motion-kind="ai"].is-card-active .ge-chat-answer{animation:ge-chat-arrive .55s 1.9s var(--ge-motion-ease) both}
html[data-ge-motion="on"] [data-motion-kind="ai"].is-card-active .ge-chat-typing{animation:ge-typing-visible 1.5s .4s linear both}
html[data-ge-motion="on"] [data-motion-kind="ai"].is-card-active .ge-chat-typing i{animation:ge-typing-dot .5s ease-in-out 4}
html[data-ge-motion="on"] [data-motion-kind="ai"].is-card-active .ge-chat-typing i:nth-child(2){animation-delay:.14s}html[data-ge-motion="on"] [data-motion-kind="ai"].is-card-active .ge-chat-typing i:nth-child(3){animation-delay:.28s}
html[data-ge-motion="on"] [data-motion-kind="ai"].is-card-active .ge-category-art{animation:ge-robot-nod 2.8s ease-in-out 1}
html[data-ge-motion="on"] [data-motion-kind="automation"].is-card-active .ge-flow-current{animation:ge-flow-signal 2.8s .4s linear both}
html[data-ge-motion="on"] [data-motion-kind="automation"].is-card-active .ge-flow-node{animation:ge-flow-activate .9s .2s ease-out 1}
html[data-ge-motion="on"] [data-motion-kind="automation"].is-card-active .ge-flow-node:nth-of-type(2){animation-delay:1.15s}html[data-ge-motion="on"] [data-motion-kind="automation"].is-card-active .ge-flow-node:nth-of-type(3){animation-delay:2.15s}
html[data-ge-motion="on"] [data-motion-kind="products"].is-card-active .ge-product-plane-back{animation:ge-layer-back 3.5s var(--ge-motion-ease) 1}
html[data-ge-motion="on"] [data-motion-kind="products"].is-card-active .ge-product-plane-mid{animation:ge-layer-mid 3.5s var(--ge-motion-ease) 1}
html[data-ge-motion="on"] [data-motion-kind="products"].is-card-active .ge-product-plane-front{animation:ge-layer-front 3.5s var(--ge-motion-ease) 1}
html[data-ge-motion="on"] [data-motion-scene="metrics"].is-scene-started .ge-metric::before{animation:ge-metric-light 1.1s var(--ge-motion-ease) 1}
html[data-ge-motion="on"] [data-motion-scene="metrics"].is-scene-started .ge-metric:nth-child(2)::before{animation-delay:.12s}html[data-ge-motion="on"] [data-motion-scene="metrics"].is-scene-started .ge-metric:nth-child(3)::before{animation-delay:.24s}html[data-ge-motion="on"] [data-motion-scene="metrics"].is-scene-started .ge-metric:nth-child(4)::before{animation-delay:.36s}
html[data-ge-motion="on"] [data-motion-scene="technologies"].is-scene-started .ge-tech-logo::after{animation:ge-tech-signal 1.1s ease-in-out both}
html[data-ge-motion="on"] [data-motion-scene="technologies"].is-scene-started .ge-tech-logo:nth-child(2)::after{animation-delay:.35s}html[data-ge-motion="on"] [data-motion-scene="technologies"].is-scene-started .ge-tech-logo:nth-child(3)::after{animation-delay:.7s}html[data-ge-motion="on"] [data-motion-scene="technologies"].is-scene-started .ge-tech-logo:nth-child(4)::after{animation-delay:1.05s}html[data-ge-motion="on"] [data-motion-scene="technologies"].is-scene-started .ge-tech-logo:nth-child(5)::after{animation-delay:1.4s}html[data-ge-motion="on"] [data-motion-scene="technologies"].is-scene-started .ge-tech-logo:nth-child(6)::after{animation-delay:1.75s}
html[data-ge-motion="on"] [data-motion-scene="services"].is-scene-started .ge-kicker::before{animation:ge-section-stroke .8s var(--ge-motion-ease) 1}
html[data-ge-motion="on"] [data-motion-scene="footer"].is-scene-started .ge-footer-light>i{animation:ge-footer-trace 2.8s .3s ease-in-out both}
/* Pause, don't keep rendering behind other sections. No persistent JS frame loop. */
[data-motion-scene][data-scene-visible="false"],[data-motion-scene][data-scene-visible="false"] *,[data-motion-scene][data-scene-visible="false"] *::before,[data-motion-scene][data-scene-visible="false"] *::after{animation-play-state:paused!important}
html[data-ge-motion="on"] .ge-scene:not(.is-inview) .ge-device-art{animation-play-state:paused!important}
html[data-ge-paused="true"] *,html[data-ge-paused="true"] *::before,html[data-ge-paused="true"] *::after{animation-play-state:paused!important}
html[data-ge-motion="off"] *,html[data-ge-motion="off"] *::before,html[data-ge-motion="off"] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
html[data-ge-motion="off"] .ge-build-tilt{transform:none!important}
html[data-ge-motion="off"] .ge-category-card:hover,html[data-ge-motion="off"] .ge-category-card:hover .ge-category-art,html[data-ge-motion="off"] .ge-button:hover{transform:none}
/* Real motion, small distances. */
@keyframes ge-motion-clock{from{--ge-timeline:0}to{--ge-timeline:1}}
@keyframes ge-code-type{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0 0 0 0)}}
@keyframes ge-caret{0%,48%{opacity:1}49%,100%{opacity:0}}
@keyframes ge-device-settle{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-3px,0)}}
@keyframes ge-rig-float{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-5px,0)}}
@keyframes ge-product-arrive{from{opacity:0;transform:translate3d(0,14px,24px) rotate(9deg) scale(.96)}to{opacity:1;transform:translate3d(0,0,24px) rotate(5deg) scale(1)}}
@keyframes ge-part-arrive{from{opacity:0;transform:translate3d(0,6px,0) scale(.98)}to{opacity:1;transform:translate3d(0,0,0) scale(1)}}
@keyframes ge-ai-arrive{from{opacity:0;transform:translate3d(-5px,8px,30px) rotate(4deg) scale(.94)}to{opacity:1;transform:translate3d(0,0,30px) rotate(8deg) scale(1)}}
@keyframes ge-build-signal{0%{opacity:0;stroke-dashoffset:1000}10%,75%{opacity:.9}100%{opacity:.8;stroke-dashoffset:0}}
@keyframes ge-code-sheen{0%{opacity:0;transform:translateX(-160%) skewX(-18deg)}30%{opacity:.7}100%{opacity:0;transform:translateX(450%) skewX(-18deg)}}
@keyframes ge-star-soft{0%,100%{transform:scale(.88);opacity:.45}50%{transform:scale(1.07);opacity:.9}}
@keyframes ge-chat-arrive{from{opacity:0;transform:translate3d(0,4px,0) scale(.96)}to{opacity:1;transform:none}}
@keyframes ge-typing-visible{0%,80%{opacity:1}100%{opacity:0}}
@keyframes ge-typing-dot{0%,100%{transform:translateY(0);opacity:.5}50%{transform:translateY(-2px);opacity:1}}
@keyframes ge-robot-nod{0%,100%{transform:translateY(0) rotate(0)}40%{transform:translateY(-3px) rotate(-2deg)}65%{transform:translateY(-2px) rotate(1deg)}}
@keyframes ge-icon-accent{0%,100%{transform:scale(1)}45%{transform:scale(1.06)}}
@keyframes ge-flow-signal{0%{stroke-dashoffset:1000;opacity:0}8%{opacity:1}92%{opacity:1}100%{stroke-dashoffset:0;opacity:.7}}
@keyframes ge-flow-activate{0%,100%{transform:translateY(0);box-shadow:0 6px 12px #2b5f9c12}50%{transform:translateY(-3px);box-shadow:0 0 0 4px #9cdaee30,0 5px 15px #297fca22}}
@keyframes ge-layer-back{0%,100%{transform:translate(9px,7px) rotateX(30deg) rotateZ(-20deg)}40%{transform:translate(15px,18px) rotateX(30deg) rotateZ(-20deg)}}
@keyframes ge-layer-mid{0%,100%{transform:translate(4px,-6px) rotateX(30deg) rotateZ(-20deg)}40%{transform:translate(3px,-8px) rotateX(30deg) rotateZ(-20deg)}}
@keyframes ge-layer-front{0%,100%{transform:translate(0,-20px) rotateX(30deg) rotateZ(-20deg)}40%{transform:translate(-5px,-34px) rotateX(30deg) rotateZ(-20deg)}}
@keyframes ge-metric-light{0%,100%{opacity:0;transform:scale(.95)}50%{opacity:1;transform:scale(1)}}
@keyframes ge-tech-signal{0%,100%{opacity:0;transform:scaleX(.35)}35%,65%{opacity:1;transform:scaleX(1)}}
@keyframes ge-button-sheen{0%{opacity:0;transform:translateX(0) skewX(-22deg)}15%{opacity:1}100%{opacity:0;transform:translateX(440%) skewX(-22deg)}}
@keyframes ge-menu-enter{from{opacity:.5;transform:translate3d(0,-5px,0)}to{opacity:1;transform:none}}
@keyframes ge-shield-hover{0%,100%{transform:translateY(0) rotate(10deg)}50%{transform:translateY(-4px) rotate(12deg)}}
@keyframes ge-vpn-ripple-out{0%{transform:scale(.98);opacity:0}20%{opacity:.8}100%{transform:scale(1.25);opacity:0}}
@keyframes ge-vpn-route{0%{stroke-dashoffset:1000;opacity:0}10%,85%{opacity:.9}100%{stroke-dashoffset:0;opacity:0}}
@keyframes ge-section-stroke{from{transform:scaleX(.1)}to{transform:scaleX(1)}}
@keyframes ge-footer-trace{0%{transform:translateX(-110%);opacity:0}10%,85%{opacity:.85}100%{transform:translateX(570%);opacity:0}}
/* Tablet: retain space for real content. */
@media(min-width:761px) and (max-width:1100px){
 .ge-build-stage{width:clamp(205px,28vw,285px);left:8%;top:16%}.ge-code-content{font-size:10px}.ge-code-chrome{min-height:27px;padding:7px 10px}.ge-build-product{width:49%;top:63%}.ge-build-workflow{bottom:-3%}
 .ge-home .ge-category-card,.ge-home:not(:lang(nl)) .ge-category-card{min-height:233px;padding-bottom:132px}.ge-home .ge-category-card p{max-width:90%}
 .ge-home .ge-category-art{width:157px}.ge-home .ge-category-card:nth-child(2) .ge-category-art{width:106px}.ge-home .ge-category-card:nth-child(4) .ge-category-art{width:149px}
 .ge-service-motion{width:56%;max-width:172px}.ge-service-motion-websites{max-width:150px}.ge-service-motion-ai{max-width:184px}
}
/* Compact hero: code and devices share the same image area, never two tall panels. */
@media(max-width:760px){
 .ge-home .ge-scene{aspect-ratio:886/526;margin-top:12px;margin-bottom:5px;overflow:visible}
 .ge-device-art{inset:10px 0 0 0}
 .ge-device-art>picture>img{object-fit:fill}
 .ge-build-stage{left:4.8%;top:5px;width:clamp(179px,48vw,295px);aspect-ratio:380/286;--ge-tilt-x:0deg;--ge-tilt-y:0deg}
 .ge-code-panel{width:76%;top:16%;border-radius:11px;transform:rotate(-6deg)}
 .ge-code-chrome{min-height:20px;padding:6px 8px;gap:3px}.ge-code-chrome>div{gap:3px}.ge-code-chrome i{width:3px;height:3px}.ge-code-chrome>span{font-size:6px}.ge-code-chrome>b{font-size:7px}
 .ge-code-content{padding:7px 7px 8px;font-size:clamp(6.8px,1.9vw,10px);line-height:1.8;letter-spacing:-.3px}.ge-code-line{gap:5px}.ge-code-line em{font-size:.75em}
 .ge-code-status{padding:5px 8px;font-size:5.5px;gap:4px}.ge-code-status>svg{width:8px;height:8px}.ge-code-status>i{height:3px;width:3px;box-shadow:0 0 0 2px #00b78413}
 .ge-build-product{width:49%;top:68%;padding:4px;border-radius:9px}.ge-build-product-chrome{padding:0 2px 3px;font-size:4.5px;gap:2px}.ge-build-product-chrome>i{width:3px;height:3px}.ge-build-product-chrome>b{font-size:6px}
 .ge-build-product .ge-mini-browser{padding:4px;border-radius:5px}.ge-build-product .ge-mini-nav{gap:2px;padding-bottom:3px}.ge-build-product .ge-mini-nav>b{font-size:4px}.ge-build-product .ge-mini-nav>img{width:6px;height:7px}.ge-build-product .ge-mini-nav>i{height:1.5px;width:6px}.ge-build-product .ge-mini-hero{padding:4px 3px;gap:3px;margin-top:3px}.ge-build-product .ge-mini-hero>div{gap:2px}.ge-build-product .ge-mini-hero i{height:2.5px}.ge-build-product .ge-mini-hero small{height:1.5px;margin-top:1px}.ge-build-product .ge-mini-hero b{height:4px;width:16px;margin-top:1px}.ge-build-product .ge-mini-leaf img{width:17px;height:21px}.ge-build-product .ge-mini-cards{gap:2px;margin-top:3px}.ge-build-product .ge-mini-cards i{height:7px;border-radius:2px}
 .ge-build-ai{min-width:42px;gap:4px;padding:7px;border-radius:10px;font-size:8px;top:4%}.ge-build-ai>svg{width:14px;height:14px}.ge-build-ai>i{width:3px;height:3px;right:4px;top:4px}
 .ge-build-workflow{bottom:-12%;left:3%;gap:3px;font-size:5px}.ge-build-workflow>span,.ge-build-workflow>b{height:20px;width:20px;border-radius:6px}.ge-build-workflow>i{width:8px}.ge-build-workflow svg{height:10px;width:10px}
 .ge-build-caption{font-size:5px;padding:3px 5px;top:-2%;left:6%;gap:3px;border-radius:5px}
 .ge-build-star{width:9px;height:9px;left:-3%}.ge-build-star-two{right:-2%;width:7px;height:7px}
 .ge-home .ge-scene-chip{bottom:0;left:auto;right:5%;transform:none;max-width:80%;font-size:7px;padding:6px 10px}
 .ge-home .ge-hero-actions{margin-top:12px}.ge-home .ge-hero-actions .ge-button{font-size:11px}
 .ge-home .ge-category-card,.ge-home:not(:lang(nl)) .ge-category-card{min-height:216px;padding:22px 18px 120px 76px;border-radius:20px}
 .ge-home .ge-category-card h3,.ge-home:not(:lang(nl)) .ge-category-card h3{font-size:16px}.ge-home .ge-category-card p,.ge-home:not(:lang(nl)) .ge-category-card p,.ge-home .ge-category-card:nth-child(4) p{font-size:11.5px;max-width:100%}
 .ge-home .ge-category-more{font-size:11px;bottom:18px}.ge-home .ge-category-art{width:158px;right:0;bottom:0}.ge-home .ge-category-card:nth-child(2) .ge-category-art{width:103px;bottom:18px;right:8px}.ge-home .ge-category-card:nth-child(3) .ge-category-art{width:104px;bottom:20px;right:2px}.ge-home .ge-category-card:nth-child(4) .ge-category-art{width:149px;bottom:0;right:0}
 .ge-service-motion{bottom:48px;max-width:170px;width:54%}.ge-service-motion-websites{max-width:135px;bottom:46px;left:21px}.ge-service-motion-ai{max-width:179px;left:22px}.ge-chat-question,.ge-chat-answer{font-size:9px;padding:7px 10px}
 .ge-service-motion-automation{bottom:51px;left:21px;max-width:183px;width:57%}.ge-flow-node{width:34px;height:34px}.ge-flow-caption{font-size:8px}.ge-service-motion-products{left:24px;bottom:49px}
 .ge-nav>a:not([aria-current])::before{display:none}
}
@media(min-width:540px) and (max-width:760px){
 .ge-home .ge-category-card,.ge-home:not(:lang(nl)) .ge-category-card{padding:76px 17px 133px;min-height:292px}.ge-home .ge-category-card h3{font-size:15px}.ge-home .ge-category-card p{font-size:11px}
 .ge-home .ge-category-card:nth-child(2) .ge-category-art{width:88px}.ge-home .ge-category-card:nth-child(4) .ge-category-art{width:115px}.ge-service-motion-ai{max-width:143px}.ge-chat-question,.ge-chat-answer{font-size:8px;padding:6px 8px}.ge-home .ge-category-art{width:123px}.ge-service-motion-websites{max-width:120px}
}
@media(max-width:370px){.ge-build-stage{left:5%;width:174px}.ge-code-content{font-size:6.8px}.ge-home .ge-scene-chip{font-size:6.5px;right:4%}.ge-home .ge-category-card,.ge-home:not(:lang(nl)) .ge-category-card{padding-left:72px}.ge-home .ge-category-card h3,.ge-home:not(:lang(nl)) .ge-category-card h3{font-size:15px}.ge-home .ge-category-card p,.ge-home:not(:lang(nl)) .ge-category-card p{font-size:10.5px}.ge-home .ge-category-art{width:141px}.ge-home .ge-category-card:nth-child(4) .ge-category-art{width:132px}.ge-service-motion-ai{width:55%;max-width:153px}.ge-chat-question,.ge-chat-answer{font-size:8px}.ge-flow-caption{font-size:7px}.ge-service-motion-automation{width:54%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.ge-build-tilt{transform:none!important}.ge-build-stage .ge-code-line code{clip-path:none!important}}
@media print{.ge-build-stage,.ge-service-motion,.ge-footer-light{display:none!important}.ge-home .ge-category-card{min-height:0!important;padding-bottom:60px!important}.ge-device-art{display:none!important}}
/* Reserve a complete demo row below variable-length translated descriptions. */
.ge-home .ge-category-card,.ge-home:not(:lang(nl)) .ge-category-card{padding-bottom:157px;min-height:258px}
@media(min-width:761px) and (max-width:1100px){.ge-home .ge-category-card,.ge-home:not(:lang(nl)) .ge-category-card{padding-bottom:154px;min-height:255px}}
@media(max-width:760px){.ge-home .ge-category-card,.ge-home:not(:lang(nl)) .ge-category-card{padding-bottom:154px;min-height:249px}}
@media(min-width:540px) and (max-width:760px){.ge-home .ge-category-card,.ge-home:not(:lang(nl)) .ge-category-card{padding-bottom:155px;min-height:310px}}
.ge-scene:not(.is-inview) .ge-scene-sparks i{animation-play-state:paused!important}
/* Preserve the device photograph's native proportions and matching hotspot geometry. */
@media(max-width:760px){.ge-device-art{inset:auto 0 0;height:auto;aspect-ratio:886/474}.ge-device-art>picture>img{object-fit:contain}}

/* Mobile hero hotfix 2026-09-25: use the whole line before wrapping.
   Keeps the approved composition, only removes the artificial empty right side. */
@media(max-width:760px){
  .ge-home .ge-title-mobile br{display:none}
  .ge-home .ge-title-mobile em::before{content:" "}
  .ge-home .ge-headline,
  .ge-home:not(:lang(nl)) .ge-headline{
    width:100%;
    max-width:none;
    text-wrap:wrap;
    margin-top:9px;
    margin-bottom:6px;
  }
  .ge-home .ge-hero-intro.ge-intro-mobile,
  .ge-home:not(:lang(nl)) .ge-hero-intro.ge-intro-mobile{
    max-width:none;
  }
  .ge-home .ge-scene{margin-top:8px}
}
