.team-page { margin: 0; color: #0b1b33; background: #fff; font-family: "Inter", "Inter Placeholder", sans-serif; }
.team-page *, .team-page *::before, .team-page *::after { box-sizing: border-box; }
.team-shell { width: min(1180px, calc(100% - 48px)); margin: 0 auto; }
.team-header { position: sticky; top: 0; z-index: 20; background: rgba(255,255,255,.94); border-bottom: 1px solid #e2e5ea; backdrop-filter: blur(14px); }
.team-nav { min-height: 96px; display: flex; align-items: center; gap: 32px; }
.team-brand { display: inline-flex; margin-right: auto; align-items: center; }
.team-logo { display: block; width: 104px; height: 73px; object-fit: contain; object-position: left center; }
.team-nav-link { color: #081326; font-size: 13px; font-weight: 500; letter-spacing: .04em; text-decoration: none; text-transform: uppercase; }
.team-nav-link:hover { color: #3e6b94; }
.team-quote { padding: 13px 22px; border: 1px solid #cbd1d9; border-radius: 999px; font-size: 14px; font-weight: 600; letter-spacing: -.01em; text-decoration: none; color: #081326; }
.team-hero { padding: 96px 0 70px; background: linear-gradient(180deg, #f7f8fa 0%, #fff 100%); }
.team-eyebrow { margin: 0 0 18px; color: #3e6b94; font-size: 14px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.team-title { max-width: 760px; margin: 0; font-family: "Source Serif 4", "Source Serif 4 Placeholder", serif; font-size: clamp(48px, 7vw, 82px); font-weight: 600; letter-spacing: -.045em; line-height: .98; }
.team-intro { max-width: 680px; margin: 28px 0 0; color: #4b5563; font-size: 18px; line-height: 1.65; }
.team-section { padding: 32px 0 112px; }
.team-count { margin: 0 0 26px; color: #6b7280; font-size: 14px; }
.team-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 22px; }
.team-card { overflow: hidden; border: 1px solid #e2e5ea; border-radius: 14px; background: #fff; box-shadow: 0 8px 30px rgba(11,27,51,.04); }
.team-photo { position: relative; aspect-ratio: 4 / 5; display: grid; place-items: center; overflow: hidden; background: linear-gradient(145deg, #eef1f4, #dce3e9); }
.team-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 60%, rgba(11,27,51,.08)); pointer-events: none; }
.team-photo img { position: absolute; inset: 0; z-index: 1; width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.team-initials { color: #3e6b94; font-family: "Source Serif 4", serif; font-size: 52px; font-weight: 600; letter-spacing: -.05em; }
.team-card-body { padding: 20px 20px 22px; }
.team-name { margin: 0; font-family: "Source Serif 4", serif; font-size: 23px; font-weight: 600; line-height: 1.15; }
.team-role { margin: 8px 0 0; color: #6b7280; font-size: 14px; line-height: 1.4; }
.team-footer { padding: 52px 0; color: #e2e5ea; background: #081326; }
.team-footer-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.team-footer-logo { display: block; width: 180px; height: 126px; object-fit: contain; border-radius: 3px; background: #fff; }
.team-footer p { margin: 0; font-size: 14px; }
.team-footer-link { color: #e2e5ea; font-size: 14px; text-decoration: none; }
.team-footer-link:hover { color: #f2a93b; }
.home-team-link { color: inherit; text-decoration: none; }
.home-team-link:hover { color: #3e6b94; }
.home-team-link::after { content: "  →"; color: #3e6b94; }
@media (max-width: 900px) { .team-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } .team-nav-link { display: none; } }
@media (max-width: 680px) { .team-shell { width: min(100% - 32px, 1180px); } .team-nav { min-height: 88px; } .team-logo { width: 96px; height: 67px; } .team-quote { padding: 10px 16px; } .team-hero { padding: 68px 0 52px; } .team-title { font-size: clamp(42px, 15vw, 64px); } .team-intro { font-size: 16px; } .team-section { padding: 20px 0 80px; } .team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; } .team-card-body { padding: 16px; } .team-name { font-size: 20px; } .team-footer-inner { align-items: flex-start; flex-direction: column; } }
@media (max-width: 420px) { .team-grid { grid-template-columns: 1fr; } }
