/* Homepage-only replacement for the former OUR BUSINESS section.
   Keep #business so existing navigation links retain their destination. */
.home-page .how-to-sell {
  --sell-paper: #f1ebdd;
  --sell-card: #fffbf2;
  --sell-ink: #17251d;
  --sell-muted: #59584a;
  --sell-gold: #826332;
  --sell-rule: rgba(90,75,49,.2);
  background: var(--sell-paper);
  color: var(--sell-ink);
}
.home-page .sell-heading { margin-bottom: 28px; }
.home-page .sell-label {
  margin: 0 0 12px;
  color: var(--sell-gold);
  font: 500 .875rem/1.6 var(--ref-latin,Georgia,serif);
  letter-spacing: .05em;
}
.home-page .sell-heading h2 {
  margin: 0;
  color: var(--sell-ink);
  font: 600 clamp(1.5rem,6.7vw,1.875rem)/1.6 var(--ref-heading,serif);
  letter-spacing: .01em;
}
.home-page .sell-heading h2 span { display: inline-block; max-width: 100%; }
.home-page .sell-steps {
  display: grid;
  grid-template-columns: minmax(0,1fr);
  gap: 42px;
  margin: 0;
  padding: 0;
  list-style: none;
}
.home-page .sell-step {
  --sell-visual-size: min(70%,12.25rem,53.2vw);
  position: relative;
  min-width: 0;
  padding: 18px 18px 20px;
  border: 1px solid var(--sell-rule);
  background: var(--sell-card);
  text-align: center;
}
.home-page .sell-step-number {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 7px;
  margin: 0 0 8px;
  color: var(--sell-gold);
  font: 500 .875rem/1.2 var(--ref-latin,Georgia,serif);
  letter-spacing: .08em;
}
.home-page .sell-step-number > span { font-size: 1.75rem; letter-spacing: .025em; }
/* Shared square artwork slot for every step, including future additions.
   Only text-inclusive poster assets need the optical-scale modifier below. */
.home-page .sell-step-visual {
  --sell-visual-scale: 1;
  --sell-visual-space: calc(var(--sell-visual-size) * (var(--sell-visual-scale) - 1) / 2);
  position: relative;
  display: grid;
  place-items: center;
  width: var(--sell-visual-size);
  aspect-ratio: 1;
  margin: var(--sell-visual-space) auto calc(14px + var(--sell-visual-space));
}
.home-page .sell-step-visual > img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  margin: 0;
  transform: scale(var(--sell-visual-scale));
  transform-origin: center;
}
/* STEP 01 contains a number and captions outside the illustration.
   Compensate for that space, keeping the entire source image visible.
   The shared spacing formula reserves its scaled height: no cropping/overlap. */
.home-page .sell-step-visual--poster {
  --sell-visual-scale: 1.45;
}
.home-page .sell-step h3 {
  margin: 0 0 8px;
  color: var(--sell-ink);
  font: 600 1.375rem/1.5 var(--ref-heading,serif);
  letter-spacing: .035em;
}
.home-page .sell-step-description {
  margin: 0;
  color: var(--sell-muted);
  font: 400 1rem/1.7 var(--ref-body,sans-serif);
  text-wrap: balance;
}
.home-page .sell-step-arrow {
  position: absolute;
  left: 50%;
  bottom: -34px;
  transform: translateX(-50%);
  color: var(--sell-gold);
  font: 400 1.25rem/1.2 Georgia,serif;
}
@media (min-width:901px) {
  .home-page .sell-heading { margin-bottom: 36px; }
  .home-page .sell-heading h2 { font-size: 1.875rem; }
  .home-page .sell-steps { grid-template-columns: repeat(2,minmax(0,1fr)); grid-auto-rows: 1fr; gap: 36px; }
  .home-page .sell-step { display: grid; grid-template-rows: auto auto auto 1fr; align-content: start; padding: 22px 18px 24px; }
  .home-page .sell-step--appraisal { display: block; }
  .home-page .sell-step-description { align-self: start; }
  .home-page .sell-step-arrow { left: auto; right: -30px; top: 50%; bottom: auto; transform: rotate(-90deg); }
  /* The row break is conveyed by numbering, not an arrow pointing at STEP 04. */
  .home-page .sell-step:nth-child(2) .sell-step-arrow { visibility: hidden; }
}
@media (min-width:1200px) {
  .home-page .sell-steps { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .home-page .sell-step:nth-child(2) .sell-step-arrow { visibility: visible; }
}
