/*
 * SD brand carousel.
 *
 * A full-bleed row of brand logos, eight across at desktop. Measured on the
 * reference: the block is 100px tall and each logo renders at 120x60. Thin
 * rules top and bottom separate it from the sections either side.
 */
.sd-brandcarousel-block {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  border-top: 1px solid #e3e3e3;
  border-bottom: 1px solid #e3e3e3;
}

.sd-brandcarousel {
  display: table;
  table-layout: fixed;
  width: 100%;
}
.sd-brandcarousel__item {
  display: table-cell;
  height: 85px;
  vertical-align: middle;
  text-align: center;
  color: #000;
  font-size: 14px; font-weight: 700; letter-spacing: .06em;
  text-decoration: none;
}
@media (min-width: 1200px) { .sd-brandcarousel__item { height: 100px; } }
/* Measured: the reference logo row does not react to hover. */
.sd-brandcarousel__item:hover { text-decoration: none; }

/* Measured logo box: 120 x 60, contained so no mark is cropped or stretched. */
.sd-brandcarousel__logo {
  display: inline-block;
  max-width: 120px;
  max-height: 60px;
  width: auto;
  height: auto;
  object-fit: contain;
}

/* Show as many as fit: 2 up on a phone, 8 across at desktop. */
.sd-brandcarousel__item:nth-child(n + 3)  { display: none; }
@media (min-width: 768px)  { .sd-brandcarousel__item:nth-child(-n + 4) { display: table-cell; }
                             .sd-brandcarousel__item:nth-child(n + 5)  { display: none; } }
@media (min-width: 992px)  { .sd-brandcarousel__item:nth-child(-n + 6) { display: table-cell; }
                             .sd-brandcarousel__item:nth-child(n + 7)  { display: none; } }
@media (min-width: 1200px) { .sd-brandcarousel__item:nth-child(-n + 8) { display: table-cell; }
                             .sd-brandcarousel__item:nth-child(n + 9)  { display: none; } }
