/* /contrat-de-location-gratuit — styles scopés .cg, chargés uniquement sur cette page. */

.cg {
    max-width: 820px;
    margin: 0 auto;
    color: var(--text);
}

.cg p {
    color: var(--text-muted);
    line-height: 1.75;
    margin-bottom: var(--space-md);
}

.cg h2 {
    font-size: 1.375rem;
    line-height: 1.3;
    margin-top: var(--space-2xl);
    margin-bottom: var(--space-md);
    color: var(--text);
}

.cg h2:first-of-type { margin-top: var(--space-xl); }

.cg h3 {
    font-size: 1.0625rem;
    margin-top: var(--space-lg);
    margin-bottom: var(--space-sm);
    color: var(--text);
}

.cg ul {
    margin-bottom: var(--space-md);
    padding-left: var(--space-lg);
    color: var(--text-muted);
}

.cg li {
    margin-bottom: var(--space-sm);
    line-height: 1.7;
}

.cg a { color: var(--primary); }

.cg-updated {
    font-size: 0.8125rem;
    color: var(--text-light);
    border-bottom: 1px solid var(--border-light);
    padding-bottom: var(--space-sm);
    margin-bottom: var(--space-lg);
}

.cg-lede {
    font-size: 1.0625rem;
    background: var(--primary-bg);
    border-radius: var(--radius-md);
    padding: var(--space-md) var(--space-lg);
}

.cg-lede strong { color: var(--text); }

/* Encart « on reconnaît une limite du produit » */
.cg-note {
    background: var(--warning-bg);
    border-left: 3px solid var(--warning);
    border-radius: var(--radius-sm);
    padding: var(--space-md) var(--space-lg);
    font-size: 0.9375rem;
}

.cg-example {
    background: var(--bg-muted);
    border-radius: var(--radius-md);
    padding: var(--space-md) var(--space-lg);
    margin-bottom: var(--space-md);
}

.cg-example p:last-child { margin-bottom: 0; }

.cg-calc {
    font-family: var(--font-mono);
    font-size: 1rem;
    background: var(--bg-white);
    border: 1px solid var(--border);
    border-radius: var(--radius-sm);
    padding: var(--space-sm) var(--space-md);
    color: var(--text) !important;
}

/* Tableaux */
.cg-table-wrap {
    overflow-x: auto;
    margin-bottom: var(--space-lg);
    border: 1px solid var(--border);
    border-radius: var(--radius-md);
    background: var(--bg-white);
}

.cg-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.9375rem;
    min-width: 520px;
}

.cg-table caption {
    caption-side: top;
    text-align: left;
    padding: var(--space-sm) var(--space-md);
    font-size: 0.8125rem;
    color: var(--text-muted);
    border-bottom: 1px solid var(--border);
}

.cg-table th,
.cg-table td {
    padding: var(--space-sm) var(--space-md);
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid var(--border-light);
    line-height: 1.55;
    color: var(--text-muted);
}

.cg-table thead th {
    background: var(--bg-muted);
    font-weight: 700;
    color: var(--text);
    white-space: nowrap;
}

.cg-table tbody th {
    font-weight: 600;
    color: var(--text);
    background: var(--bg);
}

.cg-table tbody tr:last-child th,
.cg-table tbody tr:last-child td { border-bottom: none; }

.cg-faq h3 { font-size: 1.0625rem; }

.cg-sources { font-size: 0.9375rem; }
.cg-sources li { margin-bottom: var(--space-sm); }

@media (max-width: 640px) {
    .cg h2 { font-size: 1.1875rem; }
    .cg-lede { font-size: 1rem; }
    .cg-calc { font-size: 0.875rem; }
}
