/* Put cm-team-grid on the Elementor container holding the eight Member widgets. */
.cm-team-grid, .cm-team-grid > .e-con-inner {display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px!important;align-items:stretch}
.cm-team-grid > .e-con-inner {grid-column:1/-1;width:100%}
.cm-team-grid .elementor-widget-bdt-member {width:100%!important;min-width:0;margin:0!important;--container-widget-width:100%}
.cm-team-card {--cm-team-blue:#1976f9;--cm-team-radius:24px;width:100%;color:#fff;perspective:1200px}
.cm-team-card * {box-sizing:border-box}
.cm-team-rotor {display:grid;min-height:326px;aspect-ratio:281/326;transform-style:preserve-3d;transition:transform .55s ease}
.cm-team-front,.cm-team-back {grid-area:1/1;min-width:0;border-radius:var(--cm-team-radius);backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden}
.cm-team-front {position:relative;background:#eee7e2}
.cm-team-photo {position:absolute;width:100%;height:100%!important;object-fit:cover;object-position:center;display:block}
.cm-team-card .cm-team-open {position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:inherit;padding:20px 12px;display:flex;align-items:flex-end;justify-content:center;background:linear-gradient(180deg,transparent 65%,rgba(0,0,0,.85));color:#fff;cursor:pointer;box-shadow:none;}
.cm-team-card .cm-team-name {color:inherit;margin:0;overflow-wrap:anywhere}
/* Fallbacks only: Elementor's widget typography selectors take precedence. */
.bdt-member.cm-team-card .cm-team-name {font-size:20px;line-height:24px;font-weight:400}
.bdt-member.cm-team-card .cm-team-front-name,
.bdt-member.cm-team-card .cm-team-back-name,
.bdt-member.cm-team-card .cm-team-role,
.bdt-member.cm-team-card .cm-team-description {color:#fff}
.cm-team-card .cm-team-role,.cm-team-card .cm-team-description {font-size:14px;line-height:20px;font-weight:400}
.cm-team-card .cm-team-front-name {position:absolute;bottom:20px;left:12px;right:12px;z-index:1;text-align:center;pointer-events:auto;cursor:pointer}

.cm-team-back {position:relative;min-height:min-content;transform:rotateY(180deg);background:var(--cm-team-blue);padding:24px;display:flex;flex-direction:column;color:#fff;text-align:left}
.cm-team-card .cm-team-role {margin:4px 0 0;color:inherit}
.bdt-member.cm-team-card .cm-team-role {opacity:1}
.cm-team-card .cm-team-description {margin:42px 0 24px;color:inherit;overflow-wrap:anywhere}
.cm-team-description p {margin:0 0 10px}.cm-team-description p:last-child {margin:0}
.cm-team-card .cm-team-linkedin {margin-top:auto;width:30px;height:30px;display:grid;place-items:center;flex-shrink:0;border-radius:50%;background:white;color:var(--cm-team-blue);text-decoration:none}
.cm-team-linkedin svg {width:22px;height:22px}
.cm-team-card :is(button,a):focus-visible {outline:3px solid currentColor;outline-offset:-5px}
.cm-team-card.cm-team-is-open .cm-team-rotor {transform:rotateY(180deg)}
.cm-team-card .cm-team-open {background:linear-gradient(var(--cm-team-gradient-angle,180deg),transparent var(--cm-team-gradient-start,65%),var(--cm-team-gradient-colour,rgba(0,0,0,.85)))}
.cm-team-card.cm-team-no-gradient .cm-team-open {background:transparent}.cm-team-embedded .cm-team-front-name {opacity:0}
/* Without JavaScript, expose both faces as ordinary readable content. */
.cm-team-card:not(.cm-team-ready) .cm-team-rotor {display:flex;flex-direction:column;aspect-ratio:auto}
.cm-team-card:not(.cm-team-ready) .cm-team-front {min-height:326px}
.cm-team-card:not(.cm-team-ready) .cm-team-back {transform:none;min-height:326px}
@media(max-width:1024px){.cm-team-grid,.cm-team-grid > .e-con-inner{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){
  .cm-team-grid,.cm-team-grid > .e-con-inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px!important}
  .cm-team-card{--cm-team-radius:16px}
  .cm-team-card.cm-team-ready .cm-team-rotor{min-height:0;aspect-ratio:149/165}
  .cm-team-card.cm-team-ready .cm-team-front{min-height:0}
  .cm-team-card.cm-team-ready .cm-team-back{position:absolute;inset:0;min-height:0;overflow-y:auto;overscroll-behavior:contain}
  .cm-team-back{padding:12px}
  .bdt-member.cm-team-card .cm-team-name{font-size:14px;line-height:20px}
  .cm-team-card .cm-team-front-name{bottom:12px;left:6px;right:6px}
  .cm-team-card .cm-team-description{margin:16px 0}
}
@media(prefers-reduced-motion:reduce){.cm-team-rotor{transition:none}}
