/* ── Policy pages (Privacy Policy, Terms of Service, Refund Policy, DMCA) ── */

.policy-body {
    padding: 20px 28px;
    font-size: 0.95rem;
    line-height: 1.75;
    color: #374151;
}
.policy-body h1 {
    font-size: 1.5rem;
    font-weight: 700;
    color: #111827;
    margin-bottom: 0.25rem;
}
.policy-body h2 {
    font-size: 1.15rem;
    font-weight: 600;
    color: #111827;
    margin: 2rem 0 0.75rem;
    border-bottom: 1px solid #e5e7eb;
    padding-bottom: 0.4rem;
}
.policy-body h3 {
    font-size: 1rem;
    font-weight: 600;
    color: #374151;
    margin: 1.25rem 0 0.5rem;
}
.policy-body em {
    font-size: 0.875rem;
    color: #6b7280;
    display: block;
    margin-bottom: 1.5rem;
}
.policy-body p { margin-bottom: 1rem; }
.policy-body ul,
.policy-body ol {
    margin: 0 0 1rem 1.5rem;
    padding-left: 0.5rem;
}
.policy-body ul { list-style: disc; }
.policy-body ol { list-style: decimal; }
.policy-body li { margin-bottom: 0.5rem; }
.policy-body a { color: #0077cc; text-decoration: underline; }
.policy-body a:hover { color: #005fa3; }
/* The content partials wrap everything in <main>/<section> — flatten them */
.policy-body main,
.policy-body section { display: contents; }

/* Cookie Policy tables — added 2026-08-19 with /legal/cookies. */
.policy-table {
    width: 100%;
    border-collapse: collapse;
    margin: 14px 0 22px;
    font-size: 13.5px;
    line-height: 1.5;
}
.policy-table th {
    text-align: left;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    padding: 8px 10px;
    border-bottom: 2px solid rgba(128, 128, 128, 0.4);
}
.policy-table td {
    padding: 9px 10px;
    border-bottom: 1px solid rgba(128, 128, 128, 0.25);
    vertical-align: top;
}
.policy-table code { font-size: 0.9em; }
@media (max-width: 640px) {
    .policy-table { display: block; overflow-x: auto; }
}
