/* One portrait standard: Brandon Schoen. Original image proportions are
   preserved; each face is centered and its crown/chin fit is calibrated to him.
   The wall, leadership cards and staff selector share these crop coordinates. */
:is(.tm-team-cell, .tm-last-card, .team-experience) img[data-portrait]{
  position:absolute;display:block;top:0;left:50%;height:auto;max-width:none;
  width:var(--portrait-width);translate:var(--portrait-x) var(--portrait-y);
  -webkit-mask-image:none;mask-image:none;
}
.tm-team-cell .tm-photo img[data-portrait]{top:0;width:var(--portrait-width)}
:is(.tm-team-cell, .tm-last-card, .team-experience) img[data-portrait="david"]{--portrait-width:110.415513%;--portrait-x:-39.000000%;--portrait-y:4.144095%}
:is(.tm-team-cell, .tm-last-card, .team-experience) img[data-portrait="brian"]{--portrait-width:110.415513%;--portrait-x:-50.800000%;--portrait-y:4.144095%}
:is(.tm-team-cell, .tm-last-card, .team-experience) img[data-portrait="todd"]{--portrait-width:100%;--portrait-x:-48.1%;--portrait-y:3.88%}
:is(.tm-team-cell, .tm-last-card, .team-experience) img[data-portrait="jordan"]{--portrait-width:180.679930%;--portrait-x:-50.000000%;--portrait-y:-4.048684%}
:is(.tm-team-cell, .tm-last-card, .team-experience) img[data-portrait="helga"]{--portrait-width:123.445915%;--portrait-x:-50.000000%;--portrait-y:1.568401%}
:is(.tm-team-cell, .tm-last-card, .team-experience) img[data-portrait="andy"]{--portrait-width:117.602321%;--portrait-x:-48.800000%;--portrait-y:-1.268446%}
:is(.tm-team-cell, .tm-last-card, .team-experience) img[data-portrait="luciano"]{--portrait-width:155.190307%;--portrait-x:-32.500000%;--portrait-y:-2.707815%}
:is(.tm-team-cell, .tm-last-card, .team-experience) img[data-portrait="larissa"]{--portrait-width:157.673352%;--portrait-x:-31.300000%;--portrait-y:-3.408370%}
:is(.tm-team-cell, .tm-last-card, .team-experience) img[data-portrait="daniel"]{--portrait-width:164.254482%;--portrait-x:-47.400000%;--portrait-y:-4.328553%}
:is(.tm-team-cell, .tm-last-card, .team-experience) img[data-portrait="everton"]{--portrait-width:192.959148%;--portrait-x:-50.000000%;--portrait-y:-1.484223%}
:is(.tm-team-cell, .tm-last-card, .team-experience) img[data-portrait="humberto"]{--portrait-width:150.451672%;--portrait-x:-33.700000%;--portrait-y:-0.681632%}
:is(.tm-team-cell, .tm-last-card, .team-experience) img[data-portrait="brandon"]{--portrait-width:168.454436%;--portrait-x:-33.000000%;--portrait-y:-2.460149%}
:is(.tm-team-cell, .tm-last-card, .team-experience) img[data-portrait="jennifer"]{--portrait-width:122.683903%;--portrait-x:-52.900000%;--portrait-y:1.964149%}
:is(.tm-team-cell, .tm-last-card, .team-experience) img[data-portrait="curtis"]{--portrait-width:152.150000%;--portrait-x:-50.000000%;--portrait-y:1.790000%}
:is(.tm-team-cell, .tm-last-card, .team-experience) img[data-portrait="miranda"]{--portrait-width:167.026856%;--portrait-x:-31.500000%;--portrait-y:-3.047482%}

/* Frames retain their proportions instead of stretching with viewport height. */
.tm-team-grid{
  --team-gap:clamp(6px,.65vw,11px);
  width:min(100%,calc((100svh - 220px)*1.412429 + 32px));
  height:auto;max-height:none;min-height:0;justify-self:center;
  grid-template-columns:repeat(5,minmax(0,1fr));
  grid-template-rows:repeat(3,auto);gap:var(--team-gap);align-content:center;
}
.tm-team-cell{aspect-ratio:500/590}
.tm-team-cell .tm-photo,.tm-last-card .tm-photo{background:#fff}
.team-experience .person-portrait,.thumb-photo{aspect-ratio:500/590}
/* Repaired sources replace the old badge covers and lower-body fade. */
.tm-team-cell::after,.person-portrait:has(img[data-portrait="daniel"])::after,
.next-portrait:has(img[data-portrait="daniel"])::after{display:none}
@media(max-width:760px){
  .tm-team-wall{justify-content:center;gap:14px}
  .tm-team-grid{
    --team-gap:6px;width:min(100%,calc((max(100svh,560px) - 245px)*.508475 + 12px));
    flex:none;align-self:center;grid-template-columns:repeat(3,minmax(0,1fr));
    grid-template-rows:repeat(5,auto);
  }
  .tm-team-caption{width:100%;max-width:360px;align-self:center}
}

/* New portraits share the existing neutral studio treatment and face scale. */
:is(.tm-team-cell, .tm-last-card, .team-experience) img:is([data-portrait="tonya"],[data-portrait="ken"],[data-portrait="gigi"],[data-portrait="stephanie"]){--portrait-width:100%;--portrait-x:-50%;--portrait-y:2.5%}
.tm-team-grid{width:min(100%,calc((100svh - 240px)*1.059322 + 32px));grid-template-rows:repeat(4,auto)}
@media(max-width:760px){.tm-team-grid{width:min(100%,calc((max(100svh,560px) - 250px)*.677966 + 18px));grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:repeat(5,auto)}}
