/* =====================================================
   Terms of Service — page-specific styles
   Builds on /home/home.css theme tokens.
   ===================================================== */

/* ---- Page hero ---- */
.aw-section-page-hero {
  padding-top: 36px;
  padding-bottom: 8px;
}

/* ---- Narrow reading column ---- */
.aw-tos-container {
  max-width: 860px;
}

/* ---- Content wrapper ---- */
.aw-tos-content {
  padding-top: 40px;
  padding-bottom: 80px;
}

/* ---- Individual section ---- */
.aw-tos-section {
  padding: 2rem 0;
  border-bottom: 1px solid var(--aw-line);
}
.aw-tos-section:last-of-type {
  border-bottom: none;
}

/* ---- Headings ---- */
.aw-tos-section h2 {
  font-family: var(--aw-font-display);
  font-size: clamp(20px, 3vw, 28px);
  font-weight: 600;
  line-height: 1.2;
  color: var(--aw-ink);
  margin: 0 0 1rem;
  letter-spacing: -0.01em;
}
.aw-tos-section h3 {
  font-size: 17px;
  font-weight: 600;
  color: var(--aw-ink-dim);
  margin: 1.75rem 0 0.75rem;
}

/* ---- Body text ---- */
.aw-tos-section p {
  color: var(--aw-ink-dim);
  margin: 0 0 1.1rem;
}
.aw-tos-section strong {
  color: var(--aw-ink);
  font-weight: 600;
}
.aw-tos-section em {
  color: var(--aw-ink-dim);
}

/* ---- Links ---- */
.aw-tos-section a {
  color: var(--aw-accent-soft);
  text-decoration: none;
  border-bottom: 1px solid rgba(217, 112, 120, 0.3);
  transition: color 0.18s ease, border-color 0.18s ease;
}
.aw-tos-section a:hover {
  color: var(--aw-accent);
  border-bottom-color: var(--aw-accent);
}

/* ---- Inline code ---- */
.aw-tos-section code {
  font-size: 0.88em;
  padding: 2px 7px;
  border-radius: 5px;
  background: var(--aw-bg-elev);
  border: 1px solid var(--aw-line-strong);
  color: var(--aw-second);
  font-family: 'Fira Code', 'Cascadia Code', 'Consolas', monospace;
}

/* ---- Lists ---- */
.aw-tos-list {
  list-style: none;
  padding: 0;
  margin: 0 0 1.25rem;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.aw-tos-list li {
  position: relative;
  padding-left: 1.5em;
  color: var(--aw-ink-dim);
}
.aw-tos-list li::before {
  content: "•";
  position: absolute;
  left: 0;
  color: var(--aw-accent);
  font-weight: 700;
}
ol.aw-tos-list {
  counter-reset: tos-counter;
}
ol.aw-tos-list li {
  counter-increment: tos-counter;
}
ol.aw-tos-list li::before {
  content: counter(tos-counter) ".";
  font-size: 0.85em;
  font-weight: 600;
}

/* ---- Last updated ---- */
.aw-tos-last-updated {
  font-size: 0.875rem;
  color: var(--aw-ink-mute);
  margin-top: 2rem;
  padding-top: 1.5rem;
  border-top: 1px solid var(--aw-line);
}
