/* Base */
.rw-table table{
  width:100%;
  border-collapse:collapse;
}
.rw-table th,
.rw-table td{
  border:1px solid #e5e7eb;
  padding:12px;
  vertical-align:top;
}
.rw-table thead th{
  background:#f5f5f7;
  font-weight:600;
}
.rw-table--striped tbody tr:nth-child(odd){
  background:#fafafa;
}

/* Responsive stack (mobile) */
@media (max-width: 768px){
  .rw-table.rw-table--stack table,
  .rw-table.rw-table--stack thead,
  .rw-table.rw-table--stack tbody,
  .rw-table.rw-table--stack th,
  .rw-table.rw-table--stack td,
  .rw-table.rw-table--stack tr{
    display:block;
    width:100%;
  }
  .rw-table.rw-table--stack thead{
    /* hide thead but keep for a11y */
    position:absolute;
    left:-9999px; top:-9999px;
  }
  .rw-table.rw-table--stack tr{
    margin-bottom:12px;
    border:1px solid #e5e7eb;
    border-radius:8px;
    overflow:hidden;
  }
  .rw-table.rw-table--stack td{
    border:none;
    border-bottom:1px solid #e5e7eb;
    display:flex;
    gap:8px;
    padding:10px 12px;
  }
  .rw-table.rw-table--stack td:last-child{
    border-bottom:none;
  }
  .rw-table.rw-table--stack td::before{
    content:attr(data-label);
    font-weight:600;
    min-width:120px;
  }
}

.rw-table--fixed table { table-layout: fixed; }
.rw-table th, .rw-table td { word-break: break-word; }

/* Inherit site/global typography */
/* Force RW Table to use site font */
.rw-table,
.rw-table table,
.rw-table th,
.rw-table td {
  font-family: "Montserrat", Sans-serif;
}

/* Bold header cells */
.rw-table thead th { 
  font-weight: 700; /* stronger than 600 */
}

/* Bold first column cells */
.rw-table tbody td:first-child {
  font-weight: 700;
}

/* (optional) keep mobile labels readable without over-boldening everything */
@media (max-width: 768px){
  .rw-table.rw-table--stack td::before {
    font-weight: 600; /* label on stacked rows */
  }
}
/* Uniform cell padding for the whole table */
.rw-table th,
.rw-table td {
  padding: 1em !important;
}

/* Stacked (mobile) layout */
@media (max-width: 768px){
  .rw-table.rw-table--stack td {
    padding: 1em !important;
  }
}