/* TestSeriesPoint — privacy-policy.css */
/* ── Google Fonts ── */
    @import url('https://fonts.googleapis.com/css2?family=Sora:wght@400;500;600&family=Lora:ital,wght@0,400;0,600;1,400&display=swap');

    /* ── Root tokens ── */
    :root {
        --pp-brand:        #1a56db;
        --pp-brand-light:  #e8f0fe;
        --pp-brand-dark:   #1239a0;
        --pp-accent:       #0e9f6e;
        --pp-accent-light: #e3f9f0;
        --pp-text:         #1f2937;
        --pp-text-muted:   #6b7280;
        --pp-bg:           #ffffff;
        --pp-bg-surface:   #f9fafb;
        --pp-border:       #e5e7eb;
        --pp-radius-md:    8px;
        --pp-radius-lg:    12px;
    }

    /* ── Base ── */
    .pp-wrap * { box-sizing: border-box; margin: 0; padding: 0; }
    .pp-wrap { font-family: 'Sora', sans-serif; color: var(--pp-text); max-width: 900px; margin: 0 auto; padding: 2rem 1.25rem 5rem; }

    /* ── Hero ── */
    .pp-hero { text-align: center; padding: 3rem 1rem 2.25rem; border-bottom: 1px solid var(--pp-border); margin-bottom: 2.5rem; }
    .pp-badge { display: inline-block; background: var(--pp-brand-light); color: var(--pp-brand); font-size: 11px; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; padding: 4px 14px; border-radius: 999px; margin-bottom: 1rem; }
    .pp-hero h1 { font-family: 'Lora', serif; font-size: 2.4rem; font-weight: 600; line-height: 1.2; margin-bottom: .6rem; }
    .pp-hero p  { font-size: 14px; color: var(--pp-text-muted); }
    .pp-hero a  { color: var(--pp-brand); text-decoration: none; }

    /* ── Table of Contents ── */
    .pp-toc { background: var(--pp-bg-surface); border: 1px solid var(--pp-border); border-radius: var(--pp-radius-lg); padding: 1.25rem 1.5rem; margin-bottom: 2.5rem; }
    .pp-toc h3 { font-size: 11px; font-weight: 500; text-transform: uppercase; letter-spacing: .08em; color: var(--pp-text-muted); margin-bottom: .75rem; }
    .pp-toc-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 4px 16px; }
    .pp-toc a { display: block; font-size: 13px; color: var(--pp-brand); text-decoration: none; padding: 3px 0; }
    .pp-toc a:hover { text-decoration: underline; }

    /* ── Highlight box ── */
    .pp-highlight { background: var(--pp-accent-light); border-left: 3px solid var(--pp-accent); border-radius: 0 var(--pp-radius-md) var(--pp-radius-md) 0; padding: .9rem 1.1rem; margin: 0 0 2.5rem; }
    .pp-highlight p { font-size: 14px; line-height: 1.7; color: var(--pp-text); }

    /* ── Sections ── */
    .pp-section { margin-bottom: 3rem; scroll-margin-top: 80px; }
    .pp-section-header { display: flex; align-items: center; gap: 10px; margin-bottom: 1.2rem; padding-bottom: .75rem; border-bottom: 1px solid var(--pp-border); }
    .pp-icon { width: 34px; height: 34px; border-radius: var(--pp-radius-md); background: var(--pp-brand-light); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
    .pp-icon svg { width: 16px; height: 16px; stroke: var(--pp-brand); fill: none; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
    .pp-section-header h2 { font-family: 'Lora', serif; font-size: 1.3rem; font-weight: 600; }
    .pp-section h3  { font-size: .95rem; font-weight: 600; color: var(--pp-text); margin: 1.4rem 0 .5rem; }
    .pp-section p   { font-size: 14px; line-height: 1.8; color: var(--pp-text-muted); margin-bottom: .75rem; }
    .pp-section ul  { padding-left: 1.4rem; margin-bottom: .75rem; }
    .pp-section li  { font-size: 14px; line-height: 1.8; color: var(--pp-text-muted); margin-bottom: .35rem; }
    .pp-section li strong { color: var(--pp-text); font-weight: 500; }

    /* ── Cards ── */
    .pp-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 12px; margin: 1rem 0 1.25rem; }
    .pp-card  { background: var(--pp-bg-surface); border: 1px solid var(--pp-border); border-radius: var(--pp-radius-md); padding: 1rem; }
    .pp-card-label { font-size: 10px; font-weight: 500; text-transform: uppercase; letter-spacing: .08em; color: var(--pp-text-muted); margin-bottom: 4px; }
    .pp-card-value { font-size: 13px; font-weight: 600; color: var(--pp-text); }
    .pp-card-desc  { font-size: 12px; color: var(--pp-text-muted); margin-top: 4px; line-height: 1.55; }

    /* ── Table ── */
    .pp-table-wrap { overflow-x: auto; margin: .75rem 0 1.25rem; border: 1px solid var(--pp-border); border-radius: var(--pp-radius-md); }
    table.pp-table { width: 100%; border-collapse: collapse; font-size: 13px; }
    table.pp-table th { background: var(--pp-bg-surface); font-size: 11px; font-weight: 500; text-transform: uppercase; letter-spacing: .07em; color: var(--pp-text-muted); padding: 9px 14px; text-align: left; border-bottom: 1px solid var(--pp-border); }
    table.pp-table td { padding: 9px 14px; border-bottom: 1px solid var(--pp-border); color: var(--pp-text-muted); vertical-align: top; line-height: 1.6; }
    table.pp-table tr:last-child td { border-bottom: none; }
    table.pp-table td:first-child { font-weight: 500; color: var(--pp-text); white-space: nowrap; }

    /* ── Contact block ── */
    .pp-contact { display: flex; align-items: center; gap: 1.25rem; background: var(--pp-brand-light); border: 1px solid #c0d4f8; border-radius: var(--pp-radius-lg); padding: 1.5rem; margin-top: .75rem; }
    .pp-contact-icon { width: 46px; height: 46px; background: var(--pp-brand); border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
    .pp-contact-icon svg { width: 20px; height: 20px; stroke: #fff; fill: none; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
    .pp-contact-body p   { font-size: 13px; color: var(--pp-text-muted); margin-bottom: 4px; }
    .pp-contact-body a   { font-size: 15px; font-weight: 600; color: var(--pp-brand); text-decoration: none; }
    .pp-contact-body a:hover { text-decoration: underline; }

    /* ── Footer ── */
    .pp-footer { text-align: center; padding-top: 2rem; border-top: 1px solid var(--pp-border); margin-top: 3rem; font-size: 13px; color: var(--pp-text-muted); line-height: 2; }
    .pp-footer a { color: var(--pp-brand); text-decoration: none; }

    /* ── Responsive ── */
    @media (max-width: 600px) {
        .pp-hero h1 { font-size: 1.8rem; }
        .pp-toc-grid { grid-template-columns: 1fr; }
        .pp-contact { flex-direction: column; text-align: center; }
    }
