.policy-page {
    width: min(960px, calc(100% - 32px));
    margin: 32px auto 48px;
}

.policy-card {
    border: 1px solid var(--fox-border);
    border-radius: var(--radius-lg);
    background: var(--fox-surface);
    padding: clamp(20px, 4vw, 36px);
    box-shadow: var(--shadow-soft);
}

.policy-card h1 {
    margin: 0;
    color: var(--fox-accent);
    font-size: clamp(1.7rem, 4vw, 2.5rem);
}

.policy-card h2 {
    margin: 30px 0 10px;
    color: var(--fox-accent);
    font-size: 1.25rem;
}

.policy-card h3 {
    margin: 20px 0 8px;
    font-size: 1.05rem;
}

.policy-card p,
.policy-card li {
    color: var(--fox-text);
    line-height: 1.7;
}

.policy-card p {
    margin: 10px 0;
}

.policy-card ul {
    padding-left: 24px;
}

.policy-card a {
    color: var(--fox-accent);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.policy-updated {
    margin-top: 8px !important;
    color: var(--fox-muted) !important;
    font-size: 0.9rem;
}

.policy-note {
    margin-top: 20px !important;
    padding: 14px 16px;
    border-left: 3px solid var(--fox-accent);
    border-radius: 8px;
    background: color-mix(in srgb, var(--fox-accent) 9%, transparent);
}
