@import url("../../css/ocsi.css");

.tc-page {
  width: min(calc(100% - 2rem), var(--container));
  margin: 0 auto;
  padding: var(--space-5) 0 var(--space-6);
}

.tc-page__intro {
  display: grid;
  gap: var(--space-2);
  margin-bottom: var(--space-4);
}

.tc-page__kicker {
  margin: 0;
  color: var(--color-accent);
  font-size: 0.76rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.tc-page__intro h1 {
  max-width: 12ch;
  margin: 0;
  color: var(--color-primary);
  font-size: clamp(2.15rem, 10vw, 4rem);
  line-height: 0.98;
}

.tc-page__intro p:not(.tc-page__kicker) {
  max-width: 42rem;
  margin: 0;
  color: var(--color-muted);
  font-size: 1.08rem;
}

.tc-panel,
.tc-page > div {
  margin-bottom: var(--space-4);
  overflow-x: auto;
  border: 1px solid var(--color-line);
  border-radius: var(--radius);
  background: var(--color-surface);
  box-shadow: 0 8px 24px rgba(16, 33, 43, 0.06);
}

.tc-page table {
  width: 100%;
  min-width: 46rem;
  border: 0;
  border-collapse: collapse;
  color: var(--color-ink);
}

.tc-page td,
.tc-page th {
  padding: 0.8rem 0.95rem;
  border: 0;
  border-bottom: 1px solid var(--color-line);
  vertical-align: middle;
}

.tc-page tr:first-child td,
.tc-page .notprint td {
  background: var(--color-primary);
  color: #ffffff;
  font-size: 0.78rem;
  font-weight: 850;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.tc-page tr:first-child a,
.tc-page .notprint a {
  color: #ffffff;
}

.tc-page .display_row td {
  background: var(--color-surface) !important;
}

.tc-page .display_row:nth-child(even) td {
  background: var(--color-surface-2) !important;
}

.tc-page a {
  color: var(--color-accent);
  font-weight: 800;
}

.tc-page a:hover {
  color: var(--color-accent-2);
}

.misc_items {
  font-size: 0.95rem;
}

#newsletter {
  display: grid;
  gap: var(--space-3);
  width: min(calc(100% - 2rem), var(--container));
  margin: var(--space-4) auto 0;
  padding: var(--space-4);
  border-radius: var(--radius);
  background: var(--color-primary);
  color: #ffffff;
}

#newsletter h1 {
  margin: 0;
  color: #ffffff;
  font-size: 1.3rem;
  line-height: 1.2;
}

#newsletter form {
  display: grid;
  gap: var(--space-2);
  margin: 0;
}

#newsletter input[type="email"] {
  width: 100%;
  min-height: 3rem;
  border: 1px solid var(--color-line);
  border-radius: var(--radius-sm);
  background: var(--color-surface);
  color: var(--color-ink);
  padding: 0.78rem 0.9rem;
}

#newsletter .button_1,
#newsletter button {
  min-height: 3rem !important;
  border: 0 !important;
  border-radius: var(--radius-sm);
  background: var(--color-accent) !important;
  color: #ffffff !important;
  padding: 0.82rem 1.2rem !important;
  cursor: pointer;
  font-weight: 850;
}

#newsletter form:first-of-type {
  display: none;
}

@media (min-width: 48rem) {
  #newsletter {
    grid-template-columns: 1fr auto;
    align-items: center;
  }

  #newsletter form {
    grid-template-columns: 15rem auto;
  }
}
