@media (max-width: 1024px) {
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
  .grid-4 { grid-template-columns: repeat(2, 1fr); }
  .hero-title { font-size: 2.25rem; }
}

@media (max-width: 768px) {
  .header-nav { display: none; }
  .header-search { display: none; }
  .hamburger { display: flex; }

  .hero { padding: 40px 0 32px; }
  .hero-title { font-size: 1.875rem; }
  .hero-subtitle { font-size: 1rem; }

  .calc-layout { grid-template-columns: 1fr; }

  .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr; }

  .footer-grid { grid-template-columns: 1fr; gap: 24px; }
  .footer-tagline { max-width: 100%; }

  .section { padding: 40px 0; }
  .container { padding: 0 16px; }

  .calc-panel { padding: 20px; }
  .result-value { font-size: 1.625rem; }

  .cat-hero-title { font-size: 1.5rem; }

  .calc-action-bar { padding: 12px 16px; }
  .section-title { font-size: 1.25rem; }

  .hero-stats { gap: 16px; }
  .hero-stat { font-size: 0.875rem; }
}

@media (max-width: 480px) {
  .hero-title { font-size: 1.5rem; }
  .calc-title { font-size: 1.5rem; }
  .toggle-group { flex-direction: column; }
  .toggle-btn { text-align: center; }
  .calc-actions { flex-direction: column; }
  .calc-actions .btn { width: 100%; }
  .footer-bottom { flex-direction: column; align-items: flex-start; }
  .footer-bottom-links { flex-wrap: wrap; gap: 16px; }
  .data-table th, .data-table td { padding: 8px 10px; font-size: 0.8125rem; }
}

@media (min-width: 1024px) {
  .grid-3 { grid-template-columns: repeat(3, 1fr); }
}

@media (min-width: 1280px) {
  .grid-4 { grid-template-columns: repeat(4, 1fr); }
}

@media print {
  .site-header, .site-footer, .calc-action-bar,
  .no-print, .fav-btn, .action-bar { display: none !important; }
  body { background: #fff; color: #000; }
  .calc-panel { box-shadow: none; border: 1px solid #ccc; }
  .data-table-wrapper { overflow: visible; }
}
