﻿body.legal-page {
  overflow-x: hidden;
  --legal-line-color: rgba(121, 194, 241, 0.62);
}

html:not(.dark) body.legal-page {
  --legal-line-color: rgba(54, 129, 179, 0.55);
}

body.legal-page .legal-main {
  padding-top: calc(var(--site-header-height) + clamp(1.4rem, 4vh, 2.2rem));
  padding-bottom: clamp(2.5rem, 6vh, 4.2rem);
  min-height: calc(100svh - var(--site-footer-height));
}

body.legal-page .legal-section-nav {
  max-width: min(1000px, 100%);
  margin: 0 auto clamp(1.2rem, 3vh, 1.8rem);
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
}

body.legal-page .legal-section-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  padding: 0.52rem 0.9rem;
  border-radius: 999px;
  border: 1px solid rgba(126, 212, 255, 0.28);
  background: rgba(5, 33, 56, 0.56);
  color: rgba(215, 235, 255, 0.95);
  font-family: "Azeri", "Azeret Mono", monospace;
  font-size: 0.72rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  transition: border-color 180ms ease, background-color 180ms ease, color 180ms ease, transform 180ms ease;
}

body.legal-page .legal-section-link:hover {
  transform: translateY(-1px);
  border-color: rgba(126, 212, 255, 0.5);
  background: rgba(8, 44, 74, 0.72);
}

html:not(.dark) body.legal-page .legal-section-link {
  background: rgba(227, 240, 250, 0.92);
  border-color: rgba(38, 124, 177, 0.26);
  color: #0f456d;
}

html:not(.dark) body.legal-page .legal-section-link:hover {
  border-color: rgba(38, 124, 177, 0.48);
  background: rgba(213, 232, 245, 0.96);
}

body.legal-page .legal-stack {
  max-width: min(1000px, 100%);
  margin: 0 auto;
}

body.legal-page .legal-document {
  max-width: min(1000px, 100%);
  margin: 0 auto;
  position: relative;
}

body.legal-page .legal-document-section {
  scroll-margin-top: calc(var(--site-header-height) + 1.1rem);
}

body.legal-page .legal-document-section + .legal-document-section {
  margin-top: clamp(1.8rem, 4.2vh, 2.8rem);
  padding-top: clamp(1.7rem, 3.8vh, 2.4rem);
  border-top: 1px solid var(--legal-line-color);
}

body.legal-page .legal-document-head {
  margin-bottom: clamp(1.2rem, 2.8vh, 1.8rem);
}

body.legal-page .legal-eyebrow {
  margin: 0 0 0.65rem;
  font-family: "Azeri", "Azeret Mono", monospace;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  font-size: clamp(0.66rem, 0.94vw, 0.76rem);
  color: rgba(137, 201, 245, 0.92);
}

html:not(.dark) body.legal-page .legal-eyebrow {
  color: #1e6f9e;
}

body.legal-page .legal-document-title {
  margin: 0;
  font-family: "Space Grotesk", "Inter", sans-serif;
  font-weight: 800;
  letter-spacing: -0.03em;
  line-height: 0.96;
  font-size: clamp(2rem, 6vw, 4rem);
  color: #eaf6ff;
}

html:not(.dark) body.legal-page .legal-document-title {
  color: #0d3f63;
}

body.legal-page .legal-document-subtitle {
  margin: clamp(0.65rem, 1.5vh, 0.95rem) 0 0;
  font-size: clamp(1rem, 1.65vw, 1.2rem);
  line-height: 1.7;
  color: rgba(183, 210, 235, 0.95);
  max-width: 76ch;
}

html:not(.dark) body.legal-page .legal-document-subtitle {
  color: #2b5878;
}

body.legal-page .legal-divider {
  height: 1px;
  margin: 0 0 clamp(0.9rem, 2.4vh, 1.4rem);
  background: var(--legal-line-color);
}

body.legal-page .legal-block {
  position: relative;
  padding-left: clamp(0.95rem, 1.9vw, 1.35rem);
  margin-bottom: clamp(0.9rem, 2.3vh, 1.5rem);
}

body.legal-page .legal-block::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.2rem;
  bottom: 0.2rem;
  width: 2px;
  border-radius: 999px;
  background: var(--legal-line-color);
}

body.legal-page .legal-block h2 {
  margin: 0 0 0.4rem;
  font-family: "Space Grotesk", "Inter", sans-serif;
  font-size: clamp(1.08rem, 1.65vw, 1.28rem);
  line-height: 1.28;
  letter-spacing: 0.01em;
  color: #f1f9ff;
}

html:not(.dark) body.legal-page .legal-block h2 {
  color: #0f456d;
}

body.legal-page .legal-block p {
  margin: 0.2rem 0;
  color: rgba(197, 220, 242, 0.96);
  line-height: 1.72;
  max-width: 92ch;
}

html:not(.dark) body.legal-page .legal-block p {
  color: #2c5979;
}

body.legal-page .legal-block strong {
  color: #ecf8ff;
}

html:not(.dark) body.legal-page .legal-block strong {
  color: #0f3f62;
}

body.legal-page #main-footer {
  margin-top: 0;
}

body.legal-page [data-reveal],
body.legal-page [data-reveal].is-visible {
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  transition: none !important;
  transition-delay: 0ms !important;
  animation: none !important;
  will-change: auto !important;
}

@media (max-width: 767px) {
  body.legal-page .legal-main {
    padding-top: calc(var(--site-header-height) + 1.05rem);
  }

  body.legal-page .legal-section-nav {
    gap: 0.45rem;
    margin-bottom: 1rem;
  }

  body.legal-page .legal-section-link {
    flex: 1 1 calc(50% - 0.45rem);
    min-width: 8.2rem;
    padding: 0.48rem 0.72rem;
    font-size: 0.66rem;
    letter-spacing: 0.08em;
  }

  body.legal-page .legal-document-section + .legal-document-section {
    margin-top: 1.55rem;
    padding-top: 1.35rem;
  }

  body.legal-page .legal-document-title {
    line-height: 1.02;
  }

  body.legal-page .legal-document-subtitle,
  body.legal-page .legal-block p {
    line-height: 1.64;
  }
}

