/* Veludurthi Technologies legal/policy pages (Privacy, Terms, Cookies, Refund, Data Deletion,
   Acceptable Use). Plain long-form prose layout — reuses the design system's
   type tokens but deliberately skips the card/scene decoration used on
   marketing pages, since these are reference documents, not sales pages. */

.legal-hero { padding: 150px 40px 60px; border-bottom: 1px solid var(--page-divider); }
.legal-hero .wrap { max-width: 860px; }
.legal-meta { margin: 18px 0 0; font-size: 13px; color: var(--page-text-dim-55); }
@media (max-width: 640px) { .legal-hero { padding: 120px 24px 48px; } }

.legal-body { padding: 64px 40px 120px; }
.legal-body .wrap { max-width: 860px; }

.legal-toc {
  display: grid; gap: 8px; padding: 24px 28px; margin-bottom: 56px;
  border: 1px solid var(--page-divider); border-radius: var(--radius-lg,14px);
  background: var(--page-card-bg);
}
.legal-toc p { margin: 0 0 8px; }
.legal-toc ol { margin: 0; padding: 0 0 0 20px; columns: 2; column-gap: 32px; font-size: 14px; line-height: 1.9; }
.legal-toc li { color: var(--page-text-dim-68); }
.legal-toc a { color: inherit; }
.legal-toc a:hover { color: var(--page-accent-light); }
@media (max-width: 640px) { .legal-toc ol { columns: 1; } }

.legal-section { padding-top: 44px; margin-top: 44px; border-top: 1px solid var(--page-divider-soft); scroll-margin-top: 90px; }
.legal-section:first-of-type { padding-top: 0; margin-top: 0; border-top: 0; }
.legal-section h2 { margin: 0 0 18px; font-size: clamp(20px,2.4vw,26px); font-weight: 500; letter-spacing: -.01em; line-height: 1.25; }
.legal-section h3 { margin: 28px 0 12px; font-size: 16px; font-weight: 600; letter-spacing: -.005em; }
.legal-section p { margin: 0 0 16px; font-size: 15px; line-height: 1.75; color: var(--page-text-dim-72); }
.legal-section p:last-child { margin-bottom: 0; }
.legal-section ul, .legal-section ol.legal-list {
  margin: 0 0 16px; padding-left: 22px; font-size: 15px; line-height: 1.75; color: var(--page-text-dim-72);
  display: grid; gap: 8px;
}
.legal-section strong { color: var(--page-text); font-weight: 600; }
.legal-section a { text-decoration: underline; text-underline-offset: 3px; }

.legal-table-wrap { overflow-x: auto; margin: 0 0 20px; border: 1px solid var(--page-divider); border-radius: var(--radius-md,8px); }
.legal-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.legal-table th, .legal-table td { padding: 12px 16px; text-align: left; border-bottom: 1px solid var(--page-divider-soft); vertical-align: top; }
.legal-table th { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--page-text-dim-50); background: var(--page-bg-alt); }
.legal-table tr:last-child td { border-bottom: 0; }

.legal-callout {
  margin: 0 0 20px; padding: 18px 22px; border-radius: var(--radius-md,8px);
  border: 1px solid var(--page-divider-strong); background: color-mix(in srgb, var(--page-accent) 6%, transparent);
  font-size: 14px; line-height: 1.7; color: var(--page-text-dim-75);
}
.legal-callout strong { color: var(--page-text); }

.legal-placeholder { color: var(--page-accent-light); font-weight: 600; }

.legal-disclaimer {
  margin-top: 56px; padding-top: 28px; border-top: 1px solid var(--page-divider);
  font-size: 13px; line-height: 1.7; color: var(--page-text-dim-50);
}
