:root { color-scheme: dark; font-family: "Geologica Variable", "Segoe UI", sans-serif; font-variation-settings: "SHRP" 74, "CRSV" 0; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: #f4f2ef; background: #0b0d0a; }
a { color: #d8ff36; text-underline-offset: 3px; }
a:hover { color: #ecffac; }
.legal-header, .legal-footer { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 20px max(24px, calc((100vw - 1080px)/2)); border-bottom: 1px solid #2e3526; }
.legal-header > a:last-child { white-space: nowrap; font-size: 13px; font-weight: 700; text-decoration: none; }
.legal-brand { display: inline-flex; align-items: center; gap: 10px; color: #fff; font-size: 16px; font-weight: 750; text-decoration: none; }
.legal-brand img { display: block; }
.legal-page { width: min(100% - 48px, 760px); margin: 0 auto; padding: 70px 0 100px; }
.legal-kicker { margin: 0 0 16px; color: #d8ff36; font-family: "Azeret Mono Variable", monospace; font-size: 11px; font-weight: 700; letter-spacing: .12em; }
h1, h2 { font-family: "Faculty Glyphic", Georgia, serif; font-weight: 400; }
h1 { margin: 0; font-size: clamp(42px, 7vw, 67px); line-height: 1.08; letter-spacing: -.035em; }
.legal-date { margin: 18px 0 0; color: #a0aa96; font-size: 13px; }
.legal-lead { margin: 34px 0 40px; color: #d5dccf; font-size: 18px; line-height: 1.7; }
section { padding: 27px 0 31px; border-top: 1px solid #2e3526; }
section h2, .legal-contact h2 { margin: 0 0 13px; font-size: clamp(24px, 3vw, 29px); line-height: 1.25; }
section p, .legal-contact p { margin: 0 0 14px; color: #bfc8b8; font-size: 15px; line-height: 1.8; }
section p:last-child, .legal-contact p:last-child { margin-bottom: 0; }
.legal-contact { margin-top: 17px; padding: 27px; border: 1px solid #465631; border-radius: 12px; background: #151b11; }
.legal-footer { border-top: 1px solid #2e3526; border-bottom: 0; color: #a0aa96; font-size: 12px; }
.legal-footer a:first-child { color: #f4f2ef; text-decoration: none; font-weight: 700; }
.legal-footer nav { display: flex; flex-wrap: wrap; gap: 18px; }
.legal-footer nav a { font-weight: 500; }
@media (max-width: 620px) { .legal-page { width: min(100% - 36px, 760px); padding-top: 50px; } .legal-lead { font-size: 16px; } .legal-header, .legal-footer { padding-inline: 18px; } .legal-footer { flex-wrap: wrap; } }
