.AppCanopyHero-module__nUVJDG__hero{background:#f3f5f8;border-bottom:1px solid #dfe4eb;padding:118px 0 104px}.AppCanopyHero-module__nUVJDG__shell{grid-template-columns:minmax(0,.84fr) minmax(500px,1.16fr);align-items:center;gap:clamp(56px,7vw,104px);width:min(100% - 48px,1240px);margin:0 auto;display:grid}.AppCanopyHero-module__nUVJDG__copy{max-width:560px}.AppCanopyHero-module__nUVJDG__eyebrow{color:#245cf4;font-family:var(--mono);letter-spacing:.11em;text-transform:uppercase;margin:0 0 25px;font-size:.67rem;font-weight:750}.AppCanopyHero-module__nUVJDG__copy h1{color:#0d1522;letter-spacing:-.06em;text-wrap:balance;margin:0;font-size:clamp(3.4rem,5.7vw,5.6rem);line-height:.96}.AppCanopyHero-module__nUVJDG__lead{color:#58677b;max-width:540px;margin:28px 0 0;font-size:clamp(1rem,1.3vw,1.14rem);line-height:1.67}.AppCanopyHero-module__nUVJDG__actions{align-items:center;gap:22px;margin-top:34px;display:flex}.AppCanopyHero-module__nUVJDG__primaryAction{color:#fff;background:#1f5eff;border-radius:8px;justify-content:center;align-items:center;gap:16px;min-height:50px;padding:12px 19px;font-size:.8rem;font-weight:750;transition:background .15s,transform .15s;display:inline-flex}.AppCanopyHero-module__nUVJDG__primaryAction:hover{background:#164bd3;transform:translateY(-1px)}.AppCanopyHero-module__nUVJDG__secondaryAction{color:#253246;border-bottom:1px solid #aeb9c8;padding:4px 0;font-size:.78rem;font-weight:720}.AppCanopyHero-module__nUVJDG__secondaryAction:hover{color:#1f5eff;border-color:currentColor}.AppCanopyHero-module__nUVJDG__toolchain{border-top:1px solid #d4dae3;grid-template-columns:1fr 1fr;gap:0;margin-top:46px;padding-top:20px;display:grid}.AppCanopyHero-module__nUVJDG__tool{align-items:center;gap:11px;min-width:0;display:flex}.AppCanopyHero-module__nUVJDG__tool+.AppCanopyHero-module__nUVJDG__tool{border-left:1px solid #d4dae3;padding-left:20px}.AppCanopyHero-module__nUVJDG__tool img{object-fit:contain;flex:none;width:34px;height:34px;display:block}.AppCanopyHero-module__nUVJDG__tool>span{gap:2px;min-width:0;display:grid}.AppCanopyHero-module__nUVJDG__tool strong{color:#172235;font-size:.72rem}.AppCanopyHero-module__nUVJDG__tool small{color:#7a8798;font-family:var(--mono);text-overflow:ellipsis;white-space:nowrap;font-size:.55rem;overflow:hidden}.AppCanopyHero-module__nUVJDG__workProof{background:#fff;border:1px solid #d5dce6;border-radius:18px;padding:18px;box-shadow:0 24px 60px #1828431a}.AppCanopyHero-module__nUVJDG__proofHeader{color:#778497;min-height:34px;font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:20px;padding:0 3px 14px;font-size:.58rem;display:flex}.AppCanopyHero-module__nUVJDG__proofHeader a{color:#1f5eff;letter-spacing:0;text-transform:none}.AppCanopyHero-module__nUVJDG__primaryProject{background:#f8fafc;border:1px solid #dfe4eb;border-radius:12px;overflow:hidden}.AppCanopyHero-module__nUVJDG__projectMeta{background:#fff;border-bottom:1px solid #e4e8ee;align-items:center;gap:12px;min-height:56px;padding:10px 13px;display:flex}.AppCanopyHero-module__nUVJDG__projectMeta>span{color:#1f5eff;width:30px;height:30px;font-family:var(--mono);background:#f2f6ff;border:1px solid #d6e0ff;border-radius:7px;place-items:center;font-size:.57rem;display:grid}.AppCanopyHero-module__nUVJDG__projectMeta div{gap:2px;display:grid}.AppCanopyHero-module__nUVJDG__projectMeta strong{color:#172235;font-size:.75rem}.AppCanopyHero-module__nUVJDG__projectMeta small{color:#7a8798;font-size:.6rem}.AppCanopyHero-module__nUVJDG__primaryImage{aspect-ratio:16/9;background:#edf1f5;position:relative;overflow:hidden}.AppCanopyHero-module__nUVJDG__primaryImage img,.AppCanopyHero-module__nUVJDG__secondaryImage img{object-fit:cover;object-position:top center}.AppCanopyHero-module__nUVJDG__primaryProject ul{background:#fff;border-top:1px solid #e4e8ee;grid-template-columns:repeat(3,1fr);margin:0;padding:0;list-style:none;display:grid}.AppCanopyHero-module__nUVJDG__primaryProject li{color:#667487;text-align:center;padding:12px 9px;font-size:.61rem;font-weight:700}.AppCanopyHero-module__nUVJDG__primaryProject li+li{border-left:1px solid #e4e8ee}.AppCanopyHero-module__nUVJDG__secondaryProjects{grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;display:grid}.AppCanopyHero-module__nUVJDG__secondaryProject{background:#fff;border:1px solid #dfe4eb;border-radius:10px;grid-template-columns:86px 1fr;align-items:center;min-width:0;transition:border-color .15s,transform .15s;display:grid;overflow:hidden}.AppCanopyHero-module__nUVJDG__secondaryProject:hover{border-color:#aebfe8;transform:translateY(-1px)}.AppCanopyHero-module__nUVJDG__secondaryImage{background:#edf1f5;border-right:1px solid #e4e8ee;width:86px;height:64px;display:block;position:relative;overflow:hidden}.AppCanopyHero-module__nUVJDG__secondaryProject>span:last-child{gap:2px;min-width:0;padding:10px;display:grid}.AppCanopyHero-module__nUVJDG__secondaryProject strong{color:#172235;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.AppCanopyHero-module__nUVJDG__secondaryProject small{color:#7a8798;font-size:.56rem}@media (max-width:880px){.AppCanopyHero-module__nUVJDG__hero{padding:96px 0 82px}.AppCanopyHero-module__nUVJDG__shell{grid-template-columns:minmax(0,.9fr) minmax(390px,1.1fr);gap:38px}.AppCanopyHero-module__nUVJDG__copy h1{font-size:clamp(3rem,7.3vw,4.3rem)}.AppCanopyHero-module__nUVJDG__toolchain{grid-template-columns:1fr;gap:13px}.AppCanopyHero-module__nUVJDG__tool+.AppCanopyHero-module__nUVJDG__tool{border-top:1px solid #d4dae3;border-left:0;padding:13px 0 0}.AppCanopyHero-module__nUVJDG__workProof{padding:12px}.AppCanopyHero-module__nUVJDG__secondaryProject{grid-template-columns:1fr}.AppCanopyHero-module__nUVJDG__secondaryImage{border-bottom:1px solid #e4e8ee;border-right:0;width:100%;height:58px}}@media (max-width:720px){.AppCanopyHero-module__nUVJDG__hero{padding:88px 0 70px}.AppCanopyHero-module__nUVJDG__shell{grid-template-columns:1fr;gap:50px;width:min(100% - 28px,1240px)}.AppCanopyHero-module__nUVJDG__copy{max-width:620px}.AppCanopyHero-module__nUVJDG__copy h1{font-size:clamp(3rem,14vw,4.6rem)}.AppCanopyHero-module__nUVJDG__actions{flex-direction:column;align-items:flex-start}.AppCanopyHero-module__nUVJDG__toolchain{grid-template-columns:1fr 1fr}.AppCanopyHero-module__nUVJDG__tool+.AppCanopyHero-module__nUVJDG__tool{border-top:0;border-left:1px solid #d4dae3;padding:0 0 0 14px}.AppCanopyHero-module__nUVJDG__secondaryProject{grid-template-columns:86px 1fr}.AppCanopyHero-module__nUVJDG__secondaryImage{border-bottom:0;border-right:1px solid #e4e8ee;width:86px;height:64px}}@media (max-width:480px){.AppCanopyHero-module__nUVJDG__toolchain{grid-template-columns:1fr;gap:13px}.AppCanopyHero-module__nUVJDG__tool+.AppCanopyHero-module__nUVJDG__tool{border-top:1px solid #d4dae3;border-left:0;padding:13px 0 0}.AppCanopyHero-module__nUVJDG__secondaryProjects{grid-template-columns:1fr}.AppCanopyHero-module__nUVJDG__primaryProject li{font-size:.54rem}}@media (prefers-reduced-motion:reduce){.AppCanopyHero-module__nUVJDG__primaryAction,.AppCanopyHero-module__nUVJDG__secondaryProject{transition:none}}
.AppShowcaseGrid-module__IbAVFq__catalogue{gap:30px;display:grid}.AppShowcaseGrid-module__IbAVFq__filterBar{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px 24px;display:flex}.AppShowcaseGrid-module__IbAVFq__filterButton{color:var(--slate);font:600 .82rem/1.2 var(--mono);letter-spacing:-.01em;cursor:pointer;background:0 0;border:0;padding:0 0 14px;position:relative}.AppShowcaseGrid-module__IbAVFq__filterButton:after{background:var(--ink);content:"";opacity:0;height:2px;transition:opacity .16s,transform .16s;position:absolute;bottom:-1px;left:0;right:0;transform:scaleX(.5)}.AppShowcaseGrid-module__IbAVFq__filterButton:hover,.AppShowcaseGrid-module__IbAVFq__filterButton[data-active=true]{color:var(--ink)}.AppShowcaseGrid-module__IbAVFq__filterButton[data-active=true]:after{opacity:1;transform:scaleX(1)}.AppShowcaseGrid-module__IbAVFq__list{border-top:1px solid var(--ink)}.AppShowcaseGrid-module__IbAVFq__system{border-bottom:1px solid var(--line);padding:34px 0 38px}.AppShowcaseGrid-module__IbAVFq__systemHeader{grid-template-columns:48px minmax(0,1fr) auto;align-items:start;gap:18px;display:grid}.AppShowcaseGrid-module__IbAVFq__index,.AppShowcaseGrid-module__IbAVFq__meta,.AppShowcaseGrid-module__IbAVFq__label{font-family:var(--mono)}.AppShowcaseGrid-module__IbAVFq__index{color:var(--brand);padding-top:4px;font-size:.75rem;font-weight:700}.AppShowcaseGrid-module__IbAVFq__titleBlock{max-width:760px}.AppShowcaseGrid-module__IbAVFq__meta{color:var(--slate);letter-spacing:.04em;text-transform:uppercase;margin-bottom:10px;font-size:.72rem;font-weight:650}.AppShowcaseGrid-module__IbAVFq__meta span{color:#b1bac8;margin-inline:6px}.AppShowcaseGrid-module__IbAVFq__titleBlock h3{max-width:26ch;color:var(--ink);letter-spacing:-.045em;font-size:clamp(1.55rem,2.4vw,2.3rem);line-height:1.04}.AppShowcaseGrid-module__IbAVFq__tagline{max-width:64ch;color:var(--slate);margin-top:12px;font-size:.98rem;line-height:1.6}.AppShowcaseGrid-module__IbAVFq__primaryLink{border:1px solid var(--ink);min-height:42px;color:var(--ink);white-space:nowrap;align-items:center;gap:16px;padding:0 16px;font-size:.82rem;font-weight:700;transition:color .16s,background .16s;display:inline-flex}.AppShowcaseGrid-module__IbAVFq__primaryLink:hover{color:var(--white);background:var(--ink)}.AppShowcaseGrid-module__IbAVFq__systemBody{grid-template-columns:48px minmax(150px,.7fr) minmax(320px,1.45fr) minmax(190px,.75fr);gap:18px;margin-top:28px;display:grid}.AppShowcaseGrid-module__IbAVFq__systemBody:before{content:""}.AppShowcaseGrid-module__IbAVFq__systemBody>div{border-top:1px solid var(--line);padding-top:16px}.AppShowcaseGrid-module__IbAVFq__label{color:var(--slate);letter-spacing:.08em;text-transform:uppercase;margin-bottom:11px;font-size:.67rem;font-weight:700}.AppShowcaseGrid-module__IbAVFq__platforms>p:last-child,.AppShowcaseGrid-module__IbAVFq__fit>p:nth-child(2){color:var(--ink-2);font-size:.86rem;line-height:1.6}.AppShowcaseGrid-module__IbAVFq__capabilities ol{counter-reset:capability;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 24px;margin:0;padding:0;list-style:none;display:grid}.AppShowcaseGrid-module__IbAVFq__capabilities li{color:var(--ink-2);counter-increment:capability;grid-template-columns:24px 1fr;gap:8px;font-size:.84rem;line-height:1.5;display:grid}.AppShowcaseGrid-module__IbAVFq__capabilities li:before{color:var(--brand);font:700 .65rem/1.8 var(--mono);content:counter(capability, decimal-leading-zero)}.AppShowcaseGrid-module__IbAVFq__fit a{color:var(--ink);text-underline-offset:5px;margin-top:18px;font-size:.78rem;font-weight:700;-webkit-text-decoration:underline #c5ccd6;text-decoration:underline #c5ccd6;display:inline-block}.AppShowcaseGrid-module__IbAVFq__fit a:hover{color:var(--brand);text-decoration-color:currentColor}@media (max-width:900px){.AppShowcaseGrid-module__IbAVFq__systemHeader{grid-template-columns:36px minmax(0,1fr)}.AppShowcaseGrid-module__IbAVFq__primaryLink{grid-column:2;justify-self:start;margin-top:4px}.AppShowcaseGrid-module__IbAVFq__systemBody{grid-template-columns:36px repeat(2,minmax(0,1fr))}.AppShowcaseGrid-module__IbAVFq__systemBody:before{grid-row:1/span 2}.AppShowcaseGrid-module__IbAVFq__capabilities{grid-column:2/-1}}@media (max-width:620px){.AppShowcaseGrid-module__IbAVFq__filterBar{gap-inline:18px}.AppShowcaseGrid-module__IbAVFq__system{padding-block:28px 32px}.AppShowcaseGrid-module__IbAVFq__systemHeader,.AppShowcaseGrid-module__IbAVFq__systemBody{grid-template-columns:28px minmax(0,1fr);gap:12px}.AppShowcaseGrid-module__IbAVFq__systemBody:before{grid-row:1/span 3}.AppShowcaseGrid-module__IbAVFq__platforms,.AppShowcaseGrid-module__IbAVFq__capabilities,.AppShowcaseGrid-module__IbAVFq__fit{grid-column:2}.AppShowcaseGrid-module__IbAVFq__capabilities ol{grid-template-columns:1fr}}
.ScopeEstimator-module__mPunKG__estimator{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);display:grid}.ScopeEstimator-module__mPunKG__controls{padding-right:48px}.ScopeEstimator-module__mPunKG__group{border:0;border-bottom:1px solid var(--line);margin:0;padding:30px 0 34px}.ScopeEstimator-module__mPunKG__group:last-child{border-bottom:0}.ScopeEstimator-module__mPunKG__group legend{width:100%;color:var(--ink);align-items:center;gap:14px;margin-bottom:16px;padding:0;font-size:.98rem;font-weight:750;display:flex}.ScopeEstimator-module__mPunKG__group legend span{color:var(--brand);font:700 .68rem var(--mono)}.ScopeEstimator-module__mPunKG__options{border:1px solid var(--line);background:var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid;overflow:hidden}.ScopeEstimator-module__mPunKG__option{min-height:96px;color:var(--ink);background:var(--white);text-align:left;cursor:pointer;border:0;justify-content:space-between;align-items:flex-start;gap:16px;padding:18px;transition:background .14s,color .14s;display:flex}.ScopeEstimator-module__mPunKG__option:hover{background:#f4f6f9}.ScopeEstimator-module__mPunKG__option[data-selected=true]{color:var(--white);background:var(--ink)}.ScopeEstimator-module__mPunKG__option>span{gap:7px;display:grid}.ScopeEstimator-module__mPunKG__option strong{font-size:.9rem;line-height:1.2}.ScopeEstimator-module__mPunKG__option small{color:var(--slate);font-size:.74rem;line-height:1.45}.ScopeEstimator-module__mPunKG__option[data-selected=true] small{color:#c4ccd7}.ScopeEstimator-module__mPunKG__option em{color:var(--slate);font:650 .6rem var(--mono);letter-spacing:.06em;text-transform:uppercase;padding-top:2px;font-style:normal}.ScopeEstimator-module__mPunKG__option[data-selected=true] em{color:#8eb0ff}.ScopeEstimator-module__mPunKG__output{border-left:1px solid var(--line);flex-direction:column;align-self:start;margin:30px 0;padding:38px;display:flex}.ScopeEstimator-module__mPunKG__kicker,.ScopeEstimator-module__mPunKG__deliverables>p,.ScopeEstimator-module__mPunKG__metrics dt{font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.ScopeEstimator-module__mPunKG__kicker{color:var(--brand);font-size:.67rem}.ScopeEstimator-module__mPunKG__output h3{max-width:15ch;color:var(--ink);letter-spacing:-.05em;margin-top:18px;font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.02}.ScopeEstimator-module__mPunKG__summary{max-width:48ch;color:var(--slate);margin-top:16px;font-size:.9rem;line-height:1.6}.ScopeEstimator-module__mPunKG__metrics{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:32px 0 0;padding:22px 0;display:grid}.ScopeEstimator-module__mPunKG__metrics div{gap:8px;display:grid}.ScopeEstimator-module__mPunKG__metrics dt{color:var(--slate);font-size:.6rem}.ScopeEstimator-module__mPunKG__metrics dd{color:var(--ink);margin:0;font-size:.92rem;font-weight:750;line-height:1.35}.ScopeEstimator-module__mPunKG__deliverables{margin-top:28px}.ScopeEstimator-module__mPunKG__deliverables>p{color:var(--slate);font-size:.63rem}.ScopeEstimator-module__mPunKG__deliverables ol{counter-reset:deliverable;gap:12px;margin:18px 0 0;padding:0;list-style:none;display:grid}.ScopeEstimator-module__mPunKG__deliverables li{color:var(--ink-2);counter-increment:deliverable;grid-template-columns:24px 1fr;gap:8px;font-size:.84rem;line-height:1.45;display:grid}.ScopeEstimator-module__mPunKG__deliverables li:before{color:var(--brand);font:700 .65rem/1.8 var(--mono);content:counter(deliverable, decimal-leading-zero)}.ScopeEstimator-module__mPunKG__actions{align-items:center;gap:22px;margin-top:34px;display:flex}.ScopeEstimator-module__mPunKG__startLink{min-height:46px;color:var(--white);background:var(--brand);align-items:center;gap:22px;padding:0 18px;font-size:.8rem;font-weight:750;display:inline-flex}.ScopeEstimator-module__mPunKG__startLink:hover{background:var(--brand-dark)}.ScopeEstimator-module__mPunKG__serviceLink{color:var(--ink);font-size:.76rem;font-weight:700}.ScopeEstimator-module__mPunKG__serviceLink:hover{color:var(--brand)}@media (max-width:940px){.ScopeEstimator-module__mPunKG__estimator{grid-template-columns:1fr}.ScopeEstimator-module__mPunKG__controls{padding-right:0}.ScopeEstimator-module__mPunKG__output{border-top:1px solid var(--ink);border-left:0;margin:0;padding:36px 0}}@media (max-width:620px){.ScopeEstimator-module__mPunKG__options{grid-template-columns:1fr}.ScopeEstimator-module__mPunKG__option{min-height:86px}.ScopeEstimator-module__mPunKG__output h3{max-width:18ch}.ScopeEstimator-module__mPunKG__actions{flex-direction:column;align-items:flex-start}}
