body { background-color: #f8fafc; color: #334155; }
        
        .service-card {
            background-color: white;
            border-radius: 0.75rem;
            padding: 2rem;
            height: 100%;
            border: 1px solid #e2e8f0;
            transition: all 0.2s ease-in-out;
            display: flex;
            flex-direction: column;
            box-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1);
        }
        .service-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 20px 25px -5px rgb(0 0 0 / 0.1);
            border-color: #cbd5e1;
        }

        .cta-button {
            display: inline-block;
            background-color: #1e3a8a;
            color: white;
            font-weight: 700;
            padding: 0.75rem 2rem;
            border-radius: 0.5rem;
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
            transition: all 0.3s;
            text-align: center;
            cursor: pointer;
            width: 100%;
        }
        .cta-button:hover { background-color: #172554; transform: scale(1.01); }

        .emergency-button {
            position: fixed; bottom: 20px; right: 15px; display: flex; align-items: center;
            background-color: #1e3a8a; color: white; padding: 10px 15px; border-radius: 30px;
            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3); z-index: 1000; text-decoration: none;
            transition: all 0.3s ease;
        }
        .emergency-button:hover { transform: scale(1.05); background-color: #172554; }
        
        @media (max-width: 768px) {
            .emergency-button-text { display: none; }
            .emergency-button { padding: 12px; border-radius: 50%; }
        }

        /* Estilos Tabla Comparativa Estilo Imagen */
        .comp-table-container {
            overflow-x: auto;
            border-radius: 8px;
            box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
            background: white;
            border: 1px solid #e2e8f0;
            margin-top: 1rem;
        }
        .comp-table { width: 100%; min-width: 800px; border-collapse: collapse; font-size: 0.875rem; }
        .comp-table th, .comp-table td { padding: 1rem; text-align: center; border: none; }

        /* Header row and first column cell */
        .comp-table thead th,
        .comp-table tbody th:first-child,
        .comp-table tbody td:first-child {
            background-color: #1e3a8a; /* Azul oscuro */
            color: white;
            font-weight: 700;
            text-align: left;
        }

        .comp-table thead th {
            text-align: center;
            text-transform: uppercase;
        }

        /* Zebra striping for rows */
        .comp-table tbody tr:nth-child(odd) { background-color: #f1f5f9; } /* Gris claro */
        .comp-table tbody tr:nth-child(even) { background-color: white; }

        /* Status Indicators */
        .status-dot {
            display: inline-block;
            width: 10px;
            height: 10px;
            border-radius: 50%;
            margin-right: 5px;
        }
        .dot-green { background-color: #16a34a; }
        .dot-blue { background-color: #1e40af; }
        .icon-red { color: #dc2626; font-weight: 700; }

        /* Otras tablas */
        .comparison-table th { background-color: #f1f5f9; color: #1e293b; padding: 1rem; text-align: center; border: 1px solid #e2e8f0; }
        .comparison-table td { border: 1px solid #e2e8f0; padding: 0.75rem; text-align: center; font-size: 0.875rem; }
        .comparison-table td:first-child { text-align: left; font-weight: 600; color: #334155; }
        
        .before-after-table td:nth-child(2) { background-color: #fff1f2; color: #9f1239; }
        .before-after-table td:nth-child(3) { background-color: #f0fdf4; color: #166534; font-weight: 600; }

        details > summary { list-style: none; outline: none; }
        details > summary::-webkit-details-marker { display: none; }
        details[open] summary ~ * { animation: slideDown 0.3s ease-in-out; }
        
        @keyframes slideDown {
            from { opacity: 0; transform: translateY(-10px); }
            to { opacity: 1; transform: translateY(0); }
        }
        
        /* Listas personalizadas */
        ul.custom-check-list li { position: relative; padding-left: 1.2rem; margin-bottom: 0.4rem; }
        ul.custom-check-list li::before { 
            content: ""; 
            position: absolute; left: 0; top: 0.4rem; 
            width: 6px; height: 6px; border-radius: 50%; background-color: #2563eb; 
        }
        ul.custom-excl-list li { position: relative; padding-left: 1.2rem; margin-bottom: 0.4rem; }
        ul.custom-excl-list li::before { 
            content: "✕"; 
            position: absolute; left: 0; color: #dc2626; font-weight: bold; font-size: 0.8rem;
        }