/* Policy pages: reuse brand variables from styles.css. */
.policy-page { background: var(--paper); color: var(--ink); font-family: var(--font-body); margin: 0; }
.policy-header { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; justify-content: space-between; padding: 1.25rem var(--frame); border-bottom: 1px solid var(--line); }
.policy-header img { height: 2.25rem; width: auto; }
.policy-nav { display: flex; flex-wrap: wrap; gap: 1rem; padding: 0.75rem var(--frame); border-bottom: 1px solid var(--line); font-size: var(--step-small); }
.policy-nav a { color: var(--ink); }
.policy-nav a[aria-current="page"] { color: var(--accent); font-weight: 500; }
#policy-main { max-width: 46rem; margin: 0 auto; padding: 2.5rem var(--frame) 4rem; line-height: 1.75; font-size: var(--step-body); }
#policy-main h1 { font-family: var(--font-display); font-size: clamp(2rem, 1.6rem + 1.6vw, 3rem); margin: 0 0 0.25rem; }
#policy-main h2 { font-size: 1.15rem; margin: 2rem 0 0.4rem; }
#policy-main p { margin: 0 0 0.8rem; }
.policy-updated, .policy-note { color: var(--muted); font-size: var(--step-small); }
.policy-operator { margin-top: 2.5rem; padding: 1rem 1.25rem; border: 1px solid var(--line); background: var(--bg); }
.policy-operator h2 { margin-top: 0 !important; }
.language-switcher button[aria-pressed="true"] { font-weight: 600; text-decoration: underline; }
.policy-header .language-switcher button { color: var(--ink); background: transparent; border: 1px solid var(--line); padding: 0.3rem 0.6rem; cursor: pointer; }
.policy-header .language-switcher button[aria-pressed="true"] { background: var(--ink); color: var(--paper); text-decoration: none; }
