/* ============================================================
   OSW Team — verbatim from the approved preview (section .tm).
   ============================================================ */

.ovs-team{background:var(--ovs-bg2);border-top:1px solid var(--ovs-line);border-bottom:1px solid var(--ovs-line)}
.ovs-tm-head{text-align:center;max-width:640px;margin:0 auto}
.ovs-tm-head .ovs-eye{justify-content:center}
.ovs-tm-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.2rem;margin-top:3rem}
.ovs-tm-card{position:relative;padding:2.2rem 2rem 2rem;overflow:hidden;display:flex;flex-direction:column;align-items:center;text-align:center;transform-style:preserve-3d}
.ovs-tm-card::before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--ovs-champ),transparent);opacity:.45}
.ovs-tm-glare{position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at var(--gx,50%) var(--gy,30%),rgba(227,201,143,.10),transparent 60%);opacity:0;transition:opacity .3s;pointer-events:none}
.ovs-tm-card:hover .ovs-tm-glare{opacity:1}

.ovs-tm-photo{--tm-ring-a:#E3C98F;--tm-ring-b:#C4835A;position:relative;width:148px;height:148px;border-radius:50%;padding:5px;margin-bottom:1.5rem;flex:none}
.ovs-tm-photo::before{content:"";position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,var(--tm-ring-a),var(--tm-ring-b),rgba(227,201,143,.08),var(--tm-ring-a))}
html.ovs-anim .ovs-tm-card:hover .ovs-tm-photo::before{animation:ovsTmSpin 4s linear infinite}
@keyframes ovsTmSpin{to{transform:rotate(360deg)}}
.ovs-tm-photo-in{position:relative;width:100%;height:100%;border-radius:50%;overflow:hidden;background:radial-gradient(circle at 50% 35%,#1A150E,#0B0906);border:4px solid var(--ovs-bg2);display:flex;flex-direction:column;align-items:center;justify-content:center}
.ovs-team .ovs-tm-photo-in img{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover}
.ovs-tm-initials{font-family:var(--ovs-display);font-size:2.6rem;letter-spacing:.06em;color:var(--ovs-champ);line-height:1}
.ovs-tm-ph-note{margin-top:.35rem;font-family:var(--ovs-mono);font-size:.46rem;letter-spacing:.2em;text-transform:uppercase;color:var(--ovs-muted)}
.ovs-tm-status{position:absolute;right:10px;bottom:12px;width:18px;height:18px;border-radius:50%;background:var(--ovs-pine);border:3px solid var(--ovs-bg2)}

.ovs-tm-role{font-family:var(--ovs-mono);font-size:.62rem;letter-spacing:.26em;text-transform:uppercase;color:var(--ovs-copper);margin-bottom:.55rem;line-height:1.5}
.ovs-team .ovs-tm-name{font-family:var(--ovs-display);font-weight:400;text-transform:uppercase;font-size:clamp(1.7rem,2.6vw,2.2rem);letter-spacing:.02em;line-height:1;color:var(--ovs-text)}
.ovs-tm-bio{margin-top:1rem;font-size:.92rem;color:var(--ovs-muted);line-height:1.65;max-width:44ch}
.ovs-tm-focus{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;margin-top:1.2rem}
.ovs-tm-focus span{font-family:var(--ovs-mono);font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ovs-champ);border:1px solid var(--ovs-champ-border);border-radius:99px;padding:.3rem .65rem;background:var(--ovs-champ-dim)}
.ovs-tm-links{display:flex;gap:.5rem;margin-top:1.5rem}
.ovs-team .ovs-tm-links a{width:40px;height:40px;border-radius:11px;border:1px solid var(--ovs-line);display:inline-flex;align-items:center;justify-content:center;color:var(--ovs-muted);transition:color .2s,border-color .2s}
.ovs-team .ovs-tm-links a:hover{color:var(--ovs-champ);border-color:var(--ovs-champ-border)}
.ovs-tm-links svg{width:17px;height:17px}

.ovs-tm-promise{margin-top:1.2rem;display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
.ovs-tm-p{padding:1.3rem 1.4rem;display:flex;gap:.9rem;align-items:flex-start;text-align:left}
.ovs-tm-ic{flex:none;width:38px;height:38px;border-radius:11px;background:var(--ovs-champ-dim);border:1px solid var(--ovs-champ-border);display:flex;align-items:center;justify-content:center;color:var(--ovs-champ)}
.ovs-tm-ic svg{width:17px;height:17px}
.ovs-tm-p b{display:block;font-size:.92rem;margin-bottom:.25rem;color:var(--ovs-text)}
.ovs-tm-p-t{display:block;font-size:.8rem;color:var(--ovs-muted);line-height:1.55}

@media(max-width:880px){
  .ovs-tm-grid,.ovs-tm-promise{grid-template-columns:1fr}
}
@media(max-width:560px){
  .ovs-tm-card{padding:2rem 1.3rem 1.7rem}
}
