/* Batch C: Trade & Design Partner Support, Rug Cleaning & Care, Cupboards, Kitchens & Displays. */

/* Figma hero centres shorter content vertically */
.hero { justify-content: center; }

.lh-22 { line-height: 22px; }
.lh-22 p + p { margin-top: 22px; }
.w-760 { max-width: 760px; }

/* ---------- Four centred icon cards (no card chrome) ---------- */
.quad { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.quad__title { grid-column: 1 / -1; text-align: center; }
.quad__item { padding: 24px; display: flex; flex-direction: column; align-items: center; gap: 12px; text-align: center; }
.quad__item img { height: 35px; width: auto; }

/* ---------- Three columns split by centred hairlines ---------- */
.trio { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.trio__item { position: relative; min-height: 193px; display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
.trio__item img { height: 35px; width: auto; }
.trio__item + .trio__item::before { content: ""; position: absolute; top: 0; bottom: 0; left: -12px; border-left: 0.5px solid var(--bronze); }

/* ---------- Numbered route list ---------- */
.num { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 24px; font-size: 14px; }
.num li { display: flex; align-items: center; gap: 10px; }
.num__badge {
  flex: none; width: 45px; height: 45px;
  display: flex; align-items: center; justify-content: center;
  background: var(--gold); color: var(--bronze); font: 400 20px/normal var(--serif);
}

.rows--top .feature { justify-content: flex-start; }

@media (min-width: 1025px) {
  .rows .feature__img { height: 100%; } /* image fills each row's own height */
  .viz { min-height: 416px; }
  .planning { min-height: 400px; }
  .planning .split__media { width: 48.4%; }
}

@media (max-width: 1300px) {
  .trio br { display: none; } /* Figma hard breaks only fit the 364px columns */
}

@media (max-width: 1024px) {
  .quad { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .trio { grid-template-columns: 1fr; gap: 32px; }
  .trio__item { min-height: 0; }
  .trio__item + .trio__item::before { left: 0; right: 0; top: -16px; bottom: auto; border-left: 0; border-top: 0.5px solid var(--bronze); }
}

@media (max-width: 640px) {
  .quad { grid-template-columns: 1fr; }
  .quad__item { padding: 12px 0; }
}
