/* Interactive studio: four six-second stories, rendered with the existing SVG. */
.ngh .ngh-team-illustration{--ngt-duration:6s;--ngt-ink:#333333;--ngt-lime:#94c64b;--ngt-soft:#edf3e5;scroll-margin-top:110px;position:relative;isolation:isolate;border-radius:16px;box-shadow:0 12px 38px #3333330a}
.ngh-team-intro{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px 18px 14px;background:#fff;border-bottom:1px solid #e2e9d9}
.ngh-team-eyebrow{display:inline-flex;align-items:center;gap:8px;color:#444444;font:12px/1.4 Proximanova-bold,sans-serif;letter-spacing:.08em}
.ngh-team-eyebrow i{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#89bb43;box-shadow:0 0 0 4px #89bb4317}
.ngh-team-hint{color:#666666;font:13px/1.4 Proximanova-regular,sans-serif}
.ngh-team-panel{position:relative;overflow:hidden;background:#f1f6ea}
.ngh-team-panel #ngh-team-scene{width:100%;aspect-ratio:900/560;display:block;height:auto}
.ngh .ngh-team-stages{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid #dce5d0;padding:12px;gap:8px;background:#fff}
.ngh .ngh-team-stages button{appearance:none;position:relative;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;min-width:0;min-height:54px;margin:0;padding:10px 6px 13px;border:1px solid #dce6d1;border-radius:8px;background:#f0f4ea;color:#555555;font:16px/1.25 Proximanova-bold,sans-serif;cursor:pointer;overflow:hidden;transition:background-color .18s,color .18s,border-color .18s,transform .18s;touch-action:manipulation}
body.ng-chrome .ngh .ngh-team-stages button>span{display:inline;padding:0;margin:0;background:transparent;color:inherit;border:0;border-radius:0;font-size:inherit;line-height:inherit;animation:none;text-align:center}
body.ng-chrome .ngh .ngh-team-stages button>.ngh-team-step-number{font-size:12px;letter-spacing:.03em;opacity:.78}
.ngh .ngh-team-stages button[aria-pressed=true]{background:#333333;border-color:#333333;color:#fff}
.ngh .ngh-team-stages button:active{transform:scale(.97)}
.ngh .ngh-team-stages button:disabled{cursor:default}
.ngh-team-stage-progress{position:absolute;bottom:0;left:0;width:100%;height:3px;background:#c5ed81;transform:scaleX(0);transform-origin:left;pointer-events:none}
.ngh-team-illustration.is-stage-playing [aria-pressed=true] .ngh-team-stage-progress{animation:ngt-process-progress var(--ngt-duration) linear both}
.ngh-team-illustration.is-complete [aria-pressed=true] .ngh-team-stage-progress{transform:scaleX(1)}
.ngh .ngh-team-caption{display:block;min-height:172px;padding:18px;border-top:1px solid #e1e8d7;background:#fff}
.ngh-team-story{min-height:80px}
.ngh-team-story strong{display:block;color:#333333;font:20px/1.25 Proximanova-bold,sans-serif;letter-spacing:-.01em}
body.ng-chrome .ngh .ngh-team-caption .ngh-team-story p{max-width:none;min-width:0;flex:none;margin:6px 0 0;color:#555555;font:16px/1.45 Proximanova-regular,sans-serif}
.ngh-team-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:12px}
body.ng-chrome .ngh .ngh-team-controls button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 14px;margin:0;border:1px solid #cddabe;border-radius:7px;color:#444444;background:#f5f8ef;font:15px/1.3 Proximanova-bold,sans-serif;cursor:pointer;touch-action:manipulation}
body.ng-chrome .ngh .ngh-team-controls [data-team-play-all]{background:#fff;border-color:#cddabe}
.ngh-team-controls [data-team-play-all]::before{content:'';width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:7px solid currentColor;margin-right:8px}
body.ng-chrome .ngh .ngh-team-controls button[hidden]{display:none}
.ngh .ngh-team-illustration button:focus-visible{outline:3px solid #333333;outline-offset:3px}
.ngh-team-sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* Final-state artwork is available without motion or JavaScript. */
.ngh-team-illustration .ngt-plan-scene,.ngh-team-illustration .ngt-build-scene,.ngh-team-illustration .ngt-promote-scene{display:none}
.ngh-team-illustration[data-stage=plan] .ngt-plan-scene,.ngh-team-illustration[data-stage=build] .ngt-build-scene,.ngh-team-illustration[data-stage=promote] .ngt-promote-scene{display:block}
.ngh-team-illustration:not([data-stage=design]) .ngt-design-scene{display:none}
.ngh-team-illustration .ngt-mobile-proof,.ngh-team-illustration .ngt-review-check{opacity:0}
.ngh-team-illustration[data-stage=build] .ngt-mobile-proof,.ngh-team-illustration[data-stage=build] .ngt-review-check{opacity:1}
.ngh-team-illustration .ngt-focus-plan,.ngh-team-illustration .ngt-focus-screen,.ngh-team-illustration .ngt-focus-marketing{opacity:0}
.ngh-team-illustration[data-stage=plan] .ngt-focus-plan,.ngh-team-illustration[data-stage=design] .ngt-focus-screen,.ngh-team-illustration[data-stage=build] .ngt-focus-screen,.ngh-team-illustration[data-stage=promote] .ngt-focus-marketing{opacity:.8}
.ngh-team-illustration .ngt-growth-line{opacity:.3}
.ngh-team-illustration[data-stage=promote] .ngt-growth-line{opacity:1}
.ngh-team-illustration .ngt-click,.ngh-team-illustration .ngt-goal-ring,.ngh-team-illustration .ngt-growth-spark,.ngh-team-illustration .ngt-stage-spark,.ngh-team-illustration .ngt-coffee-steam{opacity:0}
.ngh-team-illustration :is(.ngt-plan-note,.ngt-milestone,.ngt-web-card,.ngt-hero-build,.ngt-review-check,.ngt-goal-ring,.ngt-click,.ngt-code-symbol,.ngt-responsive-desktop,.ngt-search-box,.ngt-search-result,.ngt-inquiry,.ngt-stage-spark,.ngt-growth-spark,.ngt-plan-ticks path,.ngt-blink){transform-box:fill-box;transform-origin:center}
.ngh-team-illustration .ngt-bars rect{transform-box:fill-box;transform-origin:center bottom}
.ngh-team-illustration .ngt-hand{transform-box:fill-box;transform-origin:center}
.ngh-team-illustration .ngt-point{transform-box:fill-box;transform-origin:left bottom}
.ngh-team-illustration .ngt-review-arm{transform-box:fill-box;transform-origin:right top}
.ngh-team-illustration .ngt-cursor{transform-box:fill-box;transform-origin:center}
/* Shared, finite motion. Every new selection restarts one coordinated scene. */
.ngh-team-illustration.is-stage-playing .ngt-coffee-steam{animation:ngt-process-steam 3s 2 both}
.ngh-team-illustration.is-stage-playing .ngt-blink{animation:ngt-process-blink 6s both}
.ngh-team-illustration.is-stage-playing .ngt-stage-spark{animation:ngt-process-spark 1.2s 4.2s both}
.ngh-team-illustration.is-stage-playing .ngt-team-dots circle{animation:ngt-process-dot 1.6s 3 both;transform-box:fill-box;transform-origin:center}
.ngh-team-illustration.is-stage-playing .ngt-team-dots circle:nth-child(2){animation-delay:.15s}
.ngh-team-illustration.is-stage-playing .ngt-team-dots circle:nth-child(3){animation-delay:.3s}
/* 01 Plan: milestones, a drawn route, a goal and a collaborative gesture. */
.ngh-team-illustration.is-stage-playing[data-stage=plan] .ngt-plan-note{animation:ngt-process-pop .65s .15s both}
.ngh-team-illustration.is-stage-playing[data-stage=plan] .ngt-plan-note--two{animation-delay:.65s}
.ngh-team-illustration.is-stage-playing[data-stage=plan] .ngt-plan-note--three{animation-delay:1.15s}
.ngh-team-illustration.is-stage-playing[data-stage=plan] .ngt-plan-link{stroke-dasharray:70;animation:ngt-process-link 1.7s .65s both}
.ngh-team-illustration.is-stage-playing[data-stage=plan] .ngt-plan-ticks path{animation:ngt-process-pop .4s 1.25s both}
.ngh-team-illustration.is-stage-playing[data-stage=plan] .ngt-plan-ticks path:nth-child(2){animation-delay:1.75s}
.ngh-team-illustration.is-stage-playing[data-stage=plan] .ngt-plan-ticks path:nth-child(3){animation-delay:2.25s}
.ngh-team-illustration.is-stage-playing[data-stage=plan] .ngt-roadmap{stroke-dasharray:1;animation:ngt-process-draw 2.5s .5s both}
.ngh-team-illustration.is-stage-playing[data-stage=plan] .ngt-milestone{animation:ngt-process-pop .7s .15s both}
.ngh-team-illustration.is-stage-playing[data-stage=plan] .ngt-milestone--two{animation-delay:1.35s}
.ngh-team-illustration.is-stage-playing[data-stage=plan] .ngt-milestone--three{animation-delay:2.7s}
.ngh-team-illustration.is-stage-playing[data-stage=plan] .ngt-goal-ring{animation:ngt-process-ring 1.3s 3.2s both}
.ngh-team-illustration.is-stage-playing[data-stage=plan] .ngt-point{animation:ngt-process-point 4s .3s both}
/* 02 Design: a wireframe becomes a complete website with a deliberate click. */
.ngh-team-illustration.is-stage-playing[data-stage=design] .ngt-design-hero{animation:ngt-process-rise .8s .1s both}
.ngh-team-illustration.is-stage-playing[data-stage=design] .ngt-design-copy{animation:ngt-process-rise .8s .5s both}
.ngh-team-illustration.is-stage-playing[data-stage=design] .ngt-hero-build{animation:ngt-process-pop 1s .8s both}
.ngh-team-illustration.is-stage-playing[data-stage=design] .ngt-web-card{animation:ngt-process-rise .8s 1.2s both}
.ngh-team-illustration.is-stage-playing[data-stage=design] .ngt-web-card--two{animation-delay:1.5s}
.ngh-team-illustration.is-stage-playing[data-stage=design] .ngt-web-card--three{animation-delay:1.8s}
.ngh-team-illustration.is-stage-playing[data-stage=design] .ngt-cursor{animation:ngt-process-cursor 6s both}
.ngh-team-illustration.is-stage-playing[data-stage=design] .ngt-click{animation:ngt-process-ring .9s 3s both}
.ngh-team-illustration.is-stage-playing[data-stage=design] .ngt-hand{animation:ngt-process-type .7s .4s 5 both}
.ngh-team-illustration.is-stage-playing[data-stage=design] .ngt-point{animation:ngt-process-point 4s .5s both}
/* 03 Build: short code strokes, responsive previews and a completed check. */
.ngh-team-illustration.is-stage-playing[data-stage=build] .ngt-code-symbol{animation:ngt-process-pop .8s .1s both}
.ngh-team-illustration.is-stage-playing[data-stage=build] .ngt-code-lines path{stroke-dasharray:100;animation:ngt-process-code .8s .4s both}
.ngh-team-illustration.is-stage-playing[data-stage=build] .ngt-code-lines path:nth-child(2){animation-delay:.8s}
.ngh-team-illustration.is-stage-playing[data-stage=build] .ngt-code-lines path:nth-child(3){animation-delay:1.2s}
.ngh-team-illustration.is-stage-playing[data-stage=build] .ngt-code-lines path:nth-child(4){animation-delay:1.6s}
.ngh-team-illustration.is-stage-playing[data-stage=build] .ngt-code-lines path:nth-child(5){animation-delay:2s}
.ngh-team-illustration.is-stage-playing[data-stage=build] .ngt-responsive-desktop{animation:ngt-process-rise 1s 1.7s both}
.ngh-team-illustration.is-stage-playing[data-stage=build] .ngt-mobile-proof{animation:ngt-process-rise 1s 2.5s both}
.ngh-team-illustration.is-stage-playing[data-stage=build] .ngt-build-progress{stroke-dasharray:1;animation:ngt-process-draw 3s .4s both}
.ngh-team-illustration.is-stage-playing[data-stage=build] .ngt-review-check{animation:ngt-process-pop .7s 3.6s both}
.ngh-team-illustration.is-stage-playing[data-stage=build] .ngt-review-arm{animation:ngt-process-review 4.5s both}
.ngh-team-illustration.is-stage-playing[data-stage=build] .ngt-hand{animation:ngt-process-type .6s .2s 6 both}
/* 04 Promote: search discovery, growing charts and a customer inquiry. */
.ngh-team-illustration.is-stage-playing[data-stage=promote] .ngt-search-box{animation:ngt-process-rise .8s .1s both}
.ngh-team-illustration.is-stage-playing[data-stage=promote] .ngt-search-result{animation:ngt-process-rise .9s .7s both}
.ngh-team-illustration.is-stage-playing[data-stage=promote] .ngt-bars rect{animation:ngt-process-growth 1.7s .2s both}
.ngh-team-illustration.is-stage-playing[data-stage=promote] .ngt-bars rect:nth-child(2){animation-delay:.6s}
.ngh-team-illustration.is-stage-playing[data-stage=promote] .ngt-bars rect:nth-child(3){animation-delay:1s}
.ngh-team-illustration.is-stage-playing[data-stage=promote] .ngt-bars rect:nth-child(4){animation-delay:1.4s}
.ngh-team-illustration.is-stage-playing[data-stage=promote] .ngt-growth-line{stroke-dasharray:150;animation:ngt-process-chart 2s 1s both}
.ngh-team-illustration.is-stage-playing[data-stage=promote] .ngt-inquiry{animation:ngt-process-pop .8s 2.9s both}
.ngh-team-illustration.is-stage-playing[data-stage=promote] .ngt-inquiry-dot{animation:ngt-process-notify 1.4s 3.7s both;transform-box:fill-box;transform-origin:center}
.ngh-team-illustration.is-stage-playing[data-stage=promote] .ngt-growth-spark{animation:ngt-process-spark 1.3s 3.3s both}
.ngh-team-illustration.is-stage-playing[data-stage=promote] .ngt-review-arm{animation:ngt-process-review 4.5s .5s both}
.ngh-team-illustration.is-paused *,.ngh-team-illustration.is-paused *::before,.ngh-team-illustration.is-paused *::after{animation-play-state:paused!important}
.ngh-team-illustration.is-reduced *{animation:none!important;transition:none!important}
@keyframes ngt-process-progress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@keyframes ngt-process-rise{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}
@keyframes ngt-process-pop{0%{opacity:0;transform:translateY(8px) scale(.72)}70%{opacity:1;transform:translateY(-2px) scale(1.04)}100%{opacity:1;transform:translateY(0) scale(1)}}
@keyframes ngt-process-draw{from{stroke-dashoffset:1;opacity:.25}to{stroke-dashoffset:0;opacity:1}}
@keyframes ngt-process-link{from{stroke-dashoffset:70;opacity:.25}to{stroke-dashoffset:0;opacity:1}}
@keyframes ngt-process-code{from{stroke-dashoffset:100;opacity:0}to{stroke-dashoffset:0;opacity:1}}
@keyframes ngt-process-chart{from{stroke-dashoffset:150;opacity:0}to{stroke-dashoffset:0;opacity:1}}
@keyframes ngt-process-growth{from{transform:scaleY(.12)}to{transform:scaleY(1)}}
@keyframes ngt-process-ring{0%{opacity:0;transform:scale(.55)}25%{opacity:.85}100%{opacity:0;transform:scale(1.6)}}
@keyframes ngt-process-cursor{0%,12%{opacity:0;transform:translate(22px,17px)}28%,45%{opacity:1;transform:translate(-26px,-8px)}51%{opacity:1;transform:translate(-26px,-8px) scale(.85)}56%,70%{opacity:1;transform:translate(-26px,-8px)}85%,100%{opacity:1;transform:translate(0,0)}}
@keyframes ngt-process-point{0%,100%{transform:rotate(0)}25%,65%{transform:rotate(-6deg)}}
@keyframes ngt-process-review{0%,100%{transform:rotate(0)}40%,72%{transform:rotate(10deg)}}
@keyframes ngt-process-type{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes ngt-process-blink{0%,40%,43%,100%{transform:scaleY(1)}41.5%{transform:scaleY(.1)}}
@keyframes ngt-process-spark{0%{opacity:0;transform:scale(.5) rotate(-12deg)}40%{opacity:.9;transform:scale(1.1) rotate(4deg)}100%{opacity:0;transform:scale(1.2) rotate(9deg)}}
@keyframes ngt-process-notify{0%,100%{transform:scale(1)}40%{transform:scale(1.4)}}
@keyframes ngt-process-steam{0%{opacity:0;transform:translateY(4px)}35%{opacity:.55}100%{opacity:0;transform:translateY(-9px)}}
@keyframes ngt-process-dot{0%,100%{opacity:.45;transform:scale(.8)}45%{opacity:1;transform:scale(1)}}
@media(hover:hover) and (pointer:fine){.ngh .ngh-team-stages button:not(:disabled):hover{transform:translateY(-2px);border-color:#777777}.ngh .ngh-team-stages button[aria-pressed=false]:hover{background:#e5eed8}body.ng-chrome .ngh .ngh-team-controls button:hover{background:#e9f2dc;border-color:#777777}}
@media(max-width:600px){.ngh-team-intro{flex-direction:column;align-items:flex-start;gap:5px;padding:14px 14px 12px}.ngh .ngh-team-stages{padding:10px;gap:6px}.ngh .ngh-team-stages button{flex-direction:column;gap:3px;font-size:16px;min-height:66px;padding:9px 3px 12px}.ngh .ngh-team-caption{padding:16px;min-height:186px}.ngh-team-story{min-height:104px}.ngh-team-story strong{font-size:20px}.ngh-team-controls{margin-top:10px;gap:8px}}
@media(max-width:360px){.ngh .ngh-team-stages{padding:8px;gap:5px}.ngh .ngh-team-stages button{font-size:14px}.ngh-team-story strong{font-size:19px}body.ng-chrome .ngh .ngh-team-controls button{padding:10px 11px;font-size:14px}}
@media(prefers-reduced-motion:reduce){.ngh-team-illustration *{animation:none!important;transition:none!important}.ngh .ngh-team-stages button:hover,.ngh .ngh-team-stages button:active{transform:none}}

.ngh-work-showcase{background:#fff}
.ngh-work__grid--stills{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:46px 32px}
.ngh-project--still{border:0;background:transparent;box-shadow:none;border-radius:0;overflow:visible}
.ngh-project__showcase{position:relative;display:block;padding:32px 24px 43px;background:#EAF0E2;border:1px solid #DDE6D3;border-radius:12px;color:#333333;overflow:hidden;text-decoration:none}
.ngh-project--still:nth-child(2) .ngh-project__showcase{background:#EEEAE5;border-color:#E0D8CD}
.ngh-project--still:nth-child(3) .ngh-project__showcase{background:#E5ECEF;border-color:#D3E0E3}
.ngh-project--still:nth-child(4) .ngh-project__showcase{background:#E9EFDF;border-color:#D9E3C8}
.ngh-browser{overflow:hidden;border-radius:7px;border:1px solid #33333325;box-shadow:0 18px 35px #24242420;background:#fff;transform:translateY(0);transition:transform .35s,box-shadow .35s}
.ngh-project__showcase:hover .ngh-browser,.ngh-project__showcase:focus-visible .ngh-browser{transform:translateY(-5px);box-shadow:0 23px 40px #2424242A}
.ngh-browser__bar{height:31px;background:#FAFBF8;display:flex;align-items:center;gap:12px;padding:0 12px;border-bottom:1px solid #DAE2D3}
.ngh-browser__dots{display:flex;gap:4px}.ngh-browser__dots i{display:block;width:5px;height:5px;border-radius:50%;background:#B8C6AE}
.ngh-browser__address{font:10px/1.3 Proximanova-regular,sans-serif;letter-spacing:.02em;color:#666666;flex:1;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ngh-browser__external{font-size:16px;color:#777777}
.ngh-site-still{width:100%;aspect-ratio:1348/926;background-size:cover;background-position:center top;background-repeat:no-repeat;background-color:#fff}
.ngh-site-still--fallback img{width:100%;height:100%;object-fit:cover;object-position:top}
.ngh-project__peek{position:absolute;right:24px;bottom:13px;display:flex;gap:7px;align-items:center;color:#555555;font:11px/1.3 Proximanova-bold,sans-serif;letter-spacing:.03em}
.ngh-project__peek svg{height:13px;width:13px}
.ngh-project--still .ngh-project__body{padding:23px 2px 0}
.ngh .ngh-project__eyebrow{font:11px/1.4 Proximanova-bold,sans-serif;color:#666666;letter-spacing:.08em;text-transform:uppercase;margin:0 0 9px}
.ngh-project--still h3{font-size:27px;line-height:1.2;margin:0 0 13px}
.ngh-project--still .ngh-project__body>p:not(.ngh-project__eyebrow){font-size:15px;line-height:1.6;margin-bottom:17px}
.ngh-project__showcase:focus-visible{outline:3px solid #333333;outline-offset:5px}
@media(max-width:800px){.ngh-work__grid--stills{gap:34px 22px}.ngh-project__showcase{padding:22px 16px 38px}.ngh-project__peek{right:16px}.ngh-browser__bar{height:26px;padding:0 8px;gap:7px}.ngh-browser__dots{gap:3px}.ngh-browser__dots i{height:4px;width:4px}.ngh-browser__address{font-size:9px}.ngh-project--still h3{font-size:24px}}
@media(max-width:600px){.ngh-work__grid--stills{grid-template-columns:1fr;gap:36px}.ngh-team-stages{padding:10px;gap:5px}.ngh-team-stages span{font-size:10px}.ngh .ngh-team-caption p{max-width:175px}.ngh-browser__bar{height:28px}.ngh-project__showcase{padding:25px 18px 39px}}
@media(prefers-reduced-motion:reduce){.ngh-team-illustration:not(.is-motion-allowed) *{animation:none!important}.ngh-browser{transition:none}.ngh-project__showcase:hover .ngh-browser{transform:none}}
