/**
 * LQ Company Info / Employees — shared compact card styles.
 */

.lq-company-card,
.lq-company-info,
.lq-company-employees {
  --lq-company-padding: 24px;
  --lq-company-gap: 10px;

  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  padding: var(--lq-company-padding);
  background-color: var(--lq-company-bg, transparent);
  color: var(--lq-company-text, inherit);
}

.lq-company-info {
  --lq-company-bg: transparent;
  --lq-company-text: #ffffff;
  --lq-company-icon: #ffffff;
}

.lq-company-employees {
  --lq-company-bg: transparent;
  --lq-company-text: #ffffff;
  --lq-company-icon: #ffffff;
}

.lq-company-card a {
  color: inherit;
  text-decoration: none;
}

.lq-company-card a:hover,
.lq-company-card a:focus {
  text-decoration: underline;
}

.lq-company-info__title,
.lq-company-card__title,
.lq-company-info__name {
  margin: 0 0 var(--lq-company-gap);
  font-family: var(--lq-company-info-name-font-family, inherit);
  font-size: var(--lq-company-info-name-font-size, inherit);
  font-weight: var(--lq-company-info-name-font-weight, 700);
  line-height: var(--lq-company-info-name-line-height, 1.3);
  letter-spacing: var(--lq-company-info-name-letter-spacing, inherit);
  text-transform: var(--lq-company-info-name-text-transform, none);
  color: var(--lq-company-info-name-color, var(--lq-company-text, inherit));
}

.lq-company-info__rows,
.lq-company-card__rows,
.lq-company-employees,
.lq-company-employee__rows {
  display: flex;
  flex-direction: column;
  gap: var(--lq-company-gap);
}

.lq-company-employees {
  gap: calc(var(--lq-company-gap) * 2);
}

.lq-company-employee {
  display: flex;
  flex-direction: column;
  gap: var(--lq-company-gap);
}

.lq-company-employee__name {
  margin: 0 0 var(--lq-company-gap);
  font-family: var(--lq-company-employee-name-font-family, inherit);
  font-size: var(--lq-company-employee-name-font-size, inherit);
  font-weight: var(--lq-company-employee-name-font-weight, 700);
  line-height: var(--lq-company-employee-name-line-height, 1.3);
  letter-spacing: var(--lq-company-employee-name-letter-spacing, inherit);
  text-transform: var(--lq-company-employee-name-text-transform, none);
  color: var(--lq-company-employee-name-color, var(--lq-company-text, inherit));
}

.lq-company-employee__position {
  margin: 0;
  font-family: var(--lq-company-employee-position-font-family, inherit);
  font-size: var(--lq-company-employee-position-font-size, inherit);
  font-weight: var(--lq-company-employee-position-font-weight, inherit);
  line-height: var(--lq-company-employee-position-line-height, 1.4);
  letter-spacing: var(--lq-company-employee-position-letter-spacing, inherit);
  text-transform: var(--lq-company-employee-position-text-transform, none);
  color: var(--lq-company-employee-position-color, var(--lq-company-text, inherit));
  opacity: 0.9;
}

.lq-company-info__row,
.lq-company-card__row,
.lq-company-employee__row {
  display: flex;
  align-items: flex-start;
  gap: var(--lq-company-icon-gap, 8px);
  margin: 0;
  line-height: 1.45;
  font-size: 0.95em;
}

.lq-company-info__row--labeled {
  align-items: baseline;
}

.lq-company-info__text,
.lq-company-info__value,
.lq-company-info__address,
.lq-company-info__details .lq-company-info__row {
  font-family: var(--lq-company-info-details-font-family, inherit);
  font-size: var(--lq-company-info-details-font-size, inherit);
  font-weight: var(--lq-company-info-details-font-weight, inherit);
  line-height: var(--lq-company-info-details-line-height, inherit);
  letter-spacing: var(--lq-company-info-details-letter-spacing, inherit);
  text-transform: var(--lq-company-info-details-text-transform, none);
  color: var(--lq-company-info-details-color, var(--lq-company-text, inherit));
}

.lq-company-info__label {
  flex: 0 0 auto;
  margin-right: 0.35em;
  font-family: var(--lq-company-info-label-font-family, inherit);
  font-size: var(--lq-company-info-label-font-size, inherit);
  font-weight: var(--lq-company-info-label-font-weight, inherit);
  line-height: var(--lq-company-info-label-line-height, inherit);
  letter-spacing: var(--lq-company-info-label-letter-spacing, inherit);
  text-transform: var(--lq-company-info-label-text-transform, none);
  color: var(--lq-company-info-label-color, var(--lq-company-info-details-color, var(--lq-company-text, inherit)));
}

.lq-company-employee__contact,
.lq-company-employee__contact-row,
.lq-company-employee__value {
  font-family: var(--lq-company-employee-contact-font-family, inherit);
  font-size: var(--lq-company-employee-contact-font-size, inherit);
  font-weight: var(--lq-company-employee-contact-font-weight, inherit);
  line-height: var(--lq-company-employee-contact-line-height, inherit);
  letter-spacing: var(--lq-company-employee-contact-letter-spacing, inherit);
  text-transform: var(--lq-company-employee-contact-text-transform, none);
  color: var(--lq-company-employee-contact-color, var(--lq-company-text, inherit));
}

.lq-company-employee__contact-row {
  align-items: center;
}

.lq-company-info__icon,
.lq-company-card__icon,
.lq-company-employee__icon {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  justify-content: center;
  width: var(--lq-company-icon-width, var(--lq-company-icon-size, 18px));
  min-width: var(--lq-company-icon-width, var(--lq-company-icon-size, 18px));
  margin-top: 0;
  color: var(--lq-company-icon-color, var(--lq-company-icon, currentColor));
  transform: translateY(var(--lq-company-icon-offset-y, 0));
}

.lq-company-info__row:not(.lq-company-info__row--labeled) {
  align-items: center;
}

.lq-company-info--no-icons .lq-company-info__row {
  gap: 0;
}

.lq-company-card__icon-svg {
  display: block;
  width: var(--lq-company-icon-size, 18px);
  height: var(--lq-company-icon-size, 18px);
  stroke-width: var(--lq-company-icon-stroke-width, 1.75);
}

.lq-company-icon img {
  object-fit: contain;
}

.lq-company-info__value,
.lq-company-card__value,
.lq-company-employee__value {
  flex: 1 1 auto;
  min-width: 0;
  word-break: break-word;
  overflow-wrap: anywhere;
}

.lq-company-employees--no-icons .lq-company-employee__contact-row {
  gap: 0;
}

@media (max-width: 767px) {
  .lq-company-card,
  .lq-company-info,
  .lq-company-employees {
    padding: max(16px, calc(var(--lq-company-padding) * 0.75));
  }
}
