.cms-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px 32px}.cms-card a{display:block}.cms-card>a>img{aspect-ratio:1.55;object-fit:cover;transition:filter .3s}.cms-card a:hover>img{filter:brightness(.88)}.cms-card-copy{padding:25px 0;border-bottom:1px solid var(--line)}.cms-card h2{font-size:clamp(1.7rem,2.8vw,2.8rem);margin-bottom:15px}.cms-card p:not(.eyebrow){color:var(--muted);line-height:1.6;max-width:580px}.cms-card .eyebrow{margin-bottom:13px}.cms-read{display:inline-block;color:var(--red);border-bottom:1px solid;margin-top:24px;padding-bottom:5px;font-size:.875rem}.client-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.client-grid figure{background:#fff;padding:34px 20px 22px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;min-height:210px}.client-grid img{height:95px;object-fit:contain;width:100%;max-width:230px}.client-grid figcaption{text-align:center;max-width:220px;font-size:.75rem;min-height:36px}.cms-page-content{max-width:980px;padding-top:24px}.cms-page-content p,.cms-page-content li,.cms-introduction p{font-size:1.125rem;line-height:1.75;color:var(--muted)}.cms-page-content p{margin-bottom:24px}.cms-page-content h2{font-size:clamp(2rem,3.6vw,3.6rem);margin:45px 0 24px}.cms-page-content h3{margin:28px 0 16px}.cms-page-content img{margin:35px 0;max-height:650px;object-fit:contain}.cms-page-content a:not(.button){text-decoration:underline;text-underline-offset:4px;color:var(--red)}.cms-introduction{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.cms-introduction h2{max-width:650px}.project-intro{padding-block:70px 50px}.project-intro h1{max-width:1100px}.back-link{display:inline-block;color:var(--red);border-bottom:1px solid;margin-bottom:35px;padding-bottom:6px}.project-intro .lead{max-width:760px}.single-cover img{max-height:75vh;object-fit:contain;background:#f1f2f3}.job-cards .cms-card{border-top:2px solid var(--red);padding-top:8px}.cms-pagination{display:flex;gap:16px;justify-content:center;margin-top:44px}.cms-pagination a,.cms-pagination span{padding:10px 15px;border:1px solid var(--line)}.cms-pagination .current{background:var(--red);color:white}.empty-state{padding:45px 0 70px;border-top:1px solid var(--line)}.empty-state h2{font-size:clamp(2rem,3.5vw,3rem);margin-bottom:24px}.empty-state p{color:var(--muted);line-height:1.6}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.contact-grid dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.13em;color:var(--muted);margin-bottom:15px}.contact-grid dd{margin:0 0 40px;font-size:clamp(1.1rem,2.2vw,2rem);overflow-wrap:anywhere}.contact-grid .button{margin-top:24px}.contact-grid p{color:var(--muted);line-height:1.7}.footer nav{flex-wrap:wrap}.admin-bar .header{top:32px}.cms-home .hero-intro{font-size:1rem;max-width:480px;margin-top:20px}.section-heading>.section-link{flex-shrink:0}.cms-card:focus-within{outline:2px solid var(--red);outline-offset:8px}
.page-intro+.section{padding-top:32px}.cms-home .header .brand:after{content:'';position:absolute;inset:0;background:url(assets/logo.png) center/contain no-repeat;clip-path:inset(81% 0 0 0);filter:brightness(0) invert(1)}
@media(max-width:1100px){.header nav{gap:17px}.header{padding-inline:32px}.header .nav-cta{padding-inline:20px}.client-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:701px) and (max-width:900px){.header nav{font-size:.75rem;gap:12px}.brand{width:100px}.header .nav-cta{padding-inline:15px;font-size:.75rem}}
@media(max-width:700px){.cms-cards{grid-template-columns:1fr;gap:32px}.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-grid figure{padding:25px 12px 18px;min-height:180px}.client-grid img{height:72px}.cms-introduction,.contact-grid{grid-template-columns:1fr;gap:28px}.project-intro{padding-block:45px 35px}.project-intro h1{font-size:3rem;overflow-wrap:anywhere}.cms-page-content p,.cms-page-content li{font-size:1rem}.admin-bar .header{top:46px}.header{padding-inline:20px}.cms-home .hero-intro{max-width:290px;font-size:.875rem}.section-heading>.section-link{margin-top:25px}.cms-pagination{flex-wrap:wrap}}
.f1-feature-grid{display:grid;grid-template-columns:.85fr 1.4fr;gap:64px;align-items:center}.f1-feature-copy h2{font-size:clamp(3rem,5vw,5.3rem);margin-bottom:26px}.f1-feature-copy>p:not(.eyebrow){color:var(--muted);line-height:1.7;max-width:430px}.f1-feature-note{display:block;margin-top:48px;font-size:.75rem;color:var(--muted)}.f1-feature-image{display:block;position:relative}.f1-feature-image img{aspect-ratio:1.5;object-fit:cover}.f1-feature-image>span{display:block;margin-top:12px;font-size:.75rem;color:var(--muted)}.closing-secondary{grid-column:1/-1;display:flex;align-items:center;gap:32px;border-top:1px solid var(--line);padding-top:22px;font-size:.9rem;flex-wrap:wrap}.closing-secondary a:hover{text-decoration:underline}.closing-secondary .closing-label{margin:0}.contact-person a{display:block;margin-bottom:14px}.single-cover figcaption{margin-top:12px}.cms-page-content figure{margin-block:35px}.cms-page-content figure img{margin-bottom:12px}
@media(max-width:700px){.f1-feature-grid{grid-template-columns:1fr;gap:32px}.f1-feature-copy h2{font-size:3rem}.f1-feature-note{margin-top:28px}.closing-secondary{gap:14px;align-items:flex-start;flex-direction:column}.closing-secondary a{min-height:30px}.contact-person{font-size:1.25rem}}

.contact-team{grid-column:1/-1;min-width:0;border-top:1px solid #cfceca;padding-top:25px}
.contact-team-heading{display:flex;justify-content:space-between;gap:20px;margin-bottom:30px;color:#62605d;font-size:.8rem;line-height:1.5}
.contact-team-heading p{font-size:inherit;color:inherit;letter-spacing:.1em;text-transform:uppercase}
.contact-people{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.contact-person-card{min-width:0}
.contact-person-card h3{font-size:1.5rem;font-weight:500;letter-spacing:-.03em;color:#202020;margin:0 0 15px}
.person-contact-link{display:flex;align-items:center;gap:22px;min-height:44px;width:fit-content;max-width:100%;font-size:1rem;color:#41403e;line-height:1.5}
.person-link-label{font-size:.75rem;color:#74716e;width:35px;flex:none}
.person-contact-link>span:last-child{border-bottom:1px solid transparent;overflow-wrap:anywhere}
.person-contact-link:hover>span:last-child{border-color:var(--red);color:var(--red)}
.person-number{font-variant-numeric:tabular-nums;white-space:nowrap}
.contact-grid{grid-template-columns:.8fr 1.4fr;gap:80px;align-items:start}
.contact-grid .contact-team{grid-column:auto;padding-top:24px}
.contact-grid .contact-people{gap:35px}
.contact-grid .contact-person-card h3{font-size:1.35rem}
.contact-grid .person-contact-link{font-size:.9375rem;gap:12px}
.contact-grid .person-link-label{width:30px}
.contact-page-note{margin-top:25px;font-size:.9rem}
@media(max-width:1100px){.contact-grid{grid-template-columns:1fr;gap:40px}.contact-grid .contact-people{gap:50px}.contact-page-intro{max-width:640px}}
@media(max-width:700px){.contact-people,.contact-grid .contact-people{grid-template-columns:1fr;gap:26px}.contact-person-card+ .contact-person-card{padding-top:26px;border-top:1px solid #d8d7d3}.contact-team-heading{margin-bottom:24px;flex-wrap:wrap;gap:8px}.contact-person-card h3,.contact-grid .contact-person-card h3{font-size:1.35rem}.person-contact-link,.contact-grid .person-contact-link{font-size:1rem;gap:18px}.person-link-label,.contact-grid .person-link-label{width:34px}.closing-grid{row-gap:40px}}

.cms-page-content:has(.project-editorial){max-width:none;padding-top:85px}
.project-editorial .project-story{display:block;max-width:720px;margin:0 auto 80px;text-align:center;padding:0}
.project-story h2{font-size:clamp(2.2rem,4.8vw,4.5rem);line-height:1.06;letter-spacing:-.045em;font-weight:500;margin:24px 0}
.project-story>p:last-child{max-width:540px;margin:auto;color:#62605d}
.project-image-pair{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:36px}
.project-image-pair figure{margin:0;min-width:0}
.project-image-pair figure:nth-child(2){margin-top:120px}
.cms-page-content .project-image-pair img{display:block;width:100%;height:auto;margin:0}
.project-image-pair figcaption,.project-source-note{font-size:.75rem;color:#74716e;line-height:1.5}
.project-image-pair figcaption{margin-top:12px}
.project-source-note{margin:70px auto 0;text-align:center}
.project-image-pair figure:only-child{grid-column:1/-1;width:75%;margin:auto}
@media(max-width:700px){.project-story{margin-bottom:40px;text-align:left}.project-image-pair{grid-template-columns:1fr;gap:30px}.project-image-pair figure:nth-child(2){margin-top:0}.project-image-pair figure:only-child{width:100%}.cms-page-content:has(.project-editorial){padding-top:45px}.project-source-note{margin-top:35px;text-align:left}}
