.section.new-generator-catalogue { padding-top: 24px; }
.new-generator-brand-buttons {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 14px;
  margin: 0 0 28px;
}
.new-generator-brand-button {
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-width: 0;
  height: 120px;
  padding: 16px;
  overflow: hidden;
  border: 1px solid #dce2e5;
  border-radius: 5px;
  background: #fff;
  text-decoration: none;
  transition: border-color .16s ease, box-shadow .16s ease;
}
.new-generator-brand-button:hover {
  border-color: #668421;
  box-shadow: 0 3px 12px rgb(17 32 44 / 10%);
}
.new-generator-brand-button:focus-visible {
  outline: 3px solid #668421;
  outline-offset: 4px;
}
.new-generator-brand-button .new-generator-brand-logo {
  display: block;
  width: 100%;
  max-width: 180px;
  height: 84px;
  object-fit: contain;
}
/* Show the Baudouin wordmark above the separate parent-company strapline. */
.new-generator-brand-logo-frame--baudouin {
  display: block;
  width: 100%;
  max-width: 180px;
  aspect-ratio: 600 / 110;
  overflow: hidden;
}
.new-generator-brand-logo-frame--baudouin .new-generator-brand-logo {
  width: 100%;
  height: auto;
}
/* Frame the supplied 3000 x 2000 MTU artwork without its transparent margins. */
.new-generator-brand-logo-frame--mtu {
  position: relative;
  display: block;
  width: 100%;
  max-width: 180px;
  aspect-ratio: 2309 / 981;
  overflow: hidden;
}
.new-generator-brand-logo-frame--mtu .new-generator-brand-logo {
  position: absolute;
  width: 129.926375%;
  max-width: none;
  height: auto;
  left: -14.941533%;
  top: -51.987768%;
}
/* The FG Wilson source includes a white square canvas. Crop only that padding. */
.new-generator-brand-button .new-generator-brand-logo--fg-wilson {
  object-fit: cover;
  max-width: 140px;
}
@media (max-width: 1050px) {
  .new-generator-brand-buttons { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .new-generator-brand-buttons { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
}
@media (prefers-reduced-motion: reduce) {
  .new-generator-brand-button { transition: none; }
}

/* Square source canvases contain wide marks: crop only their empty padding. */
.new-generator-brand-button .generator-brand-logo--padded { object-fit: cover; }
