[data-reveal][data-motion]{transition:opacity .65s ease,transform .65s cubic-bezier(.22,1,.36,1)}[data-reveal][data-motion=waiting]{opacity:0;transform:translateY(24px)}[data-reveal]:focus-within,[data-reveal][data-motion=revealed]{opacity:1;transform:none}#about-canad,#featured-projects{scroll-margin-top:110px}.hero h1{max-width:1150px;line-height:.94}.hero h1.accountability-headline{font-size:clamp(2rem,6.7vw,6.75rem)}.hero-line{overflow:hidden;padding-bottom:.07em}.hero-line,.hero-line>span{display:block}.hero-line:last-child>span{color:#cce4cc}.hero-gridline:after{content:"";position:absolute;width:9px;height:9px;border:1px solid rgba(255,255,255,.6);left:-4px;top:72%;background:var(--green)}.scroll-cue{padding:8px 0}.scroll-cue:hover{color:#fff}.brand-strip{border-bottom:1px solid var(--line);background:#e8ece4}.brand-strip>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:center;gap:24px;padding-top:22px;padding-bottom:22px}.brand-strip span{font-size:clamp(1.1rem,2.7vw,2.8rem);font-weight:800;letter-spacing:-.05em}.brand-strip span:nth-child(2){color:var(--green)}.brand-strip p{margin:0;color:#566358;font-size:10px;font-weight:700;line-height:1.7;letter-spacing:.1em}.featured-services{background:#17231b}.featured-services .section-heading-row>p{color:#becbbf}.featured-services .arrow-link,.featured-services .section-footer>span{color:#b2d7b4;border-color:#729778}.services-showcase{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,4vw,56px);align-items:start}.showcase-visual{position:sticky;top:124px;min-width:0}.showcase-image{position:relative;height:530px;overflow:hidden;background:#25392b}.showcase-image>img{display:block;height:100%;width:100%;-o-object-fit:cover;object-fit:cover}.showcase-image-overlay{position:absolute;inset:0;background:linear-gradient(0deg,rgba(11,22,15,.9),transparent 75%)}.showcase-number{position:absolute;top:24px;left:30px;color:rgba(255,255,255,.22);font-size:112px;font-weight:800;line-height:1;letter-spacing:-.08em}.showcase-caption{position:absolute;left:30px;right:30px;bottom:32px}.showcase-caption>span{font-size:10px;font-weight:700;letter-spacing:.15em;color:#b2d7b4}.showcase-caption p{margin:16px 0 0;font-size:clamp(1.5rem,2.7vw,2.7rem);line-height:1.1;font-weight:700;letter-spacing:-.045em}.showcase-photo-note{margin:14px 0 0;font-size:10px;color:#a6b4a8;letter-spacing:.06em}.showcase-list{border-top:1px solid #526356;min-width:0}.showcase-service{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr) 26px;align-items:start;gap:18px;padding:20px 8px;border-bottom:1px solid #3f5144;transition:background .25s ease}.showcase-service:before{content:"";position:absolute;top:-1px;left:0;width:100%;height:2px;background:#8ac995;transform:scaleX(0);transform-origin:left;transition:transform .4s ease}.showcase-service.is-active:before{transform:scaleX(1)}.showcase-service.is-active{background:rgba(255,255,255,.035)}.showcase-service-number{font-size:11px;color:#a9c9af;padding-top:7px}.showcase-service h3{margin:0;font-size:clamp(1.15rem,1.8vw,1.6rem);font-weight:600;line-height:1.2;letter-spacing:-.03em}.showcase-service p{max-width:440px;margin:12px 0 0;font-size:13px;color:#afbeb2;line-height:1.6}.showcase-service>svg{margin-top:3px;color:#a9c9af;transition:transform .3s ease}.showcase-service.is-active>svg{transform:rotate(45deg);color:#fff}.nav-item>a{position:relative}.nav-item>a:after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}.nav-item>a:hover:after,.nav-item>a[aria-current=page]:after{transform:scaleX(1)}.project-image{isolation:isolate}.project-arrow{opacity:1;transform:none;width:44px;height:44px}.project-card:focus-visible .project-arrow,.project-card:hover .project-arrow{background:var(--ink)}.team-meta{border-top:2px solid transparent;transition:border-color .3s ease}.team-card:focus-visible .team-meta,.team-card:hover .team-meta{border-color:var(--green)}.cta-band{overflow:hidden;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 0),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 0);background-size:88px 88px}.cta-band,.cta-inner{position:relative}.cta-inner>.section-label{font-size:11px;line-height:1.2}.process-step{padding-bottom:18px;border-bottom:1px solid var(--line)}.process-step:hover .step-line{background:var(--line)}.project-caption{position:absolute;inset:auto 0 0;padding:42px 22px 20px;color:#fff;background:linear-gradient(transparent,rgba(10,20,13,.94));pointer-events:none}.project-caption-location{display:block;margin-bottom:10px;font-size:12px;line-height:1.5}.project-caption-action{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.12em}.project-reference-cover{padding-bottom:120px}@media (hover:hover) and (pointer:fine){.project-caption{opacity:0;transform:translateY(12px);transition:opacity .25s ease,transform .25s ease}.project-card:focus-within .project-caption,.project-card:hover .project-caption{opacity:1;transform:none}}#about-canad{position:relative;isolation:isolate}.blueprint-art,.blueprint-art[data-motion]{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.1;transform:none;overflow:hidden}.blueprint-art svg{width:100%;height:100%;display:block;color:var(--green)}.blueprint-grid{stroke:currentColor;stroke-width:.5;opacity:.35}.blueprint-trace{stroke:currentColor;stroke-width:1.5;vector-effect:non-scaling-stroke;stroke-dasharray:1;stroke-dashoffset:0}.process-list[data-motion]{opacity:1;transform:none;transition:none}.process-step{--stage-delay:0s}.process-step:nth-child(2){--stage-delay:.35s}.process-step:nth-child(3){--stage-delay:.7s}.process-step:nth-child(4){--stage-delay:1.05s}.process-step .step-top{gap:12px}.process-step .step-number{display:grid;place-items:center;width:30px;height:30px;flex-shrink:0;border:1px solid var(--green);background:var(--green);color:#fff;position:relative}.process-step .step-number:after{content:"";position:absolute;inset:-1px;border:1px solid var(--green);opacity:0;pointer-events:none}.process-step:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:1px;background:var(--green);transform:scaleX(0);transform-origin:left}.process-step .step-line{position:relative;background:var(--line);flex:1;margin-left:0;margin-right:-17px}.process-step:last-child .step-line{margin-right:0}.step-line:after{inset:0;transform:scaleX(1);transform-origin:left}.step-line:after,.step-line:before{content:"";position:absolute;background:var(--green)}.step-line:before{top:50%;left:0;z-index:1;width:7px;height:7px;box-shadow:0 0 0 3px rgba(8,117,26,.15),0 0 14px rgba(8,117,26,.65);transform:translate(-50%,-50%);opacity:0;pointer-events:none}.process-step h3{color:var(--green)}@media (max-width:600px){.process-step .step-line{margin-right:-20px}.process-step:nth-child(2n) .step-line{margin-right:0}}@media (prefers-reduced-motion:no-preference){.blueprint-trace{transition:stroke-dashoffset 1s ease}.blueprint-trace:nth-of-type(3){transition-delay:.1s}.blueprint-trace:nth-of-type(4){transition-delay:.2s}.blueprint-trace:nth-of-type(5){transition-delay:.3s}.blueprint-art[data-motion=waiting] .blueprint-trace{stroke-dashoffset:1}.process-list[data-motion=waiting] .step-line:after{transform:scaleX(0)}.process-list[data-motion=waiting] .step-number{background:var(--paper);color:var(--green)}.process-list[data-motion=waiting] .process-step h3{color:var(--ink);transform:translateX(-10px)}.process-list[data-motion=revealed] .step-number{animation:stage-stamp .55s cubic-bezier(.34,1.56,.64,1) var(--stage-delay) backwards}.process-list[data-motion=revealed] .step-number:after{animation:stage-ripple .8s ease-out calc(var(--stage-delay) + .2s) backwards}.process-list[data-motion=revealed] .step-line:after{animation:stage-connect .5s cubic-bezier(.65,0,.35,1) calc(var(--stage-delay) + .25s) backwards}.process-list[data-motion=revealed] .step-line:before{animation:stage-marker .5s cubic-bezier(.65,0,.35,1) calc(var(--stage-delay) + .25s) forwards}.process-list[data-motion=revealed] .process-step h3{animation:stage-title .55s cubic-bezier(.22,1,.36,1) calc(var(--stage-delay) + .15s) backwards}.process-list[data-motion=revealed] .process-step:after{animation:stage-sweep .9s ease-in-out calc(var(--stage-delay) + .4s)}.process-step .step-number{transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease}.process-step h3{transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.process-step:after{transition:transform .4s ease}.process-step:hover .step-number{transform:scale(1.12) rotate(-4deg);box-shadow:0 0 0 5px rgba(8,117,26,.12)}.process-step:hover h3{transform:translateX(4px)}.process-step:hover:after{transform:scaleX(1)}.team-card[data-motion=revealed]{transition-delay:0s}.team-card[data-motion=revealed]:nth-child(3n+2){transition-delay:.12s}.team-card[data-motion=revealed]:nth-child(3n+3){transition-delay:.24s}.team-card[data-motion]:focus-within{transition-delay:0s}.hero>.hero-image{animation:hero-settle 1.8s cubic-bezier(.22,1,.36,1) both}.hero-line>span{animation:title-arrive .85s cubic-bezier(.22,1,.36,1) both}.hero-line:last-child>span{animation-delay:.12s}.hero .hero-content>.section-label{animation:content-arrive .65s ease both}.hero .hero-actions,.hero .hero-content>p:not(.section-label){animation:content-arrive .75s ease .25s both}.hero-gridline{transform-origin:top;animation:line-arrive 1.2s ease both}.mobile-menu.open{animation:menu-arrive .25s ease both}.dropdown{animation:content-arrive .2s ease both}.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(0)}}@keyframes title-arrive{0%{opacity:0;transform:translateY(105%)}to{opacity:1;transform:translateY(0)}}@keyframes content-arrive{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes hero-settle{0%{transform:scale(1.1)}to{transform:scale(1.03)}}@keyframes line-arrive{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes stage-stamp{0%{transform:scale(1);background:var(--paper);color:var(--green)}35%{transform:scale(.78);background:var(--paper);color:var(--green)}70%{transform:scale(1.18);background:var(--green);color:#fff}to{transform:scale(1);background:var(--green);color:#fff}}@keyframes stage-ripple{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(2.4)}}@keyframes stage-connect{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes stage-marker{0%{left:0;opacity:1}88%{left:100%;opacity:1}to{left:100%;opacity:0}}@keyframes stage-title{0%{color:var(--ink);transform:translateX(-10px)}to{color:var(--green);transform:none}}@keyframes stage-sweep{0%{transform:scaleX(0);transform-origin:left}50%{transform:scaleX(1);transform-origin:left}50.1%{transform:scaleX(1);transform-origin:right}to{transform:scaleX(0);transform-origin:right}}@keyframes menu-arrive{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:900px){.services-showcase{grid-template-columns:1fr;gap:32px}.showcase-visual{position:static}.showcase-image{height:300px}.brand-strip>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.brand-strip p{grid-column:1/-1}}@media (max-width:600px){.hero h1.accountability-headline{font-size:clamp(1.7rem,7.5vw,2.8rem)}.hero h1{font-size:clamp(2.6rem,12.2vw,4.6rem)}.hero-line:last-child{max-width:100%}.showcase-image{height:260px}.showcase-number{font-size:80px;top:20px;left:22px}.showcase-caption{left:22px;right:22px;bottom:24px}.showcase-service{grid-template-columns:22px minmax(0,1fr) 22px;gap:10px;padding:20px 0}.showcase-service h3{font-size:20px}.brand-strip>div{gap:12px;padding-top:20px;padding-bottom:20px}}@media (prefers-reduced-motion:reduce){[data-reveal][data-motion]{opacity:1;transform:none;transition:none}.hero .hero-actions,.hero-gridline,.hero-line>span,.hero>.hero-image{animation:none}.project-card:hover img,.showcase-service.is-active>svg,.team-card:hover img{transform:none}}@media print{[data-reveal][data-motion]{opacity:1!important;transform:none!important}.blueprint-art{display:none}.step-line:after{transform:scaleX(1)!important}}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Inter Fallback;src:local("Arial");ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.00%;size-adjust:107.12%}.__className_d8ebd1{font-family:Inter,Inter Fallback;font-style:normal}