/* PIT surface: signal grid / acid tech: sharp, mono, no peel twin */
:root {
  --px-card-radius: 4px;
  --px-hover-lift: 0px;
  --px-hover-scale: 1;
}
.px-card,
.reference-card,
.case-card,
.premium-card,
.product-card,
.px-stack-card,
.orbit-card,
.orbital-core {
  border-radius: var(--px-card-radius) !important;
}
.reference-card,
.case-card,
.premium-card,
.product-card,
.px-card {
  border: 1px solid rgba(132, 179, 64, 0.28) !important;
  box-shadow: none !important;
  background: #121826 !important;
  position: relative;
}
.reference-card::before,
.case-card::before,
.premium-card::before,
.px-card::before {
  content: "";
  position: absolute;
  left: 0; top: 0; bottom: 0;
  width: 3px;
  background: var(--acid, #84b340);
}
@media (hover:hover) and (pointer:fine) {
  .reference-card:hover,
  .case-card:hover,
  .premium-card:hover,
  .px-card:hover,
  .px-hover:hover {
    transform: none !important;
    border-color: var(--acid, #84b340) !important;
    box-shadow: 4px 4px 0 rgba(132, 179, 64, 0.35) !important;
  }
}
/* PIT homepage: flatten stack into a grid, not a sticky peel clone */
body.home .px-stack-stage,
#deal-desk .px-stack-stage,
.px-stack .px-stack-stage {
  min-height: 0 !important;
  height: auto !important;
  max-width: 1100px;
}
body.home .px-stack-pin,
.px-stack .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;
}
body.home .px-stack-card,
.px-stack .px-stack-card {
  position: relative !important;
  inset: auto !important;
  transform: none !important;
  opacity: 1 !important;
  min-height: 220px;
}
/* Orbital becomes a compact signal board */
.orbital-stage {
  border-radius: 4px !important;
  background: #0e1220 !important;
  border: 1px solid rgba(132, 179, 64, 0.35) !important;
}
.orbit-card {
  animation: none !important;
  border-radius: 4px !important;
  backdrop-filter: none !important;
}
.orbit-chips span {
  border-radius: 2px !important;
  font-family: "DM Mono", ui-monospace, monospace;
}
.card-media { aspect-ratio: 16 / 9; }
@media (max-width: 720px) {
  body.home .px-stack-pin,
  .px-stack .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;
}


/* Service card hover: keep list readable on dark ink */
.service-card:hover ul,
.service-card:hover li,
.service-card:hover .cap,
.service-card:hover .deliverable {
  color: #c5cce0 !important;
}
.service-card:hover h3 { color: #f2f5ef !important; }
.service-card:hover p { color: #d5dbeb !important; }
