/* Page-owned editorial team composition. The accepted shell remains in flow. */
.team-page { width:100%; padding:0 0 36px; font-size:18px; line-height:1.7; }
.team-page * { min-width:0; }
.team-page h1,.team-page h2,.team-page h3 { color:#1a1a1a; letter-spacing:-.035em; }
.team-page h1 { max-width:1050px; margin:18px 0 28px; font-size:clamp(36px,4.4vw,76px); line-height:1.12; }
.team-page h2 { font-size:clamp(28px,2.5vw,42px); line-height:1.25; margin:12px 0 24px; }
.team-page h3 { font-size:24px; line-height:1.35; margin:0 0 20px; }
.team-page p { max-width:min(100%,1100px); margin:0 0 22px; }
.team-page a { color:#1a1a1a; }
.team-page a:focus-visible { outline:3px solid #1a1a1a; outline-offset:5px; }
.team-wrap { width:min(1440px,calc(100% - 48px)); margin-inline:auto; }
.team-intro { background:#e7e7e2; border-bottom:1px solid #c4c4be; padding:72px 0 62px; }
.team-eyebrow { font-size:14px; font-weight:700; text-transform:uppercase; letter-spacing:.075em; color:#4c4c47; }
.team-page .team-lead { font-size:clamp(20px,1.7vw,26px); line-height:1.6; color:#292929; max-width:1000px; }
.team-section { padding-block:72px; }
.team-section-intro { max-width:1000px; margin-bottom:40px; }
.team-profiles { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,350px),1fr)); gap:28px; }
.team-profile { padding:28px; background:#fafaf7; border:1px solid #cecec8; border-top:6px solid #eb5942; }
.team-page .team-role { color:#5b3b34; font-size:14px; font-weight:700; margin-bottom:14px; }
.team-profile p:last-child { margin-bottom:0; }
.team-work { background:#e9e9e4; border-block:1px solid #c4c4be; padding-block:72px; }
.team-steps { list-style:none; padding:0; margin:0; counter-reset:workflow; max-width:1100px; }
.team-steps li { counter-increment:workflow; border-top:1px solid #bdbdb5; padding:28px 0; }
.team-steps h3::before { content:'0' counter(workflow) ' / '; color:#a22f20; }
.team-steps li p { margin:0; }
.team-maintenance { border-left:4px solid #eb5942; padding-left:22px; margin-top:16px!important; }
.team-contact-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,430px),1fr)); gap:40px; align-items:start; }
.team-contact-copy { max-width:720px; }
.team-button { display:inline-flex; justify-content:space-between; align-items:center; gap:24px; padding:16px 22px; min-height:48px; max-width:100%; font-weight:700; font-size:16px; line-height:1.5; border:2px solid #1a1a1a; background:#eb5942; text-decoration:none; }
.team-button:hover { background:#f68d7d; }
.team-contact-details { background:#e5e5df; margin:0; padding:28px; overflow-wrap:anywhere; }
.team-contact-details dt { color:#1a1a1a; font-size:14px; text-transform:uppercase; font-weight:700; letter-spacing:.06em; margin:0 0 5px; }
.team-contact-details dd { margin:0 0 22px; }
.team-contact-details dd:last-child { margin-bottom:0; }
@media (max-width:600px) {
 .team-page { font-size:16px; }
 .team-wrap { width:calc(100% - 32px); }
 .team-intro { padding-block:44px 34px; }
 .team-section,.team-work { padding-block:44px; }
 .team-section-intro { margin-bottom:28px; }
 .team-profile,.team-contact-details { padding:22px 18px; }
 .team-page h3 { font-size:22px; }
 .team-profiles { gap:20px; }
 .team-contact-grid { gap:28px; }
 .team-eyebrow { font-size:12px; }
}
