@media (min-width: 768px) and (max-width: 1300px) {
  .jmec .jmec-hero-copy .jmec-boundary { display: none; }
  .jmec .jmec-hero-grid { gap: 42px; }
  .jmec .jmec-actions { margin-top: 20px; }
  .jmec .jmec-proof { margin-top: 18px; }
}

@media (max-width: 1024px) {
  .jmec h1 { font-size: 44px; }
  .jmec h2 { font-size: 34px; }
  .jmec .jmec-hero-grid { gap: 38px; grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr); }
  .jmec .jmec-boundaries-grid, .jmec .jmec-engineering-grid, .jmec .jmec-rfq-grid, .jmec .jmec-faq-grid { gap: 46px; }
  .jmec .jmec-process-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); row-gap: 28px; }
  .jmec .jmec-process-grid li:nth-child(4) { border-left: 0; padding-left: 0; }
  .jmec .jmec-related-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .jmec .jmec-related-grid a:nth-child(4) { border-left: 1px solid var(--line); }
}

@media (max-width: 767px) {
  .jmec h1 { font-size: 31px !important; margin-bottom: 16px; }
  .jmec-wearable h1 { font-size: 28px !important; }
  .jmec h2 { font-size: 29px; }
  .jmec h3 { font-size: 19px; }
  .jmec p { font-size: 16px; }
  .jmec .jmec-shell { padding-left: 18px; padding-right: 18px; }
  .jmec .jmec-breadcrumb { overflow-wrap: anywhere; padding: 16px 18px 10px; }
  .jmec .jmec-hero-grid { gap: 12px; grid-template-columns: 1fr; min-height: 0; padding-bottom: 30px; padding-top: 8px; }
  .jmec .jmec-hero-media { grid-row: 1; min-height: 250px; padding: 0; }
  .jmec .jmec-hero-media img { height: 240px; }
  .jmec .jmec-hero-media figcaption { display: none; }
  .jmec .jmec-hero-copy { grid-row: 2; }
  .jmec .jmec-lead { font-size: 15px; line-height: 1.48; margin-bottom: 10px; }
  .jmec .jmec-hero-copy .jmec-boundary { display: none; }
  .jmec .jmec-actions { align-items: stretch; flex-direction: column; margin-top: 16px; }
  .jmec .jmec-button { width: 100%; }
  .jmec .jmec-hero .jmec-button-secondary { display: none; }
  .jmec .jmec-proof { display: none; }
  .jmec .jmec-boundaries, .jmec .jmec-routes, .jmec .jmec-engineering, .jmec .jmec-options, .jmec .jmec-process, .jmec .jmec-rfq, .jmec .jmec-related, .jmec .jmec-faq { padding: 62px 0; }
  .jmec .jmec-boundaries-grid, .jmec .jmec-engineering-grid, .jmec .jmec-rfq-grid, .jmec .jmec-faq-grid { grid-template-columns: 1fr; }
  .jmec .jmec-scope-columns { border-left: 0; border-top: 1px solid var(--line); grid-template-columns: 1fr; padding-left: 0; padding-top: 30px; }
  .jmec .jmec-route-grid { grid-template-columns: 1fr; }
  .jmec .jmec-route-card { min-height: 0; }
  .jmec .jmec-engineering figure { order: 2; }
  .jmec .jmec-engineering-grid > div { order: 1; }
  .jmec .jmec-engineering-point { grid-template-columns: 92px 1fr; }
  .jmec .jmec-option-grid { grid-template-columns: 1fr; }
  .jmec .jmec-option-grid div, .jmec .jmec-option-grid div:nth-child(even) { border-left: 0; gap: 8px; grid-template-columns: 1fr; padding: 18px 0; }
  .jmec .jmec-process-grid { grid-template-columns: 1fr; }
  .jmec .jmec-process-grid li, .jmec .jmec-process-grid li:first-child, .jmec .jmec-process-grid li:nth-child(4) { border-left: 0; border-top: 1px solid var(--line); min-height: 0; padding: 22px 0; }
  .jmec .jmec-process-grid span { margin-bottom: 12px; }
  .jmec .jmec-rfq-grid ul { column-count: 1; }
  .jmec .jmec-related-grid { grid-template-columns: 1fr; }
  .jmec .jmec-related-grid a, .jmec .jmec-related-grid a:first-child, .jmec .jmec-related-grid a:nth-child(4) { border-left: 1px solid var(--line); min-height: 0; }
  .jmec .jmec-related-grid span { margin-bottom: 16px; }
  .jmec .jmec-final { padding: 58px 0; }
  .jmec .jmec-final-grid { grid-template-columns: 1fr; }
  .jmec .jmec-final .jmec-actions { justify-content: flex-start; }
}

@media (max-width: 420px) {
  .jmec h1 { font-size: 31px !important; overflow-wrap: anywhere; }
  .jmec-wearable h1 { font-size: 28px !important; }
  .jmec h2 { font-size: 27px; }
  .jmec .jmec-engineering-point { gap: 8px; grid-template-columns: 1fr; }
  .jmec .jmec-engineering-point > div { grid-column: 1; }
}
