/* Shared styles for the visual templates (rendered at exact pixel size) */
.tpl {
  --panel: #F02327;
  position: relative;
  overflow: hidden;
  background: #262424;
  color: #ffffff;
  font-family: 'Lato', sans-serif;
  -webkit-font-smoothing: antialiased;
}
.tpl * { box-sizing: border-box; }
.tpl .abs { position: absolute; }
.tpl .photo { position: absolute; object-fit: cover; display: block; }
.tpl .panel { position: absolute; background: var(--panel); }
.tpl .pill {
  background: #ffffff;
  color: var(--panel);
  border-radius: 999px;
  white-space: nowrap;
  line-height: 1.2;
}
.tpl .f-ma { font-family: 'Inter', sans-serif; }
.tpl .f-hn { font-family: 'Helvetica Neue Web', 'Helvetica Neue', Helvetica, Arial, sans-serif; }
.tpl .stickers { position: absolute; display: flex; flex-direction: column; align-items: flex-start; transform-origin: left center; }
.tpl .sectors { position: absolute; display: flex; flex-direction: column; align-items: flex-end; }
.tpl .row { position: absolute; display: flex; justify-content: space-between; align-items: center; }
.tpl .ed-logo { display: block; width: auto; }

/* Exhibitor logo: centred in the white box, never higher than --logo-max-h */
.tpl .logo-box {
  background: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--logo-pad, 28px);
  flex-shrink: 0;
}
.tpl .logo-box img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: var(--logo-max-h, 60%);
  object-fit: contain;
}
.tpl .logo-box .ph { color: #5f5757; font-size: 0.5em; }
.tpl .logo-box[data-has-logo="true"] .ph { display: none; }
.tpl .logo-box[data-has-logo="false"] img { display: none; }
