/* Native horizontal scrolling keeps links, swipe and the no-JavaScript path intact. */
.mainstream-theme .ms-launches-track {
  position: relative;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  scroll-behavior: auto;
  scrollbar-width: none;
  align-items: start;
  padding: 4px 0 8px;
}
.mainstream-theme .ms-launches-track::-webkit-scrollbar { display: none; width: 0; height: 0; }
.mainstream-theme .ms-launches-item {
  display: flex;
  flex-direction: column;
  scroll-snap-align: start;
}
.mainstream-theme .ms-launches-info {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  padding-top: 17px;
}
.mainstream-theme .ms-launches-info h3 { margin-bottom: 8px; }
.mainstream-theme .ms-launches .ms-item-reference { margin: 0 0 10px; }
.mainstream-theme .ms-launches .ms-item-reference-label {
  display: block;
  margin-bottom: 3px;
  color: #64715f;
  font: 400 10px/1.4 'DM Sans', sans-serif;
  letter-spacing: .02em;
}
.mainstream-theme .ms-launches .ms-item-reference-name {
  display: block;
  color: #405247;
  font: 400 13px/1.45 'DM Sans', sans-serif;
}
.mainstream-theme .ms-launches-buy { margin-top: 12px; padding-top: 0; }
.mainstream-theme .ms-launches-controls {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
  margin-top: 15px;
}
.mainstream-theme .ms-launches-controls[hidden],
.mainstream-theme .ms-launches-controls [hidden] { display: none !important; }
.mainstream-theme .ms-launches-controls button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  min-height: 44px;
  padding: 9px 12px;
  border: 1px solid #40524740;
  border-radius: 999px;
  color: #405247;
  background: transparent;
  font: 500 12px/1.4 'DM Sans', sans-serif;
  cursor: pointer;
}
.mainstream-theme .ms-launches-controls [data-ms-launches-toggle] { min-width: 88px; }
.mainstream-theme .ms-launches-controls button:disabled { opacity: .35; cursor: default; }
.mainstream-theme .ms-launches-controls button:focus-visible { outline: 2px solid #405247; outline-offset: 3px; }
.mainstream-theme .ms-launches-controls button svg { width: 18px; height: 18px; }
.mainstream-theme .ms-launches-controls [data-ms-launches-status] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
@media (hover: hover) and (pointer: fine) {
  .mainstream-theme .ms-launches-controls button:not(:disabled):hover { background: #4052470d; }
}
@media (max-width: 650px) {
  .mainstream-theme .ms-launches-info { padding-top: 14px; }
  .mainstream-theme .ms-launches .ms-item-reference { margin-bottom: 10px; }
  .mainstream-theme .ms-launches .ms-item-reference-name { font-size: 12px; }
  .mainstream-theme .ms-launches-controls { margin-top: 10px; }
}
@media (prefers-reduced-motion: reduce) {
  .mainstream-theme .ms-launches-track { scroll-behavior: auto; }
}

/* Product identity follows the same hierarchy as the full catalogue. */
.mainstream-theme .ms-launches-brand {
  margin: 0 0 5px;
  color: #64715f;
  font: 500 11px/1.4 'DM Sans', sans-serif;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.mainstream-theme .ms-launches-formats {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 4px 10px;
  margin: 0;
  color: #405247;
  font: 400 12px/1.5 'DM Sans', sans-serif;
}
.mainstream-theme .ms-launches-formats-label { color: #64715f; }
.mainstream-theme .ms-launches-formats span + span + span::before {
  content: '·';
  margin-right: 10px;
  color: #64715f;
}
.mainstream-theme .ms-launches-position {
  margin-right: auto;
  color: #64715f;
  font: 400 12px/1.4 'DM Sans', sans-serif;
  font-variant-numeric: tabular-nums;
  letter-spacing: .08em;
}
