.home-page{--section-space:112px}.home-page h2{font-size:clamp(2.6rem,4.9vw,5rem);line-height:.98}.home-page .projects{--section-space:88px}.home-page .projects h2{font-size:clamp(3.25rem,5.5vw,6rem);line-height:.91}.home-page .projects .section-heading-row{margin-bottom:40px}.home-page .projects .section-footer{margin-top:32px}.home-page .section-heading-row{margin-bottom:50px}.home-page .section-footer{margin-top:48px}.home-page #about-canad{padding-top:64px;border-top:1px solid var(--line);gap:48px 8%}.home-page .intro-copy{padding-top:0}.home-page .intro-copy .lead{font-size:clamp(23px,2.3vw,32px);max-width:520px}.home-page .blueprint-art{opacity:.075}.owner-commitments{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}.owner-commitments>div{padding:30px 30px 0 0}.owner-commitments>div+div{padding-left:30px;border-left:1px solid var(--line)}.owner-commitments span{font-size:10px;color:var(--green);letter-spacing:.1em}.owner-commitments h3{font-size:30px;margin:24px 0 14px;letter-spacing:-.04em}.owner-commitments p{font-size:14px;line-height:1.7;color:var(--muted);max-width:270px;margin-bottom:0}.home-page .featured-services{background:#18261e}.home-page .showcase-image{height:590px}.home-page .showcase-service{padding:24px 10px}.home-page .people-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);gap:4%;align-items:center}.home-page .people-copy{container-type:inline-size}.home-page .people-copy .section-label{margin-top:0}.home-page .people-copy h2{font-size:clamp(2rem,12cqw,5rem);line-height:.98;overflow-wrap:normal;white-space:nowrap}.home-page .people-team{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.home-page .team-image{aspect-ratio:7/10}.home-page .team-image img{-o-object-position:center 30%;object-position:center 30%}.home-page .team-meta{padding-top:18px}.home-page .process{padding-top:56px;border-top:1px solid var(--line)}.home-page .process-intro h2{font-size:clamp(1.75rem,14cqw,4.5rem)}.home-contact{background-color:#dfe9df;color:var(--ink);background-image:none;padding:96px 0}.home-contact .section-label{color:#46694b}.home-contact-inner{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:10%;align-items:end}.home-page .home-contact h2{font-size:clamp(2rem,4.1vw,4.5rem);line-height:1.05;margin-bottom:36px}.home-contact-person{padding-bottom:8px;min-width:0}.home-contact-person>span{font-size:10px;color:var(--green);letter-spacing:.12em}.home-contact-person h3{font-size:36px;margin:24px 0 8px}.home-contact-person p{color:#566459;font-size:13px;margin-bottom:30px}.home-contact-person a{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-top:1px solid #b4c8b7;font-size:14px;overflow-wrap:anywhere}.home-contact-person a svg{flex-shrink:0}@media (max-width:1100px){.home-page .people-grid{grid-template-columns:1fr;gap:36px}.home-page .people-copy h2{font-size:clamp(2rem,10cqw,4rem)}.home-page .team-image{aspect-ratio:4/5}}@media (max-width:900px){.home-page{--section-space:80px}.home-page .projects{--section-space:64px}.home-page .showcase-image{height:360px}.home-page .people-copy>p:not(.section-label){margin-top:28px}.home-page .people-team{gap:16px}.home-contact-inner{grid-template-columns:1fr;gap:48px}.home-contact-person{max-width:480px}}@media (max-width:600px){.home-page{--section-space:64px}.home-page .projects{--section-space:56px}.home-page .projects .section-heading-row{margin-bottom:32px}.home-page .section-footer{margin-top:24px;align-items:flex-start;flex-direction:column;gap:18px}.home-page #about-canad{padding-top:40px;gap:30px}.owner-commitments{grid-template-columns:1fr}.owner-commitments>div,.owner-commitments>div+div{padding:24px 0;border-left:0;border-bottom:1px solid var(--line)}.owner-commitments h3{margin:12px 0;font-size:26px}.home-page .showcase-image{height:280px}.home-page .people-team{grid-template-columns:1fr;gap:36px}.home-page .team-image{aspect-ratio:1}.home-page .process{padding-top:40px}.home-contact{padding:64px 0}.home-contact-person h3{font-size:30px}}