/* Senior Move Sorter · extends The Template Nest workbench system */
[hidden] { display: none !important; }
.signal-panel { align-self: end; min-width: 0; border: var(--rule-heavy) solid var(--color-rule); background: var(--color-paper-2); }
.signal-panel__top, .signal-panel__stats { display: flex; justify-content: space-between; gap: var(--space-md); padding: var(--space-sm) var(--space-md); color: var(--color-muted); font: 700 var(--text-xs)/1.4 var(--font-display); }
.signal-panel__top { border-block-end: var(--rule-hair) solid var(--color-rule); }
.signal-panel__count { padding: var(--space-xl) var(--space-md) 0; color: var(--color-accent); font: 700 clamp(4rem, 9vw, 7rem)/.85 var(--font-display); letter-spacing: -.08em; }
.signal-panel__label { padding: var(--space-xs) var(--space-md) var(--space-xl); color: var(--color-ink-2); font-family: var(--font-display); }
.signal-panel__stats { border-block-start: var(--rule-hair) solid var(--color-rule); }
.product-hero { display: grid; gap: var(--space-2xl); padding-block: var(--space-xl) var(--space-3xl); }
.product-hero__copy { display: grid; align-content: end; gap: var(--space-lg); min-width: 0; }
.product-hero__copy h1 { max-width: 14ch; }
.product-hero__copy .hero-lede { max-width: 53ch; }
.product-actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-md); }
.product-actions .button--primary { background: var(--color-accent); color: var(--color-accent-ink); }
.product-actions .button--primary:hover { background: var(--color-focus); }
.product-proof { min-width: 0; border: var(--rule-heavy) solid var(--color-rule); background: var(--color-paper-2); }
.product-proof__bar { display: flex; justify-content: space-between; gap: var(--space-md); padding: var(--space-sm) var(--space-md); border-block-end: var(--rule-hair) solid var(--color-rule); color: var(--color-muted); font: 700 var(--text-xs)/1.4 var(--font-display); }
.product-proof__body { display: grid; gap: var(--space-xs); padding: var(--space-md); }
.sample-row { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--space-md); align-items: center; padding: var(--space-sm) var(--space-md); background: var(--color-paper-3); }
.sample-row strong { min-width: 0; overflow-wrap: anywhere; font-family: var(--font-display); }
.sample-row span { color: var(--color-muted); font: 700 var(--text-xs)/1.2 var(--font-display); text-transform: uppercase; }
.sample-row--accent span { color: var(--color-accent); }
.sample-row--pause span { color: var(--color-warning); }
.proof-progress { height: .5rem; margin-top: var(--space-sm); background: var(--color-paper-4); overflow: hidden; }
.proof-progress span { display: block; width: 60%; height: 100%; background: var(--color-accent); }
.proof-foot { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--space-sm); padding: var(--space-md); border-block-start: var(--rule-hair) solid var(--color-rule); color: var(--color-muted); font-size: var(--text-xs); }

.trust-strip { display: grid; gap: var(--space-md); padding-block: var(--space-lg); border-block: var(--rule-heavy) solid var(--color-rule); }
.trust-strip__items { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-sm); }
.trust-strip__item { padding: var(--space-md); background: var(--color-paper-2); }
.trust-strip__item strong { display: block; margin-bottom: var(--space-xs); color: var(--color-accent); font-family: var(--font-display); }
.trust-strip__item span { color: var(--color-ink-2); font-size: var(--text-sm); }

.beat-section { padding-block: var(--space-4xl); }
.beat-section--surface { background: var(--color-paper-2); }
.beat-intro { display: grid; gap: var(--space-md); margin-bottom: var(--space-2xl); }
.beat-intro p { max-width: var(--measure); color: var(--color-ink-2); font-size: var(--text-md); }
.pain-ledger { display: grid; border-block-start: var(--rule-heavy) solid var(--color-rule); }
.pain-row { display: grid; grid-template-columns: minmax(11rem, .65fr) minmax(0, 1.35fr); gap: var(--space-xl); padding-block: var(--space-lg); border-block-end: var(--rule-hair) solid var(--color-rule); }
.pain-row strong { font-family: var(--font-display); }
.pain-row p { color: var(--color-ink-2); }

.process-rail { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-block: var(--rule-heavy) solid var(--color-rule); }
.process-step { min-width: 0; padding: var(--space-xl); border-inline-end: var(--rule-hair) solid var(--color-rule); }
.process-step:last-child { border-inline-end: 0; }
.process-step__code { margin-bottom: var(--space-xl); color: var(--color-accent); font: 700 var(--text-xs)/1.2 var(--font-display); }
.process-step h3 { margin-bottom: var(--space-md); }
.process-step p { color: var(--color-ink-2); }

.feature-ledger { display: grid; gap: 0; border-block-start: var(--rule-heavy) solid var(--color-rule); }
.feature-row { display: grid; grid-template-columns: minmax(12rem, .65fr) minmax(0, 1.35fr); gap: var(--space-xl); padding-block: var(--space-lg); border-block-end: var(--rule-hair) solid var(--color-rule); }
.feature-row__name { font-family: var(--font-display); }
.feature-row__copy { display: grid; gap: var(--space-xs); color: var(--color-ink-2); }
.feature-row__copy small { color: var(--color-muted); }

