.page{--ink:#232522;--muted:#687067;--paper:#f7f7f2;--moss:#465146;--line:#23252224;background:var(--paper);color:var(--ink);overflow:clip}.page .hero{isolation:isolate;color:#fff;height:clamp(560px,64vw,900px);position:relative}.page .heroBackdrop,.page .ctaBackdrop,.page .contactBackdrop{z-index:-1;background-position:50%;background-size:cover;position:absolute;inset:0;transform:scale(1.01)}.page .heroBackdrop{--loaded-background-placeholder-image:linear-gradient(135deg, #235347 0%, #163832 48%, #051f20 100%);object-position:50% 43%}.page .heroContent{max-width:760px;position:absolute;bottom:clamp(42px,6.4vw,90px);left:clamp(24px,5vw,84px);right:24px}.page .eyebrow{letter-spacing:.08em;text-transform:uppercase;margin:1em 0;font-size:clamp(12px,1vw,16px);font-weight:500;line-height:1.35}.page .heroTitle{letter-spacing:-.025em;margin:16px 0 18px;font-size:clamp(52px,8.2vw,138px);font-weight:400;line-height:.91}.page .heroDescription{margin:1em 0;font-size:clamp(16px,1.4vw,21px)}.page .scrollCue{letter-spacing:.08em;text-transform:uppercase;flex-direction:column;gap:11px;margin-top:clamp(35px,5vh,65px);font-size:11px;display:inline-flex}.page .scrollCueIcon{width:28px;height:28px;animation:1.8s ease-in-out infinite bounce}@keyframes bounce{50%{transform:translateY(7px)}}.page .heroAction{border:1px solid #ffffff9e;border-radius:50%;place-items:center;width:48px;height:48px;font-size:23px;transition:background .2s,color .2s,transform .2s;display:grid;position:absolute;bottom:clamp(42px,6.4vw,90px);right:clamp(24px,4vw,72px)}.page .heroAction:hover{color:var(--ink);background:#fff;transform:translate(3px,-3px)}.page .section{padding:clamp(76px,10vw,166px) clamp(24px,8.6vw,176px)}.page .editorialGrid{grid-template-columns:minmax(250px,.92fr) minmax(320px,1.08fr);align-items:center;gap:clamp(44px,7vw,138px);max-width:1640px;margin:0 auto;display:grid}.page .imageFrame{background-position:50%;background-size:cover;width:100%;min-height:min(65vw,790px)}.page .about{background:#f1f2ed}.page .aboutImage{--loaded-background-placeholder:#dfe5dc;object-position:center;background-position:50%}.page .copyBlock{max-width:690px}.page .copyTitle,.page .sectionTitle,.page .ctaTitle,.page .contactTitle{letter-spacing:-.045em;margin:.83em 0;font-size:clamp(34px,4vw,62px);font-weight:400;line-height:1.05}.page .copyText{color:#484d47;margin:24px 0 1em;font-size:clamp(16px,1.3vw,19px);line-height:1.6}.page .textLink{color:var(--moss);align-items:center;gap:12px;margin-top:35px;padding-bottom:4px;font-size:14px;display:inline-flex}.page .textLink>div,.page .buttonLight>div,.page .footerLinks a>div,.page .projectLink>div{position:relative}.page .textLink>div:after,.page .buttonLight>div:after,.page .footerLinks a>div:after,.page .projectLink>div:after{content:"";transform-origin:100%;background:currentColor;width:100%;height:1px;transition:transform .18s;position:absolute;bottom:-5px;left:0;transform:scaleX(0)}.page .textLink:hover>div:after,.page .textLink:focus-visible>div:after,.page .buttonLight:hover>div:after,.page .buttonLight:focus-visible>div:after,.page .footerLinks a:hover>div:after,.page .footerLinks a:focus-visible>div:after,.page .projectCard:hover .projectLink>div:after,.page .projectCard:focus-visible .projectLink>div:after{transform-origin:0;transform:scaleX(1)}.page .textLinkIcon{width:20px;height:20px;transition:transform .18s}.page .textLink:hover .textLinkIcon{transform:translate(4px)}.page .biography{background:#fcfcf9}.page .biographyGrid{grid-template-columns:minmax(300px,1.1fr) minmax(250px,.9fr)}.page .bioImage{--loaded-background-placeholder:#eee4d5;min-height:min(56vw,740px)}.page .timeline{gap:17px;margin-top:34px;padding:0;list-style:none;display:grid}.page .timeline li{border-top:1px solid var(--line);color:#464b45;grid-template-columns:minmax(112px,13%) minmax(0,1fr);align-items:start;gap:clamp(18px,2.5vw,38px);padding-top:13px;font-size:clamp(15px,1.15vw,18px);line-height:1.45;display:grid}.page .timelineYear{color:var(--moss);letter-spacing:.06em;font-size:12px}.page .timelineDescription{min-width:0}.page .philosophy{background:#dce0d8}.page .philosophyImage{--loaded-background-placeholder:#fff;aspect-ratio:1199/1312;min-height:0;overflow:hidden}.page .philosophyImage .loadedBackgroundImage{object-fit:contain;object-position:center}.page .ctaSection,.page .contactBanner{z-index:0;color:#fff;isolation:isolate;text-align:center;place-items:center;min-height:min(62vw,720px);padding:64px 24px;display:grid;position:relative}.page .ctaBackdrop{--loaded-background-placeholder:#cbd8c5;object-position:center 63%;background-position:50% 63%}.page .ctaContent{max-width:680px}.page .ctaDescription{color:#ffffffeb;max-width:520px;margin:20px auto 31px;font-size:17px;line-height:1.5}.page .buttonLight{min-width:202px;color:var(--ink);letter-spacing:.08em;text-transform:uppercase;background:#fff;justify-content:center;align-items:center;gap:24px;padding:17px 26px;font-size:12px;transition:background .18s,transform .18s;display:inline-flex}.page .buttonLight:hover{background:#e8ede6;transform:translateY(-3px)}.page .buttonLightIcon{width:19px;height:19px}.page .portfolio{background:#fcfcf9;padding-block:clamp(58px,7vw,112px)}.page .sectionHeading{justify-content:space-between;align-items:end;gap:24px;max-width:1640px;margin:0 auto clamp(42px,5vw,76px);display:flex}.page .portfolio .sectionTitle{margin-bottom:0}.page .sectionHeading .textLink{margin-top:0}.page .projectGrid{grid-template-columns:repeat(3,1fr);gap:clamp(18px,4vw,64px);max-width:1640px;margin:0 auto;display:grid}.page .projectCard{display:block;overflow:hidden}.page .projectImage{aspect-ratio:.72;background-position:50%;background-size:cover;width:100%;transition:transform .5s cubic-bezier(.2,.75,.22,1)}.page .projectCard:hover .projectImage{transform:scale(1.025)}.page .projectType{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:21px 0 1em;font-size:12px}.page .projectTitle{letter-spacing:-.04em;margin:9px 0 14px;font-size:clamp(23px,2.2vw,36px);font-weight:400}.page .projectLink{color:var(--moss);align-items:center;gap:8px;padding-bottom:3px;font-size:13px;display:inline-flex}.page .projectCardIcon{width:16px;height:16px}.page .projectOne{--loaded-background-placeholder:#dfe8d6}.page .projectTwo{--loaded-background-placeholder:#e2e0ee}.page .projectThree{--loaded-background-placeholder:#f0dfd2}.page .processBanner{z-index:0;color:#fff;isolation:isolate;text-align:center;place-items:center;min-height:clamp(250px,29vw,420px);padding:32px 24px;display:grid;position:relative;overflow:hidden}.page .processBannerBackdrop{--loaded-background-placeholder:#d8e3d4;z-index:-1;background-position:50%;background-size:cover;background-attachment:fixed;position:absolute;inset:0;transform:scale(1.08)}.page .processBannerTitle{letter-spacing:.015em;margin:.83em 0;font-size:clamp(30px,3.5vw,58px);font-weight:400;line-height:1.08}.page .process{background:#e5e8e0;padding:clamp(62px,7vw,108px) clamp(24px,8.6vw,176px)}.page .steps{grid-template-columns:repeat(4,1fr);max-width:1640px;margin:0 auto;display:grid}.page .step{min-height:250px;padding:26px 28px 36px 0}.page .step:nth-child(4n){padding-left:28px;padding-right:0}.page .step:nth-child(n+5){padding-top:42px}.page .step:nth-child(n+5):not(:nth-child(8n)){padding-left:0}.page .stepNumber{color:var(--moss);letter-spacing:.1em;font-size:clamp(15px,1.1vw,18px)}.page .stepTitle{letter-spacing:-.04em;margin:17px 0;font-size:clamp(21px,2vw,32px);font-weight:400;line-height:1.08}.page .stepDescription{color:#535a52;max-width:265px;margin:1em 0;font-size:15px;line-height:1.5}.page .contactBanner{min-height:min(56vw,660px);padding:clamp(55px,7vw,112px) clamp(24px,8.6vw,176px)}.page .contactBackdrop{--loaded-background-placeholder:#cbd8c5;object-position:center 35%;background-position:50% 35%}.page .contactOverlay{max-width:710px}.page .contactOverlay .buttonLight{margin-top:32px}.page .footer{text-align:center;background:#fdfdf9;justify-items:center;gap:20px;padding:40px 24px;display:grid}.page .footerSocials{align-items:center;gap:16px;display:flex}.page .footer .footerSocialLink{place-items:center;width:20px;height:20px;transition:transform .18s;display:grid}.page .footerSocialLink:hover{color:var(--moss);transform:translateY(-3px)}.page .footerSocialIcon{width:20px;height:20px;display:block}.page .footerIdentity{gap:3px;display:grid}.page .footerIdentity>div{color:var(--ink);margin-block:0;font-size:15px;line-height:1}.page .footerLinks{gap:2px;display:grid}.page .footerLinks a{color:var(--ink);font-size:15px;line-height:1.25}.page .footerLinks a:hover{color:var(--moss)}@media (max-width:820px){.page .heroContent{bottom:42px;left:24px}.page .heroAction{bottom:47px;right:24px}.page .heroTitle{font-size:clamp(52px,15.5vw,88px)}.page .heroDescription{font-size:16px}.page .scrollCue{margin-top:34px}.page .hero{height:clamp(560px,145vw,760px)}.page .heroBackdrop{object-position:58% 50%}.page .section{padding:78px 24px}.page .editorialGrid,.page .biographyGrid,.page .philosophyGrid{grid-template-columns:1fr;gap:38px}.page .imageFrame{min-height:112vw;max-height:650px}.page .philosophyImage{min-height:0;max-height:none}.page .biographyGrid .copyBlock{order:2}.page .biographyGrid .bioImage{order:1}.page .copyTitle,.page .sectionTitle,.page .ctaTitle,.page .contactTitle{font-size:clamp(33px,10vw,50px)}.page .copyText{font-size:16px}.page .timeline li{grid-template-columns:86px minmax(0,1fr);gap:16px}.page .ctaSection{min-height:580px}.page .sectionHeading{align-items:start;gap:26px;display:grid}.page .projectGrid{grid-template-columns:1fr;gap:48px}.page .projectImage{aspect-ratio:.85}.page .processBanner{min-height:250px}.page .processBannerBackdrop{background-attachment:scroll}.page .process{padding:58px 24px}.page .steps{grid-template-columns:1fr 1fr}.page .step,.page .step:nth-child(4n){min-height:225px;padding:10px 18px 10px 0}.page .step:nth-child(2n){padding-left:18px;padding-right:0}.page .step:nth-child(n+5){padding-top:10px}.page .contactBanner{min-height:520px;padding:66px 24px}.page .footer{gap:20px;padding:36px 24px}}@media (max-width:480px){.page .eyebrow{font-size:12px}.page .steps{grid-template-columns:1fr}.page .step,.page .step:nth-child(4n),.page .step:nth-child(2n){min-height:auto;padding:10px 0}.page .stepDescription{font-size:14px}.page .ctaDescription{font-size:15px}}@media (prefers-reduced-motion:reduce){.page *,.page :before,.page :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
