.services-page{--service-space:clamp(40px,4vw,56px)}.services-page .services-page-hero{padding-top:clamp(132px,11vw,156px);padding-bottom:var(--service-space)}.services-page-hero .eyebrow{margin-bottom:18px}.services-page .subpage-lead{max-width:650px;margin-top:24px}.services-page .subpage-cta{padding-block:var(--service-space);background:#f0f2ee;border-top:1px solid #e1e6dd}.services-page .subpage-cta h2{margin-bottom:28px}.service-lab{padding:0 clamp(24px,6vw,100px) var(--service-space);max-width:1440px;margin:auto;position:relative}.service-lab-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;display:grid}.service-lab-tile{background:#fff;border:1px solid #dfe5dc;border-radius:16px;min-width:0;scroll-margin-top:100px;transition:border-color .3s,box-shadow .3s;position:relative;overflow:hidden}.service-lab-tile:hover{border-color:#94ab90;box-shadow:0 9px 30px -18px #24433035}.service-lab-visual{background-color:#f7f9f4;background-image:radial-gradient(#b8c8b580 .7px,#0000 .7px);background-size:17px 17px;border-bottom:1px solid #e3e9e0;padding:8px 18px 20px}.service-lab-tile:nth-child(4n+2) .service-lab-visual,.service-lab-tile:nth-child(4n+3) .service-lab-visual{background-color:#f3f6f3}.service-lab-visual svg{width:100%;height:190px;display:block}.service-lab-visual>p{text-align:center;color:#55745d;font:13px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace}.service-lab-copy{padding:26px 30px 30px}.service-lab-copy h2{letter-spacing:-.045em;max-width:420px;margin:0 0 14px;font-size:clamp(26px,2.6vw,35px);line-height:1.13}.service-lab-copy>p{color:#646b63;max-width:470px;font-size:16px;line-height:1.65}.service-lab-copy ul{border-top:1px solid #e7ebe4;flex-wrap:wrap;gap:8px 18px;margin:20px 0 0;padding:18px 0 0;list-style:none;display:flex}.service-lab-copy li{color:#435846;font-size:14px;line-height:1.5}.st-guide{stroke:#cdd8c8;stroke-width:.65px}.st-orbit{stroke:#c3d0bd;stroke-width:.7px;stroke-dasharray:2 6}.st-wire{stroke:#9caf97;stroke-width:1.2px}.st-surface{fill:#fbfcf9;stroke:#95ad8e;stroke-width:1.2px}.st-outline{stroke:#527b58;stroke-width:1.4px}.st-solid{fill:#284932}.st-node{fill:#608768}.st-white{fill:#e4eedb}.st-light{stroke:#e4eedb;stroke-width:1.5px}.st-travel{stroke:#3b714d;stroke-width:3px;stroke-linecap:round;stroke-dasharray:7 43;animation:4s linear infinite service-transmit}.st-delay{animation-delay:-2s}.st-loop{stroke:#b8c9b0;stroke-width:8px}.st-ring{stroke:#6b9469;transform-box:fill-box;transform-origin:50%;animation:3s ease-out infinite service-ring}.st-assemble{transform-origin:200px 95px;animation:5.4s ease-in-out infinite service-align}.st-scan{stroke:#527f53;stroke-width:1.8px;animation:3.6s ease-in-out infinite alternate service-scan}.st-build{transform-box:fill-box;transform-origin:bottom;animation:4.5s ease-in-out infinite service-build}.st-code{stroke:#72936b;stroke-width:4px;stroke-linecap:round;stroke-dasharray:100;animation:5s ease-in-out infinite service-write}.st-breathe{animation:3.5s ease-in-out infinite service-breathe}@keyframes service-transmit{to{stroke-dashoffset:-100px}}@keyframes service-align{0%,to{transform:rotate(-7deg)scale(.93)}40%,80%{transform:rotate(0)scale(1)}}@keyframes service-scan{0%{opacity:.2;transform:translateY(0)}to{opacity:1;transform:translateY(132px)}}@keyframes service-ring{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(2.6)}}@keyframes service-build{0%,to{opacity:.6;transform:scaleY(.55)}40%,80%{opacity:1;transform:scaleY(1)}}@keyframes service-write{0%,10%,to{stroke-dashoffset:100px}60%,85%{stroke-dashoffset:0}}@keyframes service-breathe{0%,to{opacity:.45}50%{opacity:1}}.service-motion-control{opacity:0;pointer-events:none;font:inherit;background:#fff;border:1px solid #527b58;border-radius:24px;padding:12px 18px;font-size:14px;position:absolute;top:12px;right:32px}.service-motion-control:focus-visible{opacity:1;pointer-events:auto;outline-offset:4px;outline:2px solid #284932}.service-lab.is-paused *{animation-play-state:paused!important}@media (max-width:680px){.service-lab-grid{grid-template-columns:1fr;gap:20px}.service-lab-copy{padding:24px}.service-lab-visual svg{height:175px}.service-lab-copy h2{font-size:29px}}@media (prefers-reduced-motion:reduce){.service-lab *{transition:none!important;animation:none!important}.st-ring,.service-motion-control{display:none}.st-code{stroke-dashoffset:0}}.service-quote-link{color:#315d40;border:1px solid #a3b59f;border-radius:999px;align-items:center;min-height:44px;margin-top:22px;padding:10px 18px;font-size:14px;line-height:1.4;text-decoration:none;transition:color .25s,background .25s,border-color .25s;display:inline-flex}.service-quote-link:after{content:"";border-radius:16px;position:absolute;inset:0}.service-lab-tile:focus-within{outline-offset:4px;outline:2px solid #315d40}.service-quote-link:focus-visible{outline:none}.service-lab-tile:focus-within .service-quote-link{color:#fff;background:#315d40;border-color:#315d40}.service-lab-visual{transition:background-color .3s,box-shadow .3s}.service-lab-visual svg{transition:filter .3s}@media (hover:hover){.service-lab-tile:hover{border-color:#659c72;box-shadow:0 0 0 1px #659c7225,0 10px 35px -12px #3b714d35}.service-lab-tile:hover .service-lab-visual{background-color:#e9f4e4;box-shadow:inset 0 0 50px #b5dc9e24}.service-lab-tile:hover .service-lab-visual svg{filter:drop-shadow(0 0 5px #61965b35)}.service-lab-tile:hover .service-quote-link{color:#fff;background:#315d40;border-color:#315d40}}.service-lab-tile:focus-within .service-lab-visual{background-color:#e9f4e4}@media (hover:none),(pointer:coarse){.service-lab-tile.is-in-view{border-color:#659c72;box-shadow:0 0 0 1px #659c7225,0 10px 35px -12px #3b714d45}.service-lab-tile.is-in-view .service-lab-visual{background-color:#e9f4e4;box-shadow:inset 0 0 50px #b5dc9e38}.service-lab-tile.is-in-view .service-lab-visual svg{filter:drop-shadow(0 0 5px #61965b45)}.service-lab-tile.is-in-view .service-quote-link{color:#fff;background:#315d40;border-color:#315d40}.service-lab-tile:active{border-color:#315d40;box-shadow:0 0 0 2px #659c7260,0 10px 35px -12px #3b714d60}.service-lab-tile:active .service-lab-visual{background-color:#dbefd4}}@media (prefers-reduced-motion:reduce){.service-lab-visual,.service-lab-visual svg,.service-quote-link{transition:none}}
