:root {
      --bg: #05040a;
      --surface: rgba(12, 10, 22, 0.82);
      --fg: #f2f3f7;
      --muted: rgba(242, 243, 247, 0.78);
      --accent: #ffd36b;
      --border: rgba(255, 255, 255, 0.1);
      --wrap: min(760px, 90vw);
    }

    * {
      box-sizing: border-box;
    }

    body.page-legal {
      margin: 0;
      min-height: 100vh;
      font-family: "Inter", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, sans-serif;
      background: radial-gradient(circle at top left, rgba(255, 211, 107, 0.12), transparent 55%), var(--bg);
      color: var(--fg);
      -webkit-font-smoothing: antialiased;
    }

    body.page-terms {
      background: radial-gradient(circle at bottom right, rgba(255, 211, 107, 0.12), transparent 55%), var(--bg);
    }

    a {
      color: var(--accent);
      text-decoration: none;
    }

    a:hover {
      text-decoration: underline;
    }

    .page {
      display: flex;
      flex-direction: column;
      min-height: 100vh;
    }

    .wrap {
      width: 100%;
      max-width: var(--wrap);
      margin: 0 auto;
      padding: 0 24px;
    }

    header {
      padding: 32px 0 24px;
    }

    .header-nav {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 16px;
    }

    .header-nav__logo {
      display: inline-flex;
      align-items: center;
      gap: 12px;
      padding: 10px 16px;
      background: rgba(0, 0, 0, 0.35);
      border-radius: 999px;
      border: 1px solid rgba(255, 255, 255, 0.14);
      backdrop-filter: blur(16px);
    }

    .header-nav__logo img {
      width: clamp(140px, 24vw, 200px);
      height: auto;
      filter: brightness(0) invert(1);
    }

    .header-nav__link {
      font-size: 15px;
      letter-spacing: 0.08em;
      text-transform: uppercase;
      color: rgba(255, 255, 255, 0.64);
    }

    main {
      flex: 1;
      padding: 32px 0 64px;
    }

    .content-card {
      background: var(--surface);
      border-radius: 24px;
      border: 1px solid var(--border);
      padding: clamp(32px, 6vw, 48px);
      box-shadow: 0 32px 80px rgba(0, 0, 0, 0.5);
      display: flex;
      flex-direction: column;
      gap: 28px;
    }

    h1 {
      font-size: clamp(32px, 6vw, 44px);
      margin: 0;
      letter-spacing: 0.04em;
    }

    h2 {
      font-size: clamp(20px, 3vw, 26px);
      margin: 32px 0 12px;
      letter-spacing: 0.04em;
      text-transform: uppercase;
    }

    p,
    li {
      font-size: 16px;
      line-height: 1.7;
      color: var(--muted);
      margin: 0 0 16px;
    }

    ul {
      margin: 0 0 16px;
      padding-left: 22px;
    }

    .contact-block {
      padding: 24px;
      border-radius: 18px;
      background: rgba(5, 4, 12, 0.86);
      border: 1px solid rgba(255, 255, 255, 0.12);
      color: rgba(255, 255, 255, 0.82);
    }

    footer {
      padding: 24px 0 48px;
      text-align: center;
      font-size: 13px;
      color: rgba(255, 255, 255, 0.48);
    }
