/* Shared styles for the Terms, Privacy and Support pages (#234). Same palette
   and fonts as the landing page so the pages read as one site. */
html, body { margin: 0; padding: 0; background: #12121d; }
body { font-family: 'Manrope', sans-serif; color: #e3e0f1; -webkit-font-smoothing: antialiased; line-height: 1.65; }
a { color: #22D3EE; text-decoration: none; }
a:hover, a:focus-visible { color: #7bd9aa; text-decoration: underline; }
a:focus-visible { outline: 2px solid #7bd9aa; outline-offset: 2px; border-radius: 2px; }
::selection { background: rgba(123,217,170,0.25); }
.wrap { max-width: 760px; margin: 0 auto; padding: 32px clamp(20px, 6vw, 48px) 64px; }
header.site { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 8px 0 28px; }
.brand { font-family: 'Noto Serif', serif; font-variant: small-caps; font-weight: 600; font-size: 17px; letter-spacing: 0.2em; color: #e3e0f1; }
nav.pages { display: flex; gap: 18px; font-size: 14px; }
nav.pages a[aria-current="page"] { color: #e3e0f1; border-bottom: 1px solid #7bd9aa; }
h1 { font-family: 'Noto Serif', serif; font-weight: 500; font-size: clamp(28px, 4vw, 38px); line-height: 1.2; margin: 0 0 8px; }
h2 { font-family: 'Noto Serif', serif; font-weight: 500; font-size: 22px; margin: 36px 0 10px; }
h3 { font-size: 16px; font-weight: 600; margin: 22px 0 6px; color: #e3e0f1; }
p, li { font-size: 16px; color: #cfccdd; }
ul { padding-left: 22px; }
li { margin: 6px 0; }
.meta { font-size: 13px; color: #8f8da3; margin: 0 0 24px; }
.draft { border: 1px solid rgba(232,168,76,0.55); background: rgba(232,168,76,0.08); color: #f1d9b0; border-radius: 10px; padding: 12px 16px; font-size: 14px; margin: 0 0 28px; }
.draft strong { color: #f3c477; }
.confirm { color: #f3c477; font-size: 0.9em; font-style: italic; }
table { border-collapse: collapse; width: 100%; margin: 12px 0 8px; font-size: 15px; }
th, td { text-align: left; vertical-align: top; padding: 8px 10px; border-bottom: 1px solid rgba(227,224,241,0.12); color: #cfccdd; }
th { color: #e3e0f1; font-weight: 600; }
footer.site { margin-top: 56px; padding-top: 20px; border-top: 1px solid rgba(227,224,241,0.12); font-size: 13px; color: rgba(190,201,192,0.7); display: flex; flex-wrap: wrap; gap: 10px 24px; }
footer.site a { color: #bec9c0; }
@media (max-width: 600px) { th, td { display: block; padding: 6px 0; border-bottom: 0; } tr { display: block; border-bottom: 1px solid rgba(227,224,241,0.12); padding: 6px 0; } th { padding-top: 10px; } }
