/* Team and client sections extend the studio's charcoal, paper and brick-red palette. */
.team-section{background:var(--bg);color:var(--paper)}
.team-heading{align-items:flex-end;margin-bottom:54px}
.team-heading h2,.clients-heading h2{line-height:1.3}
.team-heading>p{font-size:16px;line-height:1.9;color:#b7bab2;margin:0 0 5px}
.team-section .accent{color:#d07b7b}
.team-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.team-card{min-width:0}
.team-portrait{margin:0;position:relative;aspect-ratio:4/5;overflow:hidden;background:#222522}
.team-portrait img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s ease}
.team-portrait:after{content:"";position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#1118);pointer-events:none}
.team-portrait figcaption{position:absolute;z-index:1;right:14px;bottom:15px;font-size:12px;line-height:1.5;color:#e4e3de}
.team-focus{position:absolute;top:17px;left:17px;color:#f3eee9;font-size:12px;letter-spacing:1px;writing-mode:vertical-rl}
.team-person{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:25px}
.team-person h3{font-size:26px;font-weight:500;letter-spacing:1px;line-height:1.35;margin:0}
.team-person>span{font-size:12px;color:#b28181}
.team-role{font-size:14px;color:#d39d9d;line-height:1.6;margin:10px 0 17px}
.team-bio{font-size:16px;line-height:1.85;color:#b3b7ae;margin:0;padding-top:18px;border-top:1px solid var(--line)}
.clients-section{background:var(--paper);color:#30332e}
.clients-section .section-kicker{border-color:#b9bcba}
.clients-heading{align-items:flex-end;margin-bottom:46px}
.clients-heading>div>p{font-size:16px;color:#676d64;line-height:1.8;margin:22px 0 0}
.clients-heading .accent{color:var(--red)}
.clients-stat{display:flex;flex-direction:column;margin:0;gap:12px;text-align:right}
.clients-stat>strong{font-size:70px;line-height:1;font-weight:400;letter-spacing:-3px}
.clients-stat>strong>span{font-size:40px;color:var(--red);margin-left:5px}
.clients-stat>span{font-size:14px;color:#676d64;line-height:1.5}
.clients-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));list-style:none;padding:0;margin:0;border-top:1px solid #c9ccc5;border-left:1px solid #c9ccc5}
.clients-grid>li{display:flex;align-items:center;justify-content:center;min-height:105px;text-align:center;border-bottom:1px solid #c9ccc5;border-right:1px solid #c9ccc5;padding:22px 14px;transition:background .25s,color .25s}
.clients-grid>li>span{font-size:clamp(17px,1.45vw,22px);line-height:1.5;font-weight:500;letter-spacing:.5px;overflow-wrap:anywhere}
.clients-footnote{font-size:12px;line-height:1.6;color:#73786e;margin:22px 0 0}
@media(hover:hover){.team-card:hover .team-portrait img{transform:scale(1.025)}.clients-grid>li:hover{background:#e7e9e1;color:#8c4040}}
@media(max-width:1100px){.team-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 28px}.clients-grid>li{min-height:90px;padding:18px 10px}.clients-grid>li>span{font-size:17px}}
@media(max-width:760px){.team-heading{align-items:flex-start;gap:24px;margin-bottom:34px}.team-heading>p{font-size:16px}.team-heading h2,.clients-heading h2{font-size:clamp(32px,7.7vw,44px)}.team-grid{gap:36px 18px}.team-person{margin-top:19px}.team-person h3{font-size:23px}.team-role{font-size:14px;margin:9px 0 13px}.team-bio{font-size:16px;line-height:1.8;padding-top:14px}.team-focus{top:12px;left:11px;letter-spacing:.5px}.team-portrait figcaption{font-size:12px;bottom:10px;right:10px}.clients-heading{display:flex;flex-direction:row;align-items:flex-end;gap:18px;margin-bottom:30px}.clients-heading>div>p{font-size:16px;max-width:16em;margin-top:18px}.clients-stat{gap:8px;flex-shrink:0}.clients-stat>strong{font-size:48px;letter-spacing:-2px}.clients-stat>strong>span{font-size:28px}.clients-stat>span{font-size:12px;max-width:6em;margin-left:auto}.clients-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.clients-grid>li{min-height:76px;padding:15px 12px}.clients-grid>li>span{font-size:17px;letter-spacing:0}.clients-grid>li:last-child:nth-child(odd){grid-column:1/-1}.clients-footnote{font-size:12px;margin-top:18px}}
@media(max-width:380px){.team-grid{gap:32px 14px}.team-person h3{font-size:21px}.team-role{min-height:45px}.team-heading h2,.clients-heading h2{font-size:29px}.clients-stat>strong{font-size:39px}.clients-grid>li>span{font-size:16px}}
@media(prefers-reduced-motion:reduce){.team-portrait img,.clients-grid>li{transition:none}}
