.team-section{padding-top:24px;padding-bottom:16px}
.team-heading{max-width:760px;margin:0 auto 35px;text-align:center}
.team-heading h2{font-size:clamp(2.125rem,4.5vw,3.5rem);letter-spacing:-1.8px;line-height:1.08}
.team-heading h2 span{color:var(--green)}
.team-heading>p:last-child{font-size:1rem;line-height:1.75;color:var(--muted);max-width:640px;margin:20px auto 0}
.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;max-width:1000px;margin:auto}
.team-card{display:block;width:100%;padding:0;border:0;background:transparent;text-align:left;color:inherit;font:inherit;cursor:pointer;perspective:1400px;border-radius:16px;-webkit-tap-highlight-color:transparent}
.team-card:focus-visible{outline:3px solid var(--green);outline-offset:7px}
.team-card-inner{display:grid;position:relative;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.2,.7,.2,1);min-height:450px}
.team-card[aria-pressed="true"] .team-card-inner{transform:rotateY(180deg)}
.team-face{grid-area:1/1;display:flex;flex-direction:column;border-radius:16px;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;box-shadow:0 16px 40px #061d2a12;border:1px solid #dce6eb}
.team-front{background:white;transform:rotateY(0deg)}
.team-portrait{position:relative;display:flex;flex:1;min-height:260px;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(ellipse at 70% 20%,#7cbe3320,transparent 65%),linear-gradient(140deg,#0c3041,#061d2a);color:#d9e6e9;gap:17px}
.team-initials{font-size:5.5rem;font-weight:700;letter-spacing:-5px;color:#a7c2cf30;line-height:1}
.team-placeholder{font-size:0.8125rem;letter-spacing:1px;color:#c2d2da}
.team-card-footer{display:flex;flex-direction:column;padding:27px 30px 25px}
.team-role{display:block;font-size:0.625rem;text-transform:uppercase;letter-spacing:1.6px;font-weight:700;color:#3d8e24;margin-bottom:10px}
.team-name{display:block;font-size:clamp(1.375rem,2.4vw,1.75rem);font-weight:700;letter-spacing:-.7px;line-height:1.2}
.team-action{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:0.75rem;font-weight:700;color:#397e27;margin-top:25px}
.team-action>span{display:grid;place-items:center;border:1px solid #77ad5d55;border-radius:50%;width:32px;height:32px;font-size:1.375rem;line-height:1}
.team-back{transform:rotateY(180deg);padding:38px 34px;background:linear-gradient(145deg,#123849,#061d2a);color:white;border-color:#224959;justify-content:center}
.team-back .team-role,.team-back .team-action{color:#9fda76}
.team-bio{display:block;font-size:1rem;line-height:1.8;color:#dce7ed;margin-top:23px}
.team-back .team-action{margin-top:auto;padding-top:26px}
.team-caption{text-align:center;font-size:0.75rem;color:var(--muted);margin:23px 0 0}
@media(hover:hover){.team-card:hover .team-action>span{background:#78b64e20}}
@media(max-width:650px){.team-grid{grid-template-columns:1fr;gap:22px}.team-section{padding-top:12px}.team-heading{margin-bottom:27px}.team-heading h2{letter-spacing:-1px}.team-heading>p:last-child{font-size:0.9375rem}.team-card-inner{min-height:450px}.team-back{padding:30px 25px}.team-bio{font-size:0.9375rem;line-height:1.75}.team-card-footer{padding:25px}.team-name{font-size:1.5rem}}
@media(prefers-reduced-motion:reduce){.team-card-inner{transition:none}}
