/* Service module: Terms of Service */
.service-tos { max-width: calc(72ch + 96px); margin-inline: auto; padding: 36px 48px 40px; }
.service-tos__head { display: flex; gap: 18px; align-items: flex-start; padding-bottom: 22px; border-bottom: 1px solid var(--lk-line); }
.service-tos__head h2 { font-size: var(--lk-fs-2xl); margin-bottom: 6px; }
.service-tos__intro { margin: 0; color: var(--lk-text-2); font-size: var(--lk-fs-lg); line-height: 1.6; }
.service-tos__toc { display: flex; flex-wrap: wrap; gap: 8px; padding: 18px 0 6px; }
.service-tos__toc a {
  padding: 5px 12px; border-radius: var(--lk-radius-pill); border: 1px solid var(--lk-line-2);
  background: rgba(176, 140, 255, .05); color: var(--lk-text-2) !important; font-size: 13px; font-weight: 600;
}
.service-tos__toc a:hover { border-color: var(--lk-line-strong); color: #fff !important; }
.service-tos__section { padding-top: 26px; }
.service-tos__section h3 { display: flex; align-items: center; gap: 12px; margin: 0 0 10px; font-size: var(--lk-fs-xl); }
.service-tos__num {
  display: inline-grid; place-items: center; flex-shrink: 0; width: 32px; height: 32px; border-radius: 10px;
  background: var(--lk-grad-brand); color: #fff; font-family: var(--lk-font-display); font-size: 16px; font-weight: 800;
}
.service-tos__section p { margin: 0 0 12px; padding-left: 44px; color: var(--lk-text-2); line-height: 1.75; }
.service-tos__section p:last-child { margin-bottom: 0; }
.service-tos__section a { font-weight: 600; text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(201, 163, 255, .45); }
@media (max-width: 640px) {
  .service-tos { padding: 22px 18px 26px; }
  .service-tos__head { flex-direction: column; gap: 12px; }
  .service-tos__head h2 { font-size: var(--lk-fs-xl); }
  .service-tos__intro { font-size: var(--lk-fs-md); }
  .service-tos__section p { padding-left: 0; }
  .service-tos__section h3 { font-size: var(--lk-fs-lg); }
}
