/* Spartan — unified product description look (2026-07-20).
   Product descriptions are copy-pasted from many different sources over the years
   (manufacturer spec sheets, WooCommerce exports, other templates) with inconsistent
   fonts, fixed pixel widths, and stray Bootstrap-3-era grid classes with no .row
   wrapper (so they never actually laid out side-by-side, just wasted whitespace).
   This overrides all of that to a single consistent, full-width, mobile-safe look,
   regardless of whatever markup/classes a given product's stored description carries. */

/* Force every element inside the description to use the theme's own body font,
   overriding any inline font-family left over from a pasted source. */
.product__description,
.product__description * {
  font-family: var(--bs-body-font-family, inherit) !important;
}

/* Neutralize legacy Bootstrap-3/4 grid remnants (col-md-*, col-sm-*, offsets) that
   were pasted without a `.row` flex wrapper — stack everything as simple full-width
   blocks instead of the stray ~42% width + wasted whitespace they render as today. */
.product__description [class*="col-"] {
  width: 100% !important;
  max-width: 100% !important;
  flex: none !important;
  float: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* One unified table style, regardless of the original source's own table class
   (.specifications, table-rounded, WooCommerce/dcf/styled-components leftovers, etc.) */
.product__description table {
  width: 100% !important;
  max-width: 100% !important;
  table-layout: fixed; /* deterministic column widths — a table can never force page overflow */
  border-collapse: collapse;
  margin: 0 0 20px;
  font-size: 14px;
  line-height: 1.5;
}
.product__description table th,
.product__description table td {
  border: 1px solid #e2e5e8;
  padding: 8px 12px;
  text-align: left;
  vertical-align: top;
  word-wrap: break-word;
  overflow-wrap: break-word;
}
.product__description table th {
  background: #f3f5f7;
  font-weight: 600;
  width: 38%;
}
.product__description table tr:nth-child(even) td,
.product__description table tr:nth-child(even) th {
  background: #fafbfc;
}

/* Two spec tables side by side (e.g. specifications-first / specifications-second)
   should simply stack, full width, one after another — not attempt a broken 2-column
   split. A small top margin on the second one keeps them visually separated. */
.product__description table + table {
  margin-top: -4px;
}
