
        * { margin: 0; padding: 0; box-sizing: border-box; }

        :root {
            --coral: #F2A09A;
            --coral-light: #FDF5F4;
            --teal: #4CB5AE;
            --teal-ink: #23756F;
            --teal-light: #E8F6F5;
            --navy: #1A2B3C;
            --text-dark: #2D3748;
            --text-gray: #5A6B7D;
            --text-light: #8899AA;
            --white: #FFFFFF;
            --bg-cream: #FFFAF9;
            --border: #E8ECF1;
        }

        html { scroll-behavior: smooth; }

        body {
            font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif;
            color: var(--text-dark);
            line-height: 1.6;
            background: var(--white);
            -webkit-font-smoothing: antialiased;
            overflow-x: hidden;
        }

        h1, h2, h3 {
            font-family: 'DM Serif Display', Georgia, serif;
            font-weight: 400;
        }

        .legal-hero {
            padding: 140px 20px 60px;
            text-align: center;
            background: var(--bg-cream);
            border-bottom: 1px solid var(--border);
        }

        .legal-hero h1 {
            font-size: 2.5rem;
            line-height: 1.2;
            color: var(--navy);
            max-width: 800px;
            margin: 0 auto 16px;
        }

        .legal-lead {
            max-width: 640px;
            margin: 0 auto;
            color: var(--text-gray);
            font-size: 1.05rem;
            line-height: 1.7;
        }

        .legal-lead strong { color: var(--navy); }

        .legal-body {
            max-width: 800px;
            margin: 0 auto;
            padding: 48px 20px 80px;
        }

        .legal-body h2 {
            font-size: 1.4rem;
            color: var(--navy);
            margin-top: 40px;
            margin-bottom: 12px;
        }

        .legal-body h2:first-child { margin-top: 0; }

        .legal-body h3 {
            font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif;
            font-weight: 700;
            font-size: 1.05rem;
            color: var(--text-dark);
            margin-top: 28px;
            margin-bottom: 8px;
        }

        .legal-body p {
            color: var(--text-gray);
            font-size: 1rem;
            line-height: 1.8;
            margin-bottom: 16px;
        }

        .legal-body p strong { color: var(--navy); }

        .legal-body a {
            color: var(--teal-ink);
            text-decoration: none;
        }

        .legal-body a:hover { text-decoration: underline; }

        .legal-body a.url { overflow-wrap: anywhere; }

        .cert-table {
            width: 100%;
            border-collapse: collapse;
            margin: 8px 0 16px;
            font-size: 0.97rem;
            line-height: 1.6;
        }

        .cert-table th,
        .cert-table td {
            text-align: left;
            vertical-align: top;
            padding: 12px 14px;
            border-top: 1px solid var(--border);
        }

        .cert-table tr:last-child th,
        .cert-table tr:last-child td { border-bottom: 1px solid var(--border); }

        .cert-table th {
            width: 32%;
            font-weight: 600;
            color: var(--navy);
            background: var(--teal-light);
        }

        .cert-table td { color: var(--text-gray); }

        .cert-table ul {
            list-style: none;
            margin: 0;
            padding: 0;
        }

        .cert-table li + li { margin-top: 6px; }

        .no-cost {
            border-left: 4px solid var(--teal);
            background: var(--teal-light);
            border-radius: 0 6px 6px 0;
            padding: 16px 20px;
            margin-bottom: 8px;
        }

        .legal-body .no-cost p { margin-bottom: 0; color: var(--text-dark); }

        .legal-body blockquote {
            border-left: 4px solid var(--border);
            padding: 4px 0 4px 20px;
            margin: 0 0 16px;
            color: var(--text-gray);
            font-style: italic;
            line-height: 1.8;
        }

        .legal-body .updated {
            margin-top: 48px;
            padding-top: 20px;
            border-top: 1px solid var(--border);
            color: var(--text-light);
            font-size: 0.95rem;
        }

        @media (max-width: 600px) {
            .legal-hero { padding: 120px 16px 44px; }
            .legal-hero h1 { font-size: 2rem; }
            .legal-body { padding: 32px 16px 60px; }
            .cert-table th,
            .cert-table td { display: block; width: auto; }
            .cert-table th { padding-bottom: 8px; }
            .cert-table td { border-top: 0; padding-top: 8px; }
            .cert-table tr:last-child th { border-bottom: 0; }
        }
    