.elementor-22133 .elementor-element.elementor-element-4b7ba17{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:3em;--padding-bottom:3em;--padding-left:1em;--padding-right:1em;}.elementor-22133 .elementor-element.elementor-element-88caffb{text-align:center;}.elementor-22133 .elementor-element.elementor-element-88caffb .elementor-heading-title{font-family:var( --e-global-typography-3aded30-font-family ), Sans-serif;font-size:var( --e-global-typography-3aded30-font-size );font-weight:var( --e-global-typography-3aded30-font-weight );line-height:var( --e-global-typography-3aded30-line-height );}@media(max-width:1024px){.elementor-22133 .elementor-element.elementor-element-88caffb .elementor-heading-title{font-size:var( --e-global-typography-3aded30-font-size );line-height:var( --e-global-typography-3aded30-line-height );}}@media(max-width:767px){.elementor-22133 .elementor-element.elementor-element-88caffb .elementor-heading-title{font-size:var( --e-global-typography-3aded30-font-size );line-height:var( --e-global-typography-3aded30-line-height );}}/* Start custom CSS for html, class: .elementor-element-157532c */:root{
  --brand: #CE0F2E;
  --brand-contrast: #ffffff;
  --muted: #6b7280;
  --row-bg: #ffffff;
  --stripe-bg: #fbfdff;
  --border: rgba(15,23,42,0.06);
}

/* SPORT ICONS */
.heralds-table td[data-label="Sport"] {
  position: relative;
  padding-left: 36px;
}

/* Baseball */
.heralds-table td[data-label="Sport"]:contains("Baseball")::before {
  content: "?";
  position: absolute;
  left: 12px;
  font-size: 20px;
}

/* Basketball */
.heralds-table td[data-label="Sport"]:contains("Basketball")::before {
  content: "??";
  position: absolute;
  left: 12px;
  font-size: 20px;
}

/* Football */
.heralds-table td[data-label="Sport"]:contains("Football")::before {
  content: "??";
  position: absolute;
  left: 12px;
  font-size: 20px;
}

/* Soccer */
.heralds-table td[data-label="Sport"]:contains("Soccer")::before {
  content: "?";
  position: absolute;
  left: 12px;
  font-size: 20px;
}

/* Softball */
.heralds-table td[data-label="Sport"]:contains("Softball")::before {
  content: "??";
  position: absolute;
  left: 12px;
  font-size: 20px;
}

/* Volleyball */
.heralds-table td[data-label="Sport"]:contains("Volleyball")::before {
  content: "??";
  position: absolute;
  left: 12px;
  font-size: 20px;
}

/* Track & Field */
.heralds-table td[data-label="Sport"]:contains("Track")::before {
  content: "?????";
  position: absolute;
  left: 12px;
  font-size: 20px;
}


/* responsive wrapper */
.responsive-table-wrapper {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: 12px;
  padding: 6px;
  background: linear-gradient(180deg, rgba(255,255,255,0.95), rgba(250,250,250,0.95));
}

/* base table */
.heralds-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 8px 26px rgba(16,24,40,0.06);
  background: var(--row-bg);
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial;
}

/* header — brand color + sticky */
.heralds-table thead th {
  text-align: left;
  padding: 14px 16px;
  font-weight: 700;
  color: var(--brand-contrast);
  background: #C80F2E;
  text-transform: uppercase;
  letter-spacing: .02em;
  position: sticky;
  top: 0;
  z-index: 3;
  border-bottom: 3px solid rgba(0,0,0,0.06);
}

/* body cells */
.heralds-table tbody td {
  padding: 12px 10px;
  border-top: 1px solid var(--border);
  vertical-align: middle;
  color: #111827;
  font-size: 0.96rem;
  word-break: break-word;
}

/* avatar/logo */
.heralds-table tbody td img {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  object-fit: cover;
  margin-right: 12px;
  vertical-align: middle;
  display: inline-block;
  box-shadow: 0 6px 14px rgba(16,24,40,0.04);
}

/* first cell (name + avatar) layout */
.heralds-table tbody td:first-child {
  white-space: nowrap;
}

/* zebra stripes + hover */
.heralds-table tbody tr:nth-child(even) { background: var(--stripe-bg); }
.heralds-table tbody tr { transition: transform .12s ease, box-shadow .12s ease, background-color .12s ease; }
.heralds-table tbody tr:hover { transform: translateY(-3px); box-shadow: 0 10px 20px rgba(6,12,20,0.06); }

/* smaller meta text */
.heralds-table .meta { display: block; font-size: 0.83rem; color: var(--muted); margin-top: 4px; }

/* medium screens: allow horizontal scroll */
@media (max-width: 1100px) {
  .heralds-table { min-width: 900px; }
  .responsive-table-wrapper { padding: 8px; }
}

/* mobile: stacked card view using data-label */
@media (max-width: 900px) {
  .heralds-table { border: none; box-shadow: none; }
  .heralds-table thead { display: none; }

  .heralds-table tbody tr {
    display: block;
    margin-bottom: 12px;
    border-radius: 10px;
    border: 1px solid rgba(0,0,0,0.04);
    padding: 12px;
    background: linear-gradient(180deg, #fff, #fbfdff);
  }

  .heralds-table tbody td {
    display: flex;
    align-items: center;
    padding: 8px 6px;
    border-top: none;
    position: relative;
  }

  .heralds-table tbody td::before {
    content: attr(data-label) ":";
    font-weight: 700;
    display: inline-block;
    width: 120px;
    color: var(--muted);
    margin-right: 8px;
    flex: 0 0 120px;
  }

  .heralds-table tbody td.is-avatar::before { display: none; }

  .heralds-table tbody td[data-role="avatar"] { flex: 0 0 72px; padding-right: 10px; }
  .heralds-table tbody td[data-role="content"] { flex: 1 1 auto; display: flex; flex-direction: column; }

  .heralds-table tbody td.hide-mobile { display: none; }

  @media (max-width: 420px) {
    .heralds-table tbody td::before { width: 95px; }
    .heralds-table tbody td[data-role="content"] .line-1 { font-weight: 700; }
    .heralds-table tbody td[data-role="content"] .line-2 { font-size: 0.86rem; color: var(--muted); margin-top:4px; }
  }
}

/* accessibility focus */
.heralds-table tbody tr:focus-within { outline: 3px solid rgba(206,15,46,0.18); outline-offset: 3px; }/* End custom CSS */