.alternative-table { width: 100%; min-width: 46rem; border-collapse: collapse; background: var(--color-paper); }
.alternative-table th, .alternative-table td { padding: var(--space-md); border-bottom: var(--rule-hair) solid var(--color-rule); text-align: left; vertical-align: top; }
.alternative-table th { color: var(--color-muted); font: 700 var(--text-xs)/1.2 var(--font-display); text-transform: uppercase; }
.alternative-table td:first-child { color: var(--color-ink); font-family: var(--font-display); }
.alternative-table td { color: var(--color-ink-2); }
.alternative-table tr[data-choice="product"] td { background: var(--color-paper-3); }
.alternative-table tr[data-choice="product"] td:first-child { color: var(--color-accent); }
.table-scroll { overflow-x: auto; contain: layout inline-size; }
.table-hint { display: none; margin-bottom: var(--space-sm); color: var(--color-accent); font: 700 var(--text-xs)/1.2 var(--font-display); text-transform: uppercase; }

.boundary-block { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: var(--space-2xl); padding: var(--space-xl); border: var(--rule-heavy) solid var(--color-warning); background: var(--color-paper-2); }
.boundary-block h2 { color: var(--color-warning); }
.boundary-block p, .boundary-block li { color: var(--color-ink-2); }
.boundary-block ul { margin: 0; padding-inline-start: var(--space-lg); }
.boundary-block li + li { margin-block-start: var(--space-sm); }

.purchase-block { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: var(--space-2xl); align-items: start; padding-block: var(--space-4xl); }
.purchase-price { display: grid; gap: var(--space-md); }
.purchase-price .price { color: var(--color-accent); }
.purchase-list { margin: 0; padding: 0; list-style: none; border-block-start: var(--rule-heavy) solid var(--color-rule); }
.purchase-list li { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--space-md); padding-block: var(--space-md); border-block-end: var(--rule-hair) solid var(--color-rule); color: var(--color-ink-2); }
.purchase-list li::before { content: "✓"; color: var(--color-accent); font-family: var(--font-display); font-weight: 700; }
.checkout-box { display: grid; gap: var(--space-md); margin-top: var(--space-xl); }
.checkout-box .button { width: 100%; background: var(--color-accent); color: var(--color-accent-ink); }
.checkout-box small { color: var(--color-muted); }

.demo-link-panel { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--space-lg); align-items: center; padding: var(--space-lg); border: var(--rule-heavy) solid var(--color-accent); }
.demo-link-panel p { color: var(--color-ink-2); }

.demo-page { min-height: 100vh; }
.demo-shell { width: min(100%, 72rem); margin-inline: auto; padding-inline: var(--page-gutter); }
.demo-header { display: flex; justify-content: space-between; align-items: center; gap: var(--space-md); padding-block: var(--space-lg); }
.demo-progress { height: .4rem; background: var(--color-paper-3); }
.demo-progress span { display: block; width: 20%; height: 100%; background: var(--color-accent); }
.demo-stage { display: grid; grid-template-columns: minmax(0, .72fr) minmax(0, 1.28fr); gap: var(--space-2xl); min-height: 34rem; padding-block: var(--space-3xl); align-items: center; }
.demo-copy { display: grid; gap: var(--space-lg); }
.demo-copy p { color: var(--color-ink-2); font-size: var(--text-md); }
.demo-board { min-height: 26rem; padding: var(--space-lg); border: var(--rule-heavy) solid var(--color-rule); background: var(--color-paper-2); }
.demo-board__label { margin-bottom: var(--space-md); color: var(--color-accent); font: 700 var(--text-xs)/1.2 var(--font-display); text-transform: uppercase; }
.demo-rows { display: grid; gap: var(--space-xs); }
.demo-nav { display: grid; grid-template-columns: minmax(8rem, 1fr) auto minmax(8rem, 1fr); gap: var(--space-md); align-items: center; padding-block: var(--space-lg) var(--space-3xl); border-block-start: var(--rule-hair) solid var(--color-rule); }
.demo-nav button:last-child { justify-self: end; }
.demo-nav__toggle { min-width: 9rem; }
.demo-final { display: grid; gap: var(--space-lg); padding: var(--space-xl); border: var(--rule-heavy) solid var(--color-accent); }
.demo-final .button { width: fit-content; background: var(--color-accent); color: var(--color-accent-ink); }

@media (min-width: 48rem) {
  .product-hero { grid-template-columns: minmax(0, 1fr) minmax(0, .9fr); align-items: end; min-height: 42rem; }
}
@media (max-width: 48rem) {
  .trust-strip__items, .process-rail, .boundary-block, .purchase-block, .demo-stage { grid-template-columns: 1fr; }
  .process-step { border-inline-end: 0; border-block-end: var(--rule-hair) solid var(--color-rule); }
  .process-step:last-child { border-block-end: 0; }
  .pain-row, .feature-row { grid-template-columns: 1fr; gap: var(--space-sm); }
  .demo-link-panel { grid-template-columns: 1fr; }
  .demo-stage { min-height: auto; }
  .table-hint { display: block; }
}
@media (max-width: 36rem) {
  .trust-strip__items { grid-template-columns: 1fr; }
  .product-actions { display: grid; }
  .product-actions .button { width: 100%; white-space: normal; }
  .demo-header { align-items: flex-start; flex-direction: column; }
  .demo-nav { grid-template-columns: 1fr auto 1fr; gap: var(--space-xs); }
  .demo-nav button { padding-inline: var(--space-sm); white-space: normal; }
  .demo-nav__toggle { min-width: 0; }
  .demo-final .button { width: 100%; white-space: normal; }
}
