        :root {
            --color-primary: #0B2B5E;
            --color-secondary: #C1272D;
            --color-accent: #C1272D;
            --color-dark: #1a202c;
            /* Cores tipográficas editoriais */
            --text-body: #374151; /* Cinza escuro suave, não cansa a vista */
            --text-heading: #111827; /* Quase preto para alto contraste nos títulos */
        }

        body {
            overflow-x: hidden;
            /* Stack de fontes de sistema atualizada e mais robusta */
            font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
            text-rendering: optimizeLegibility;
            -webkit-font-smoothing: antialiased;
            -moz-osx-font-smoothing: grayscale;
            color: var(--text-body);
        }

        /* 1. TÍTULOS (Headings) - Estilo Premium */
        /* O espaçamento negativo (letter-spacing) é o que deixa a fonte de sistema com cara de site da Apple */
        .blog-content h1, 
        .blog-content h2, 
        .blog-content h3 {
            color: var(--text-heading);
            font-weight: 700;
            letter-spacing: -0.025em; 
        }

        .blog-content h2 {
            margin-top: 3.5rem;
            margin-bottom: 1.25rem;
            font-size: 1.875rem;
            line-height: 1.3;
            border-left: 4px solid var(--color-secondary);
            padding-left: 1.25rem;
        }

        .blog-content h3 {
            margin-top: 2.5rem;
            margin-bottom: 1rem;
            font-size: 1.5rem;
            line-height: 1.4;
            color: var(--color-primary);
        }

        /* 2. CORPO DO TEXTO (Parágrafos) */
        .blog-content p {
            font-size: 1.125rem; /* 18px - Tamanho ideal para leitura longa */
            line-height: 1.8; /* Respiro amplo para não cansar os olhos */
            margin-bottom: 1.75rem;
            color: var(--text-body);
        }

        .blog-content p strong {
            color: var(--text-heading);
            font-weight: 600;
        }

        /* 3. LISTAS (Otimizadas para leitura escaneável) */
        .blog-content ul {
            margin-bottom: 2.5rem;
            padding-left: 0.5rem;
            list-style: none; /* Removemos o bullet feio do navegador */
        }

        .blog-content li {
            font-size: 1.125rem;
            line-height: 1.7;
            margin-bottom: 1rem;
            position: relative;
            padding-left: 1.75rem;
            color: var(--text-body);
        }

        /* Bullet point customizado com a cor da marca */
        .blog-content li::before {
            content: "•";
            color: var(--color-secondary);
            font-weight: bold;
            font-size: 1.5rem;
            position: absolute;
            left: 0;
            top: -4px;
        }

        /* 4. TABELAS (Design moderno e limpo) */
        .blog-content table {
            width: 100%;
            margin: 2.5rem 0;
            border-collapse: separate;
            border-spacing: 0;
            font-size: 1rem;
            border-radius: 8px;
            overflow: hidden;
            border: 1px solid #e5e7eb;
            box-shadow: 0 1px 3px rgba(0,0,0,0.05);
        }

        .blog-content th {
            background-color: var(--color-primary); /* Azul traz mais confiança médica que o vermelho */
            color: white;
            padding: 1.25rem 1rem;
            text-align: left;
            font-weight: 600;
            letter-spacing: 0.025em; /* Leve afastamento para maiúsculas */
        }

        .blog-content td {
            padding: 1.25rem 1rem;
            border-bottom: 1px solid #e5e7eb;
            line-height: 1.6;
            color: #4b5563;
        }

        .blog-content tr:last-child td {
            border-bottom: none;
        }

        /* Efeito zebrado super discreto */
        .blog-content tr:nth-child(even) {
            background-color: #f8fafc; 
        }

        /* Estilos do Menu Mobile mantidos */
        #mobile-menu {
            transition: all 0.3s ease-in-out;
            max-height: 0;
            opacity: 0;
            visibility: hidden;
            overflow: hidden;
        }
        #mobile-menu.open {
            max-height: 600px;
            opacity: 1;
            visibility: visible;
        }

        .sticky-sidebar { position: sticky; top: 100px; }
        .toc { background-color: #fdf2f2; border-left: 4px solid var(--color-secondary); padding: 1.5rem; border-radius: 0.5rem; margin-bottom: 2rem; }
        .price-table { width: 100%; border-collapse: collapse; margin: 20px 0; font-size: 0.95rem; border-radius: 8px; overflow: hidden; box-shadow: 0 1px 3px rgba(0,0,0,0.1); }
        .price-table th { background-color: var(--color-secondary); color: white; padding: 15px; text-align: left; font-weight: 600; }
        .price-table td { border-bottom: 1px solid #e5e7eb; padding: 12px 15px; color: #4b5563; }
        .price-table tr:nth-child(even) { background-color: #fdf2f2; }

        .partner-card {
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }
        .partner-card:hover {
            transform: translateY(-5px);
        }

        #mobile-menu {
            transition: all 0.3s ease-in-out;
            max-height: 0;
            opacity: 0;
            visibility: hidden;
            overflow: hidden;
        }
        #mobile-menu.open {
            max-height: 600px;
            opacity: 1;
            visibility: visible;
        }