:root { --ink: #030303; --paper: #c9c4bc; --muted: rgba(201, 196, 188, .58); --line: rgba(198, 193, 183, .18); }
* { box-sizing: border-box; }
html { background: var(--ink); }
body { background: var(--ink); color: var(--paper); font-family: "DM Sans", Arial, sans-serif; margin: 0; }
.legal-page { background: radial-gradient(ellipse 42% 42% at 72% 13%, rgba(44, 42, 37, .22), transparent 73%), linear-gradient(108deg, #020202 0%, #060605 58%, #0a0908 100%); isolation: isolate; min-height: 100svh; overflow: hidden; padding: 30px clamp(20px, 5vw, 72px) 42px; position: relative; }
.legal-page::before { background: linear-gradient(118deg, transparent 34%, rgba(224, 214, 195, .05) 47%, rgba(224, 214, 195, .015) 59%, transparent 72%); content: ""; filter: blur(28px); height: 84vh; pointer-events: none; position: absolute; right: -12vw; top: -30vh; transform: rotate(38deg); width: 42vw; z-index: -1; }
.legal-header { align-items: center; display: flex; justify-content: space-between; margin: 0 auto; max-width: 940px; }
.legal-brand { align-items: center; color: var(--paper); display: inline-flex; font-size: 10px; gap: 10px; letter-spacing: .35em; text-decoration: none; text-transform: uppercase; }
.legal-brand img { display: block; height: 30px; object-fit: contain; width: 32px; }
.back-home { color: rgba(201, 196, 188, .65); font-size: 9px; letter-spacing: .25em; text-decoration: none; text-transform: uppercase; }
.back-home:hover, .back-home:focus-visible, .legal-footer a:hover, .legal-footer a:focus-visible { color: var(--paper); outline: none; }
.legal-content { margin: clamp(58px, 11vh, 112px) auto 58px; max-width: 700px; }
.legal-content h1 { color: var(--paper); font-family: "Libre Bodoni", Didot, "Bodoni MT", "Bodoni 72", serif; font-size: clamp(42px, 6vw, 62px); font-weight: 400; letter-spacing: -.01em; line-height: 1; margin: 0; text-transform: uppercase; }
.legal-updated { color: rgba(201, 196, 188, .5); font-size: 10px; letter-spacing: .28em; margin: 15px 0 48px; text-transform: uppercase; }
.legal-copy { border-top: 1px solid var(--line); padding-top: 30px; }
.legal-copy p, .legal-copy li { color: var(--muted); font-size: 14px; font-weight: 400; line-height: 1.75; }
.legal-copy p { margin: 0 0 24px; }
.legal-copy h2 { color: rgba(218, 213, 205, .8); font-size: 11px; font-weight: 400; letter-spacing: .26em; line-height: 1.45; margin: 38px 0 14px; text-transform: uppercase; }
.legal-copy ul { margin: -10px 0 24px; padding-left: 20px; }
.legal-copy li { margin: 3px 0; padding-left: 4px; }
.legal-contact { color: var(--paper) !important; letter-spacing: .04em; }
.legal-contact a { color: inherit; text-decoration: none; }
.legal-contact a:hover, .legal-contact a:focus-visible { color: #eee9df; outline: none; text-decoration: underline; text-underline-offset: 4px; }
.legal-footer { display: flex; flex-wrap: wrap; font-size: 9px; gap: 7px 10px; justify-content: center; letter-spacing: .22em; margin: 0 auto; max-width: 700px; text-transform: uppercase; }
.legal-footer a { color: rgba(201, 196, 188, .5); text-decoration: none; }
.legal-footer span { color: rgba(201, 196, 188, .28); }
@media (max-width: 600px) {
  .legal-page { padding: 22px 20px 32px; }
  .legal-brand { font-size: 8px; gap: 7px; letter-spacing: .27em; }
  .legal-brand img { height: 25px; width: 27px; }
  .back-home { font-size: 8px; letter-spacing: .17em; }
  .legal-content { margin: 58px auto 44px; }
  .legal-updated { font-size: 9px; letter-spacing: .2em; margin-bottom: 38px; }
  .legal-copy p, .legal-copy li { font-size: 13px; line-height: 1.7; }
  .legal-copy h2 { font-size: 10px; letter-spacing: .2em; margin-top: 32px; }
  .legal-footer { font-size: 8px; line-height: 1.6; max-width: 290px; }
}
