/* Same tool-first card and section rhythm as the approved lead/back page.
   Scoped to the existing vocal-remover URL, never the homepage or splitter. */
.vocal-remover-landing > .guide-shell > #stem-separator {
  margin-top: 12px; overflow: hidden; border: 1px solid #e9ded7;
  border-radius: 17px; box-shadow: 0 18px 42px rgba(50, 32, 22, .045);
}
.vocal-remover-landing > .guide-shell > #stem-separator .panel-heading {
  padding: 24px clamp(20px, 4vw, 34px) 19px;
  background: linear-gradient(110deg, #fffaf6, #fff 72%);
}
.vocal-remover-landing #stem-separator .panel-heading h2 {
  margin-top: 9px; font-size: clamp(1.3rem, 2.2vw, 1.65rem);
}
.vocal-remover-landing #stem-separator .suite-tool-blurb { margin-top: 7px; font-size: .87rem; }
.vocal-remover-landing #stem-separator .suite-tool-body { gap: 14px; margin-top: 18px; }
.vocal-remover-landing #stem-separator .sep-drop {
  min-height: 192px; border-color: #d6c8bf;
  background: linear-gradient(180deg, #fdfcfa, #faf8f6);
}
.vocal-remover-landing #stem-separator .sep-drop:hover,
.vocal-remover-landing #stem-separator .sep-drop.dragging { border-color: #de6a27; background: #fff8f3; }
.vocal-remover-landing .splitter-stem-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.vocal-remover-landing .splitter-story a { color: var(--purple-dark); text-underline-offset: 3px; }
.vocal-remover-landing audio { max-width: 100%; width: 100%; }
@media (max-width: 760px) {
  .vocal-remover-landing .splitter-stem-list { grid-template-columns: minmax(0, 1fr); }
}
