/* ------------------------------------------------------------------
   STX Product Description — full-width "window" under the hero.
   Dark surface, comfortable reading measure, scoped to .stx-pdp--desc.
   ------------------------------------------------------------------ */
.stx-pdp--desc { color: var(--stx-ink-200, #d4d4d8); }

.stx-desc {
  border: 1px solid var(--stx-ink-800, #2a2a30);
  background: var(--stx-ink-1000, #0a0a0b);
  border-radius: var(--stx-r-4, 18px);
  padding: 32px clamp(20px, 4vw, 44px);
}

.stx-desc__title {
  margin: 0 0 16px;
  font-family: var(--stx-font-display, inherit);
  font-size: clamp(20px, 2.4vw, 26px);
  font-weight: var(--stx-fw-semi, 600);
  letter-spacing: var(--stx-ls-tight, -0.01em);
  color: var(--stx-ink-50, #f5f5f7);
}

.stx-desc__content {
  max-width: 78ch;
  font-size: 15.5px;
  line-height: 1.7;
  color: var(--stx-ink-200, #d4d4d8);
  /* break long words / URLs so prose never pushes the page sideways */
  overflow-wrap: break-word;
  word-wrap: break-word;
}
.stx-desc__content > :first-child { margin-top: 0; }
.stx-desc__content > :last-child { margin-bottom: 0; }
.stx-desc__content p { margin: 0 0 1em; }
.stx-desc__content h2,
.stx-desc__content h3,
.stx-desc__content h4 { color: var(--stx-ink-50, #f5f5f7); margin: 1.4em 0 .5em; line-height: 1.25; }
.stx-desc__content a { color: var(--stx-ink-50, #f5f5f7); text-decoration: underline; text-underline-offset: 2px; text-decoration-color: var(--stx-ink-500, #6b6b73); }
.stx-desc__content a:hover { text-decoration-color: currentColor; }
.stx-desc__content ul,
.stx-desc__content ol { margin: 0 0 1em; padding-left: 1.25em; }
.stx-desc__content li { margin: 0 0 .4em; }
.stx-desc__content img { border-radius: var(--stx-r-2, 10px); height: auto; }
.stx-desc__content strong,
.stx-desc__content b { color: var(--stx-ink-50, #f5f5f7); }

/* Wide tables scroll horizontally inside this window instead of widening the
   page. The wrapper is the scroll viewport; the table keeps its natural width. */
.stx-table-wrap {
  max-width: 100%;
  margin: 0 0 1.2em;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-x: contain;
}

/* Tables inside the description — neutralize theme/Woo light defaults so the
   first column (header cells) doesn't render on a white background. */
.stx-desc__content table {
  width: 100%; border-collapse: collapse; margin: 0 0 1.2em;
  font-size: 14.5px; background: transparent;
}
/* Inside the scroll wrapper, let the table grow past the viewport (so it
   scrolls) rather than cramming columns; min-width keeps it filling when it fits. */
.stx-table-wrap > table {
  width: auto;
  min-width: 100%;
  margin: 0;
}
.stx-desc__content th,
.stx-desc__content td {
  padding: 10px 14px; text-align: left; vertical-align: top;
  border: 1px solid var(--stx-ink-800, #2a2a30);
  background: transparent !important;
  color: var(--stx-ink-200, #d4d4d8);
}
.stx-desc__content th {
  color: var(--stx-ink-50, #f5f5f7); font-weight: var(--stx-fw-semi, 600);
  background: rgba(255, 255, 255, .035) !important;
}
.stx-desc__content tr:nth-child(even) td { background: rgba(255, 255, 255, .02) !important; }

@media (max-width: 767px) {
  .stx-desc { padding: 22px 18px; border-radius: 14px; }
  .stx-desc__content { font-size: 15px; }
}
