.photo-placeholder.has-photo::before,
.photo-placeholder.has-photo::after {
  display: none;
}

.photo-placeholder.has-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 32%;
  filter: saturate(.88) contrast(1.03);
  transition: transform .5s ease, filter .5s ease;
}

.partner-card:hover .photo-placeholder.has-photo img {
  transform: scale(1.025);
  filter: saturate(1) contrast(1.03);
}

/* Compact brand lockup: the source artwork is square, so only its symbol is
   framed here and the wordmark remains crisp at every screen size. */
.brand {
  width: 150px;
  height: 86px;
  overflow: visible;
  flex-direction: column;
  justify-content: center;
  gap: 1px;
}

.brand-symbol {
  position: relative;
  display: block;
  flex: 0 0 36px;
  width: 48px;
  height: 36px;
  overflow: hidden;
}

.brand .brand-symbol img,
.footer .brand-symbol img {
  position: absolute;
  width: 96px;
  max-width: none;
  height: auto;
  left: -24px;
  top: -17px;
  transform: none;
}

.brand-wordmark {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3px;
  white-space: nowrap;
}

.brand-wordmark strong {
  font: 600 13px/1 "Space Grotesk", sans-serif;
  letter-spacing: .13em;
  color: #f0f5fb;
}

.brand-wordmark strong em {
  font-style: normal;
  color: #59bfff;
}

.brand-wordmark small {
  display: block;
  font: 700 7px/1 "Manrope", sans-serif;
  letter-spacing: .34em;
  color: #c3d0df;
  text-shadow: 0 0 12px rgba(79, 199, 255, .22);
}

.footer-brand {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 150px;
  gap: 1px;
}

@media (max-width: 430px) {
  .brand { width: 132px; }
  .brand-wordmark strong { font-size: 12px; }
  .brand-wordmark small { font-size: 7px; letter-spacing: .24em; }
}
