/* Convio legal pages (privacy, terms). Plain, readable, and in the site's dark style. */
:root { --bg:#000; --card:#0f0f10; --line:rgba(255,255,255,.09); --text:#FFF3F0; --body:rgba(255,255,255,.78); --dim:rgba(255,255,255,.55); --accent:#C9B8FF; }
* { box-sizing:border-box }
html { scroll-behavior:smooth; scroll-padding-top:24px }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto } }
body { margin:0; background:var(--bg); color:var(--text); font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Helvetica,Arial,sans-serif; -webkit-font-smoothing:antialiased; line-height:1.65 }
a { color:var(--text); text-decoration:underline; text-decoration-color:rgba(255,255,255,.35); text-underline-offset:3px }
a:hover { text-decoration-color:var(--text) }
header.top { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:24px clamp(16px,4vw,48px); border-bottom:1px solid var(--line) }
header.top .brand { display:flex; align-items:center; gap:10px; font-weight:500; font-size:17px; text-decoration:none }
header.top nav { display:flex; gap:20px; font-size:14px }
header.top nav a { text-decoration:none; color:var(--dim) }
header.top nav a:hover, header.top nav a[aria-current] { color:var(--text) }
.wrap { max-width:1080px; margin:0 auto; padding:56px clamp(16px,4vw,48px) 96px; display:grid; grid-template-columns:220px minmax(0,1fr); gap:56px }
@media (max-width:860px) { .wrap { grid-template-columns:1fr; gap:24px; padding-top:36px } aside { position:static !important } }
aside { position:sticky; top:24px; align-self:start; font-size:13px }
aside p { margin:0 0 10px; color:var(--dim); text-transform:uppercase; letter-spacing:.08em; font-size:11px; font-weight:600 }
aside ol { list-style:none; margin:0; padding:0; display:grid; gap:6px }
aside a { color:var(--dim); text-decoration:none }
aside a:hover { color:var(--text) }
.pill { display:inline-flex; align-items:center; gap:8px; height:28px; padding:0 12px; border-radius:999px; border:1px solid var(--line); background:rgba(255,255,255,.04); font-size:13px; color:var(--dim) }
h1 { font-size:clamp(36px,5vw,52px); line-height:1.05; letter-spacing:-.035em; font-weight:500; margin:18px 0 12px }
.lead { font-size:17px; color:var(--body); margin:0 0 8px; max-width:62ch }
.meta { font-size:13px; color:var(--dim); margin:0 0 36px }
.summary { background:var(--card); border:1px solid var(--line); border-radius:20px; padding:22px 24px; margin:0 0 40px }
.summary h2 { margin:0 0 10px; font-size:15px }
.summary ul { margin:0; padding-left:18px; color:var(--body); font-size:15px }
section { border-top:1px solid var(--line); padding-top:28px; margin-top:32px }
h2 { font-size:22px; letter-spacing:-.02em; font-weight:500; margin:0 0 12px }
h3 { font-size:16px; font-weight:600; margin:22px 0 8px }
p, li { color:var(--body); font-size:15.5px; max-width:70ch }
ul, ol { padding-left:20px }
li { margin:4px 0 }
.table { overflow-x:auto; margin:14px 0 }
table { width:100%; border-collapse:collapse; font-size:14px; min-width:560px }
th, td { text-align:left; vertical-align:top; padding:10px 12px; border-bottom:1px solid var(--line); color:var(--body) }
th { color:var(--text); font-weight:500; background:rgba(255,255,255,.03) }
code { font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace; font-size:.9em; background:rgba(255,255,255,.06); border:1px solid var(--line); padding:1px 6px; border-radius:6px; color:var(--text) }
.fine { font-size:13.5px; color:var(--dim) }
footer.bottom { border-top:1px solid var(--line); padding:28px clamp(16px,4vw,48px); display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; font-size:13px; color:var(--dim) }
footer.bottom a { color:var(--dim) }
