/* Shared styles for the static legal pages — mirrors the main site's tokens. */
@font-face { font-family: 'Bebas Neue'; src: url('/fonts/bebas-neue.woff2') format('woff2'); font-display: swap; }
@font-face { font-family: 'DM Serif Display'; src: url('/fonts/dm-serif-display.woff2') format('woff2'); font-display: swap; }
@font-face { font-family: 'DM Sans'; src: url('/fonts/dm-sans.woff2') format('woff2'); font-weight: 100 1000; font-display: swap; }

*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }
html { background: #07080a; color-scheme: dark; }
body {
  min-height: 100vh;
  font-family: 'DM Sans', ui-sans-serif, system-ui, sans-serif;
  color: #f3f4f6;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
  background:
    radial-gradient(ellipse 70% 50% at 85% -5%, rgba(37, 84, 190, 0.2), transparent 62%),
    radial-gradient(ellipse 60% 40% at 0% 90%, rgba(60, 64, 72, 0.2), transparent 60%),
    linear-gradient(170deg, #07080a 0%, #0b0c0f 55%, #101215 100%);
  background-attachment: fixed;
}
::selection { background: rgba(227, 195, 130, 0.3); color: #fff; }
a { color: #e3c382; text-underline-offset: 3px; text-decoration-color: rgba(227, 195, 130, 0.4); }
a:hover { color: #f3f4f6; }
:focus-visible { outline: 2px solid #e3c382; outline-offset: 3px; }

.legal-nav {
  max-width: 1240px;
  margin: 0 auto;
  padding: 22px clamp(20px, 4vw, 40px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.legal-logo { font-family: 'Bebas Neue', Impact, sans-serif; font-size: 25px; letter-spacing: 0.09em; text-transform: uppercase; text-decoration: none; background: linear-gradient(180deg, #b4b9c2 0%, #7f858f 52%, #4e535c 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.legal-logo span { background: linear-gradient(180deg, #86b8ff 0%, #4c8df6 52%, #2563eb 100%); -webkit-background-clip: text; background-clip: text; color: transparent; }
.legal-home { font-size: 14px; color: rgba(243, 244, 246, 0.74); text-decoration: none; }

.wrap { max-width: 760px; margin: 0 auto; padding: clamp(56px, 9vw, 104px) clamp(20px, 4vw, 40px) 96px; }
.eyebrow {
  display: inline-flex; align-items: center; gap: 12px; margin-bottom: 20px;
  font-size: 12px; font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase;
  color: #e3c382;
}
.eyebrow::before { content: ''; width: 28px; height: 1px; background: linear-gradient(90deg, #e3c382, rgba(227, 195, 130, 0.15)); }
h1 { font-family: 'DM Serif Display', Georgia, serif; font-size: clamp(38px, 6vw, 58px); font-weight: 500; letter-spacing: -0.008em; line-height: 1.08; margin-bottom: 18px; }
h2 { font-family: 'DM Serif Display', Georgia, serif; font-size: 24px; font-weight: 400; margin: 44px 0 10px; color: #f3f4f6; }
p, li { font-size: 16px; color: rgba(243, 244, 246, 0.74); margin-bottom: 14px; }
ul { padding-left: 22px; }
li::marker { color: #e3c382; }
strong { color: #f3f4f6; font-weight: 550; }
.meta {
  font-size: 13px; color: rgba(243, 244, 246, 0.5);
  padding-bottom: 32px; margin-bottom: 8px; border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
.back {
  display: inline-flex; margin-top: 48px; padding: 0 20px; height: 44px; align-items: center;
  font-size: 14.5px; font-weight: 500; color: #f3f4f6; text-decoration: none;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.16); background: rgba(255, 255, 255, 0.04);
  transition: background 0.2s, box-shadow 0.2s;
}
.back:hover { background: rgba(255, 255, 255, 0.07); box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.28); }
