/* assets/css/blocks/comparison-table.css */
.comparison-table { background: #fff; color: #111; font-family: "MontserratCustom", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; }
.comparison-table__wrap { max-width: 1200px; margin: 0 auto; padding: 48px 20px; box-sizing: border-box; }
.comparison-table__title { text-align: center; margin: 0 0 28px; font-weight: 800; font-size: 28px; }

/* outer box with subtle radius and border like in макет */
.comparison-table__box {
  background: #fff;
  border: 1px solid rgba(0,0,0,0.06);
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 6px 18px rgba(0,0,0,0.04);
}

/* table */
.ct-table { width: 100%; border-collapse: collapse; table-layout: fixed; }
.ct-table thead th {
  text-align: left;
  vertical-align: middle;
  font-weight: 700;
  padding: 20px 18px;
  border-bottom: 1px solid rgba(0,0,0,0.06);
  background: #fff;
  font-size: 15px;
}
.ct-table thead th .ct-sub { display:block; font-weight:600; font-size:12px; color:#666; margin-top:6px; }

/* === Центрируем заголовки всех колонок, кроме первой (Критерий) ) === */
.ct-table thead th:not(.ct-col-criteria) {
  text-align: center;
}
.ct-table thead th:not(.ct-col-criteria) .ct-sub {
  text-align: center;
}

/* columns sizing */
.ct-col-criteria { width: 28%; } /* criteria column wider-ish */
.ct-table tbody td { padding: 20px 18px; border-bottom: 1px solid rgba(0,0,0,0.04); vertical-align: middle; font-size: 15px; color:#333; }

/* criteria cell style */
.ct-criteria { font-weight:600; color:#111; }

/* value cell */
.ct-val {
  text-align: center;
  font-weight: 700;
  font-size: 18px;
  color: #111; /* keep black, no color icons */
}

/* last-row border removal */
.ct-table tbody tr:last-child td { border-bottom: 0; }

/* alternate row light background (very subtle) */
.ct-table tbody tr:nth-child(odd) { background: rgba(0,0,0,0.00); }

/* responsive: allow horizontal scroll on narrow screens */
@media (max-width: 920px) {
  .comparison-table__wrap { padding: 28px 12px; }
  .comparison-table__box { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .ct-table { min-width: 900px; } /* let it scroll horizontally */
  .ct-table thead th, .ct-table tbody td { padding: 14px 12px; font-size: 14px; }
  .comparison-table__title { font-size: 20px; }

  /* ensure centered headers persist on mobile */
  .ct-table thead th:not(.ct-col-criteria) {
    text-align: center;
  }
  .ct-table thead th:not(.ct-col-criteria) .ct-sub {
    text-align: center;
  }
}

/* small polish */
.ct-table thead th:first-child,
.ct-table tbody td:first-child { padding-left: 26px; }
.ct-table thead th:last-child,
.ct-table tbody td:last-child { padding-right: 26px; }

/* focus outline for accessibility if keyboard navigates into table */
.comparison-table__box:focus-within { box-shadow: 0 8px 26px rgba(0,0,0,0.06); }
