@media (max-width: 540px) {
  header { height: 62px; padding: 0 12px; }
  header h1 { font-size: 17px; }
  header p { display: none; }
  .rate-chip { padding-left: 8px; }
  .rate-chip strong { font-size: 13px; }
  .page { padding: 12px 9px 24px; }
  .section-head { margin-bottom: 10px; }
  .section-head h2 { font-size: 21px; }
  .section-head p { display: none; }
  .section-head .secondary { padding: 8px 11px; }
  .estimate-grid { gap: 10px; }
  .form-card { padding: 12px; }
  .form-card h3 { margin: 0 0 10px; }
  .form-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  .form-grid .wide,
  .form-grid .mobile-wide { grid-column: 1 / -1; }
  .form-grid label { min-width: 0; gap: 4px; font-size: 10px; }
  .form-grid input,
  .form-grid select { min-width: 0; padding: 8px; font-size: 13px; }
  .tag-input-group { grid-template-columns: minmax(0, 1fr) 64px; }
  .scan-button { min-width: 64px; padding: 7px; }
  .tag-image-panel { min-height: 48px; }
  .tag-image-panel img { height: 58px; }
  .product-options { right: auto; width: min(280px, 88vw); max-height: 180px; }
  .estimate-result { padding: 14px; }
  .result-title { padding-bottom: 10px; }
  .result-title strong { margin-top: 4px; font-size: 25px; }
  .breakdown { display: grid; grid-template-columns: 1fr 1fr; gap: 0 14px; padding: 7px 0; }
  .breakdown div { padding: 5px 0; font-size: 10px; }
  .estimate-result .primary { padding: 10px; }
  .fine-print { display: none; }
}
.employee-mobile-select { display: none; }
@media (max-width: 540px) {
  .employee-search-desktop { display: none; }
  .employee-mobile-select { display: block; }
}
