/* PSW surface: dossier / editorial CRE: soft gold, restrained */
:root {
  --px-card-radius: 10px;
  --px-hover-lift: 4px;
  --px-hover-scale: 1;
}
.px-card,
.reference-card,
.case-card,
.premium-card,
.px-stack-card,
.orbit-card,
.orbital-core {
  border-radius: var(--px-card-radius) !important;
}
.px-hover:hover,
.reference-card:hover,
.case-card:hover,
.premium-card:hover {
  transform: translateY(calc(var(--px-hover-lift) * -1)) !important;
  box-shadow: 0 14px 32px rgba(1, 20, 37, 0.18) !important;
}
.orbit-card {
  animation: none !important;
  backdrop-filter: none !important;
  background: #0a1f33 !important;
  border-color: color-mix(in srgb, var(--gold, #c89f5d) 40%, #2a3f55) !important;
}
.orbital-stage {
  border-radius: 12px !important;
  border-style: solid !important;
  box-shadow: inset 0 0 0 1px rgba(200, 159, 93, 0.12), 0 18px 40px rgba(0,0,0,.28) !important;
}
.px-stack-card {
  border-left: 3px solid var(--gold, #c89f5d) !important;
}
.card-media,
.case-card .card-media {
  aspect-ratio: 5 / 3;
  border-bottom: 1px solid rgba(200, 159, 93, 0.25);
}

/* PSW brief corridor: flat grid, not sticky peel */
.px-stack-grid .px-stack-stage { min-height: 0 !important; height: auto !important; max-width: 1100px; margin: 0 auto; }
.px-stack-grid .px-stack-pin {
  position: static !important; height: auto !important;
  display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem; perspective: none !important;
}
.px-stack-grid .px-stack-card {
  position: relative !important; inset: auto !important;
  transform: none !important; opacity: 1 !important; min-height: 210px;
}
@media (max-width: 720px) {
  .px-stack-grid .px-stack-pin { grid-template-columns: 1fr; }
}


/* Section indices (01 / 01a) stay; never fade them out */
.kicker, .section-kicker, .eyebrow, .px-stack-index, .panel-index, .signal-chip span, .framework-tile-visual span {
  opacity: 1 !important;
}


/* === SHIP VISIBILITY LOCK ===
   Text must stay readable even if motion JS fails. Indices stay sharp. */
.rv, .rv-left, .rv-right, .rv-scale, .rv-clip, .reveal, .fade-pre,
.word-reveal .word, .text-reveal > *,
main h2, .px-stack-head, .orbit-card, .orbital-core, .px-stack-card,
.kicker, .section-kicker, .eyebrow, .px-stack-index, .panel-index,
.signal-chip, .signal-chip span, .signal-chip strong,
.framework-tile, .framework-tile strong, .framework-tile-visual span,
.service-card, .service-card h3, .service-card p, .service-card ul, .service-card li,
.reference-card, .premium-card, .content-card, .case-card {
  opacity: 1 !important;
  visibility: visible !important;
}
.rv, .rv-left, .rv-right, .rv-scale, .fade-pre, .word-reveal .word {
  transform: none !important;
  filter: none !important;
}
.word-reveal .word { display: inline !important; }
h1 em, h2 em, h3 em, .section-title em, .panel-big em {
  -webkit-text-fill-color: currentColor !important;
  background: none !important;
  color: inherit;
}
/* Section indices: polished, always readable, never washed */
.kicker, .section-kicker, .eyebrow {
  opacity: 1 !important;
  letter-spacing: 0.14em;
  font-weight: 600;
}


/* Index language at 100: one quiet register, high contrast */
.kicker, .section-kicker, .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  opacity: 1 !important;
  color: var(--px-accent, var(--gold, var(--acid, var(--ember-bright, #c89f5d)))) !important;
  font-size: 0.72rem;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}
.px-stack-index, .panel-index, .framework-tile-visual span, .signal-chip span {
  opacity: 1 !important;
  color: var(--px-accent, var(--gold, var(--acid, #c89f5d))) !important;
  font-variant-numeric: tabular-nums;
}
