:root {
  color-scheme: dark;
  --ink: #f7f0dd;
  --muted: #b9bfd0;
  --night: #061329;
  --deep: #0a1c3e;
  --blue: #12316b;
  --gold: #e8c768;
  --gold-light: #fff0a7;
  --glass: rgba(10, 27, 58, .72);
  --line: rgba(232, 199, 104, .24);
  --green: #93d5b0;
  --red: #f3a9a9;
  --serif: Georgia, "Times New Roman", serif;
  --sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  min-width: 320px;
  color: var(--ink);
  background: var(--night);
  font: 1rem/1.65 var(--sans);
}
a { color: inherit; }
img { display: block; max-width: 100%; }
.site-shell { min-height: 100vh; overflow: hidden; background: radial-gradient(circle at 80% 8%, rgba(36, 83, 162, .25), transparent 34%), var(--night); }
.wrap { width: min(1120px, calc(100% - 40px)); margin: 0 auto; }
.nav {
  position: relative; z-index: 10; display: flex; align-items: center; justify-content: space-between;
  min-height: 78px; gap: 24px; border-bottom: 1px solid rgba(255,255,255,.08);
}
.brand { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; font: 600 1.05rem/1.1 var(--serif); }
.brand img { width: 40px; height: 40px; border-radius: 11px; box-shadow: 0 0 28px rgba(232,199,104,.18); }
.links { display: flex; align-items: center; gap: 24px; color: #d9ddec; font-size: .92rem; }
.links a { text-decoration: none; }
.links a:hover, .links a:focus-visible { color: var(--gold-light); }
.hero {
  position: relative; isolation: isolate; min-height: 700px; display: grid; align-items: center;
  background: linear-gradient(90deg, rgba(3,12,28,.98) 0%, rgba(3,12,28,.85) 42%, rgba(3,12,28,.25) 78%, rgba(3,12,28,.5) 100%), url("hero-cosmos.png") center/cover;
}
.hero::after { content: ""; position: absolute; inset: auto 0 0; height: 180px; z-index: -1; background: linear-gradient(transparent, var(--night)); }
.hero-copy { width: min(660px, 90%); padding: 90px 0 130px; }
.eyebrow { margin: 0 0 18px; color: var(--gold); font-size: .78rem; font-weight: 750; letter-spacing: .16em; text-transform: uppercase; }
h1, h2, h3 { font-family: var(--serif); font-weight: 500; line-height: 1.08; text-wrap: balance; }
h1 { margin: 0; font-size: clamp(3rem, 7vw, 6.2rem); letter-spacing: -.04em; }
h2 { margin: 0 0 22px; font-size: clamp(2.2rem, 4.5vw, 4rem); letter-spacing: -.03em; }
h3 { margin: 0 0 10px; font-size: 1.35rem; color: var(--gold-light); }
.hero .lead { max-width: 620px; margin: 26px 0 34px; color: #d4d9e6; font-size: clamp(1.06rem, 1.8vw, 1.28rem); }
.button { display: inline-flex; align-items: center; min-height: 50px; padding: 0 22px; border: 1px solid var(--gold); border-radius: 999px; color: #07142a; background: linear-gradient(100deg, var(--gold), var(--gold-light)); font-weight: 750; text-decoration: none; box-shadow: 0 10px 38px rgba(232,199,104,.16); }
.button.secondary { margin-left: 10px; color: var(--ink); background: rgba(7,20,42,.46); border-color: rgba(255,255,255,.2); box-shadow: none; }
.section { padding: 105px 0; }
.intro-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(40px, 8vw, 110px); align-items: start; }
.intro-grid > p { margin: 7px 0 0; color: #cbd1df; font-size: 1.2rem; }
.feature-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin-top: 52px; }
.card { padding: 28px; border: 1px solid var(--line); border-radius: 22px; background: linear-gradient(150deg, rgba(20,49,99,.7), rgba(7,20,42,.72)); box-shadow: inset 0 1px rgba(255,255,255,.05); }
.card .symbol { display: block; margin-bottom: 28px; color: var(--gold); font: 2rem/1 var(--serif); }
.card p { margin: 0; color: var(--muted); }
.privacy-promise { border-block: 1px solid var(--line); background: rgba(11,34,72,.48); }
.promise-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 38px; }
.promise { padding: 25px 28px; border-radius: 18px; background: rgba(255,255,255,.035); }
.promise strong { display: block; margin-bottom: 4px; color: var(--gold-light); }
.promise p { margin: 0; color: var(--muted); }
.cta { text-align: center; }
.cta p { max-width: 620px; margin: 0 auto 28px; color: var(--muted); }
.footer { padding: 38px 0 48px; border-top: 1px solid rgba(255,255,255,.08); color: #99a2b6; font-size: .88rem; }
.footer-row { display: flex; justify-content: space-between; gap: 24px; }
.footer-links { display: flex; gap: 20px; }
.footer a:hover { color: var(--ink); }

.legal-main { padding: 72px 0 110px; }
.legal-head { max-width: 820px; margin-bottom: 44px; }
.legal-head h1 { font-size: clamp(2.8rem, 6vw, 5.2rem); }
.legal-head .updated { color: var(--muted); }
.summary { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin: 44px 0 64px; }
.summary-panel { padding: 28px; border: 1px solid; border-radius: 22px; }
.summary-panel.process { border-color: rgba(147,213,176,.32); background: rgba(47,108,78,.14); }
.summary-panel.no { border-color: rgba(243,169,169,.28); background: rgba(116,49,59,.12); }
.summary-panel h2 { display: flex; align-items: center; gap: 10px; margin: 0 0 18px; font: 600 1.35rem/1.2 var(--sans); }
.summary-panel ul { margin: 0; padding-left: 1.25rem; color: #d9ddeb; }
.summary-panel li + li { margin-top: 9px; }
.legal-layout { display: grid; grid-template-columns: 230px minmax(0, 720px); gap: 70px; align-items: start; }
.toc { position: sticky; top: 24px; display: grid; gap: 9px; font-size: .88rem; }
.toc span { margin-bottom: 6px; color: var(--gold); font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
.toc a { color: var(--muted); text-decoration: none; }
.toc a:hover { color: var(--ink); }
.legal-copy section { scroll-margin-top: 24px; padding-bottom: 38px; }
.legal-copy h2 { margin-bottom: 15px; font-size: 2rem; }
.legal-copy p, .legal-copy li { color: #c6ccda; }
.legal-copy ul { padding-left: 1.2rem; }
.legal-copy .note { padding: 18px 20px; border-left: 3px solid var(--gold); background: rgba(232,199,104,.08); }
.placeholder { color: var(--gold-light); background: rgba(232,199,104,.12); padding: 1px 5px; border-radius: 4px; }

@media (max-width: 780px) {
  .wrap { width: min(100% - 28px, 680px); }
  .nav { min-height: 68px; }
  .brand span { max-width: 150px; }
  .links a:first-child { display: none; }
  .hero { min-height: 650px; background-position: 62% center; }
  .hero-copy { padding-top: 70px; }
  .intro-grid, .feature-grid, .promise-grid, .summary, .legal-layout { grid-template-columns: 1fr; }
  .feature-grid { margin-top: 34px; }
  .legal-main { padding-top: 48px; }
  .toc { position: static; padding: 20px; border: 1px solid var(--line); border-radius: 16px; }
  .footer-row { flex-direction: column; }
}

@media (max-width: 480px) {
  .links { gap: 12px; font-size: .82rem; }
  .brand img { width: 36px; height: 36px; }
  .button { width: 100%; justify-content: center; }
  .button.secondary { margin: 10px 0 0; }
  .section { padding: 78px 0; }
  .card, .summary-panel { padding: 23px; }
}

@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
