/* Responsive overrides */
@media (max-width: 1024px) {
    .col-3 { width: 50%; }
    .col-4 { width: 50%; }
    .col-8 { width: 100%; }
}

@media (max-width: 768px) {
    .sidebar { transform: translateX(-100%); }
    .sidebar.open { transform: translateX(0); }
    .main-content { margin-left: 0; }

    .col-2, .col-3, .col-4, .col-6, .col-8 { width: 100%; }

    .topbar { padding: 0 12px; }
    .page-content { padding: 12px; }

    table { font-size: 12px; }
    table th, table td { padding: 8px 10px; }

    .btn { padding: 7px 12px; font-size: 12px; }
    .btn-sm { padding: 4px 8px; font-size: 11px; }

    .land-nav ul { display: none; }
    .land-hero h1 { font-size: 2em; }
    .land-hero p  { font-size: 1em; }
    .land-stats   { gap: 24px; }
    .land-contact-grid { grid-template-columns: 1fr; }
    .land-testimonials { padding: 24px; }
    .land-section { padding: 48px 16px; }
}

@media (max-width: 480px) {
    .land-hero-btns { flex-direction: column; align-items: center; }
    .land-stat-number { font-size: 1.6em; }
    .land-features { grid-template-columns: 1fr; }
    .land-stats-grid { grid-template-columns: repeat(2, 1fr); }
    .report-summary { grid-template-columns: repeat(2, 1fr); }
}

/* Mobile sidebar overlay */
.sidebar-overlay {
    display: none;
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,0.5);
    z-index: 999;
}

.sidebar-overlay.show { display: block; }

@media (max-width: 768px) {
    .sidebar.open ~ .sidebar-overlay { display: block; }
}
