/* Shared agency logo lockups for international example cities */

.ae-agency-logo {
  display: flex;
  align-items: center;
  gap: clamp(0.65rem, 2vw, 1rem);
  margin: 0 0 clamp(0.85rem, 2.5vw, 1.25rem);
  max-width: 100%;
  text-decoration: none;
  color: inherit;
}

.ae-agency-logo__svg {
  display: block;
  width: auto;
  height: clamp(2rem, 5.5vw, 2.75rem);
  max-width: min(100%, 14rem);
  flex-shrink: 0;
}

.ae-agency-logo--compact .ae-agency-logo__svg {
  height: clamp(1.75rem, 4.5vw, 2.25rem);
  max-width: min(100%, 11rem);
}

.ae-agency-logo__mark {
  display: block;
  width: clamp(2rem, 5vw, 2.5rem);
  height: clamp(2rem, 5vw, 2.5rem);
  flex-shrink: 0;
}

.ae-agency-logo__name {
  font-size: clamp(0.85rem, 2.2vw, 1rem);
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1.2;
}

/* Hub card marks */
.hub-card__logo {
  display: flex;
  align-items: center;
  gap: 0.65rem;
  margin-bottom: 0.35rem;
}

.hub-card__mark {
  display: block;
  width: 2rem;
  height: 2rem;
  flex-shrink: 0;
}

.hub-card__agency {
  margin: 0;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--hub-muted);
  line-height: 1.2;
}

/* Portfolio pending tile brand wordmarks (base; city CSS extends) */
.ae-brand-wordmark {
  display: block;
  max-width: 100%;
  padding: 0 0.5rem;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: 0.02em;
  text-wrap: balance;
  overflow-wrap: anywhere;
}

@media (max-width: 320px) {
  .ae-agency-logo {
    flex-wrap: wrap;
    gap: 0.5rem;
  }

  .ae-agency-logo__svg {
    max-width: 100%;
    height: auto;
    min-height: 1.75rem;
  }

  .ae-brand-wordmark {
    font-size: clamp(0.78rem, 3.8vw, 0.95rem) !important;
  }
}
