/* Blocchi di approfondimento settoriale (landing SEO per settore) */

.dl-card {
    display: flex;
    gap: 1.5rem;
    align-items: flex-start;
    background: var(--bg-alt);
    border: 1px solid var(--border);
    border-left: 4px solid var(--primary);
    border-radius: var(--radius);
    padding: 1.5rem 1.75rem;
    margin: 2rem 0;
}
.dl-card-icon { font-size: 2rem; line-height: 1; flex-shrink: 0; }
.dl-card-body { flex: 1; }
.dl-card-body h2 { font-size: 1.25rem; margin: 0 0 0.5rem; }
.dl-card-body p { margin: 0 0 1rem; color: var(--text-muted); }
.dl-card-meta { font-size: 0.8125rem; color: var(--text-muted); margin-top: 0.75rem; }

.data-table-wrap { overflow-x: auto; margin: 1.5rem 0; }
.data-table {
    width: 100%;
    min-width: 640px;
    border-collapse: collapse;
    font-size: 0.875rem;
}
.data-table caption {
    caption-side: bottom;
    text-align: left;
    font-size: 0.8125rem;
    color: var(--text-muted);
    padding-top: 0.75rem;
}
.data-table th,
.data-table td {
    border: 1px solid var(--border);
    padding: 0.625rem 0.75rem;
    text-align: left;
    vertical-align: top;
}
.data-table thead th {
    background: var(--bg-alt);
    font-weight: 600;
    font-size: 0.8125rem;
}
.data-table tbody th { font-weight: 600; background: transparent; }
.data-table code {
    font-size: 0.8125rem;
    background: var(--bg-alt);
    padding: 1px 5px;
    border-radius: 3px;
    white-space: nowrap;
}

.deep-block { margin: 3rem 0; }
.deep-block h2 { font-size: 1.5rem; margin: 0 0 0.75rem; }
.deep-block h3 { font-size: 1.0625rem; margin: 1.5rem 0 0.5rem; }
.deep-block p { margin: 0 0 1rem; line-height: 1.7; }
.deep-block ul, .deep-block ol { margin: 0 0 1rem 1.25rem; line-height: 1.7; }
.deep-block li { margin: 0.35rem 0; }

.callout {
    background: #fef9c3;
    border-left: 4px solid #ca8a04;
    padding: 1rem 1.25rem;
    border-radius: 0 var(--radius) var(--radius) 0;
    margin: 1.5rem 0;
    font-size: 0.9375rem;
}
.callout p:last-child { margin-bottom: 0; }

.sources-note { font-size: 0.8125rem; color: var(--text-muted); margin-top: 1rem; }
.sources-note a { color: inherit; }

@media (max-width: 640px) {
    .dl-card { flex-direction: column; gap: 0.75rem; padding: 1.25rem; }
}
