/* mstfab-mobile-site-table-late-guard-20260801 */
@media (max-width: 767px) {
  body .elementor table,
  body main table,
  body .site-main table,
  body .page-content table,
  body .entry-content table {
    display: block !important;
    width: min(100%, calc(100vw - 36px)) !important;
    max-width: calc(100vw - 36px) !important;
    min-width: 0 !important;
    margin: 22px 0 !important;
    border: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background: transparent !important;
    overflow: visible !important;
  }

  body .elementor table thead,
  body main table thead,
  body .site-main table thead,
  body .page-content table thead,
  body .entry-content table thead {
    display: none !important;
  }

  body .elementor table tbody,
  body .elementor table tr,
  body .elementor table th,
  body .elementor table td,
  body main table tbody,
  body main table tr,
  body main table th,
  body main table td,
  body .site-main table tbody,
  body .site-main table tr,
  body .site-main table th,
  body .site-main table td,
  body .page-content table tbody,
  body .page-content table tr,
  body .page-content table th,
  body .page-content table td,
  body .entry-content table tbody,
  body .entry-content table tr,
  body .entry-content table th,
  body .entry-content table td {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  body .elementor table tr,
  body main table tr,
  body .site-main table tr,
  body .page-content table tr,
  body .entry-content table tr {
    margin: 0 0 12px !important;
    border: 1px solid var(--mst-mobile-line, #d9e6ed) !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-shadow: 0 10px 28px rgba(16, 42, 58, 0.05) !important;
  }

  body .elementor table th,
  body .elementor table td,
  body main table th,
  body main table td,
  body .site-main table th,
  body .site-main table td,
  body .page-content table th,
  body .page-content table td,
  body .entry-content table th,
  body .entry-content table td {
    min-width: 0 !important;
    padding: 13px 14px !important;
    border: 0 !important;
    border-bottom: 1px solid #edf2f5 !important;
    background: #ffffff !important;
    color: var(--mst-mobile-muted, #4f6275) !important;
    font-size: 15px !important;
    line-height: 1.56 !important;
    text-align: left !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: anywhere !important;
  }

  body .elementor table th:first-child,
  body .elementor table td:first-child,
  body main table th:first-child,
  body main table td:first-child,
  body .site-main table th:first-child,
  body .site-main table td:first-child,
  body .page-content table th:first-child,
  body .page-content table td:first-child,
  body .entry-content table th:first-child,
  body .entry-content table td:first-child {
    background: var(--mst-mobile-tint, #edf6f8) !important;
    color: var(--mst-mobile-ink, #10223b) !important;
    font-weight: 800 !important;
  }

  body .elementor table th:last-child,
  body .elementor table td:last-child,
  body main table th:last-child,
  body main table td:last-child,
  body .site-main table th:last-child,
  body .site-main table td:last-child,
  body .page-content table th:last-child,
  body .page-content table td:last-child,
  body .entry-content table th:last-child,
  body .entry-content table td:last-child {
    border-bottom: 0 !important;
  }

  /* CNC machining page: tighten mobile layout without changing desktop. */
  body.page-id-1592 {
    background: #09131f !important;
  }

  body.page-id-1592 .elementor-element-mst1592cnc {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: -18px 0 0 !important;
    padding: 0 !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  body.page-id-1592 .elementor-element-mst1592cnc > .e-con-inner,
  body.page-id-1592 .elementor-element-mst1592cnc > .elementor-widget-container {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.page-id-1592 .mst-cnc {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  body.page-id-1592 .mst-cnc .hero {
    margin: 0 !important;
    padding: 48px 20px 46px !important;
    min-height: auto !important;
    overflow: hidden !important;
    background-color: #0b2331 !important;
    background-position: center top !important;
  }

  body.page-id-1592 .mst-cnc .hero .wrap,
  body.page-id-1592 .mst-cnc section > .wrap {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  body.page-id-1592 .mst-cnc .hero h1 {
    margin: 0 0 16px !important;
    color: #ffffff !important;
    font-size: 34px !important;
    line-height: 1.14 !important;
    letter-spacing: 0 !important;
    max-width: 100% !important;
  }

  body.page-id-1592 .mst-cnc .hero p,
  body.page-id-1592 .mst-cnc .hero li {
    color: #edf7fa !important;
    font-size: 16px !important;
    line-height: 1.66 !important;
  }

  body.page-id-1592 .mst-cnc .hero .chips,
  body.page-id-1592 .mst-cnc .chips {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin: 0 0 24px !important;
  }

  body.page-id-1592 .mst-cnc .hero .chip,
  body.page-id-1592 .mst-cnc .chip {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 34px !important;
    padding: 8px 12px !important;
    border-radius: 999px !important;
    color: #ffffff !important;
    background: rgba(7, 25, 39, 0.45) !important;
    border: 1px solid rgba(255, 255, 255, 0.5) !important;
    font-size: 13px !important;
    line-height: 1.2 !important;
    font-weight: 800 !important;
    letter-spacing: 0 !important;
    white-space: normal !important;
  }

  body.page-id-1592 .mst-cnc section {
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  body.page-id-1592 .mst-cnc .projects {
    padding-top: 44px !important;
    padding-bottom: 42px !important;
  }

  body.page-id-1592 .mst-cnc .cnc-project-card {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 6px !important;
    border: 1px solid var(--mst-mobile-line, #d9e6ed) !important;
    background: #ffffff !important;
    overflow: hidden !important;
    box-shadow: 0 10px 28px rgba(16, 42, 58, 0.06) !important;
  }

  body.page-id-1592 .mst-cnc .cnc-project-card figure {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    aspect-ratio: 4 / 3 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #eaf1f5 !important;
    overflow: hidden !important;
  }

  body.page-id-1592 .mst-cnc .cnc-project-card figure img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center center !important;
    position: static !important;
    transform: none !important;
  }

  body.page-id-1592 .mst-cnc .cnc-project-body {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 20px 22px 24px !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
  }

  body.page-id-1592 .mst-cnc .cnc-project-body h3 {
    display: block !important;
    margin: 0 0 10px !important;
    color: #071927 !important;
    font-size: 20px !important;
    line-height: 1.24 !important;
    letter-spacing: 0 !important;
    clear: both !important;
  }

  body.page-id-1592 .mst-cnc .cnc-project-body p {
    margin: 0 0 20px !important;
    color: #4f6275 !important;
    font-size: 15.5px !important;
    line-height: 1.62 !important;
  }

  body.page-id-1592 .mst-cnc .cnc-project-body .cnc-project-btn,
  body.page-id-1592 .mst-cnc .cnc-project-body .cnc-btn {
    width: 100% !important;
    min-height: 44px !important;
    margin: 0 !important;
    border-radius: 5px !important;
    background: var(--mst-mobile-brand, #0f7c90) !important;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 800 !important;
  }

  body.page-id-1592 .mst-cnc .faq {
    padding-bottom: 34px !important;
  }

  body.page-id-1592 .mst-cnc .final-cta {
    display: block !important;
    margin: 0 !important;
    padding: 46px 20px !important;
    background: #0b3a4a !important;
    color: #ffffff !important;
    overflow: hidden !important;
  }

  body.page-id-1592 .mst-cnc .final-cta h2 {
    margin: 0 0 18px !important;
    color: #ffffff !important;
    font-size: 27px !important;
    line-height: 1.18 !important;
    letter-spacing: 0 !important;
  }

  body.page-id-1592 .mst-cnc .final-cta p {
    margin: 0 auto 26px !important;
    color: #eef8fb !important;
    font-size: 16px !important;
    line-height: 1.68 !important;
    max-width: 340px !important;
  }

  body.page-id-1592 .mst-cnc .final-cta .cnc-btn,
  body.page-id-1592 .mst-cnc .final-cta a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: min(100%, 306px) !important;
    min-height: 50px !important;
    margin: 0 auto !important;
    border-radius: 5px !important;
    background: #ffffff !important;
    color: #082033 !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    text-align: center !important;
  }

  body.page-id-1592 footer.elementor-location-footer {
    margin-top: 0 !important;
  }

  /* Our Services hub: mobile visual polish and spacing repair. */
  body.page-id-19375 {
    background: #09131f !important;
    overflow-x: hidden !important;
  }

  body.page-id-19375 #mstfab-floating-contact,
  body.page-id-19375 .mstfab-floating-contact {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  body.page-id-19375 .mst-our-services {
    margin-top: -32px !important;
    background: #09131f !important;
    font-family: Inter, Arial, Helvetica, sans-serif !important;
    overflow: hidden !important;
  }

  body.page-id-19375 .mst-our-services *,
  body.page-id-19375 .mst-our-services .os-btn,
  body.page-id-19375 .mst-our-services p,
  body.page-id-19375 .mst-our-services h1,
  body.page-id-19375 .mst-our-services h2,
  body.page-id-19375 .mst-our-services h3 {
    font-family: Inter, Arial, Helvetica, sans-serif !important;
    letter-spacing: 0 !important;
  }

  body.page-id-19375 .mst-our-services + p,
  body.page-id-19375 .mst-our-services ~ p:empty,
  body.page-id-19375 .mst-our-services > p:empty,
  body.page-id-19375 .mst-our-services p:empty {
    display: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0 !important;
    line-height: 0 !important;
  }

  body.page-id-19375 .mst-our-services .os-wrap {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  body.page-id-19375 .mst-our-services .os-hero {
    margin: 0 !important;
    padding: 56px 0 42px !important;
    background: linear-gradient(145deg, #061521 0%, #092532 58%, #0b3d4d 100%) !important;
  }

  body.page-id-19375 .mst-our-services .os-hero-grid {
    gap: 26px !important;
  }

  body.page-id-19375 .mst-our-services .os-eyebrow {
    margin-bottom: 12px !important;
    color: #39c6d4 !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
    letter-spacing: 0 !important;
  }

  body.page-id-19375 .mst-our-services h1 {
    margin: 0 0 18px !important;
    font-size: 43px !important;
    line-height: 1.06 !important;
    letter-spacing: 0 !important;
  }

  body.page-id-19375 .mst-our-services .os-lede {
    margin: 0 !important;
    max-width: 100% !important;
    color: #e5f2f6 !important;
    font-size: 17px !important;
    line-height: 1.66 !important;
  }

  body.page-id-19375 .mst-our-services .os-actions {
    margin-top: 28px !important;
    gap: 12px !important;
  }

  body.page-id-19375 .mst-our-services .os-btn {
    min-height: 50px !important;
    border-radius: 6px !important;
    font-size: 15px !important;
    letter-spacing: 0 !important;
  }

  body.page-id-19375 .mst-our-services .os-hero-media {
    margin: 0 !important;
    border-radius: 8px !important;
    background: #071b28 !important;
    box-shadow: none !important;
  }

  body.page-id-19375 .mst-our-services .os-hero-media img {
    height: 270px !important;
    object-fit: cover !important;
  }

  body.page-id-19375 .mst-our-services .os-hero-caption {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    padding: 12px !important;
    background: #071b28 !important;
  }

  body.page-id-19375 .mst-our-services .os-hero-caption span {
    padding: 15px 16px !important;
    border-radius: 6px !important;
    border: 1px solid rgba(83, 199, 213, 0.22) !important;
    background: #0d2b38 !important;
    color: #d7ebf1 !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
  }

  body.page-id-19375 .mst-our-services .os-hero-caption strong {
    color: #ffffff !important;
    font-size: 18px !important;
    line-height: 1.2 !important;
    margin-bottom: 5px !important;
  }

  body.page-id-19375 .mst-our-services section.os-section {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }

  body.page-id-19375 .mst-our-services .os-section-head {
    margin-bottom: 24px !important;
  }

  body.page-id-19375 .mst-our-services .os-section-head h2,
  body.page-id-19375 .mst-our-services .os-proof-panel h2 {
    font-size: 30px !important;
    line-height: 1.14 !important;
  }

  body.page-id-19375 .mst-our-services .os-proof-grid {
    gap: 16px !important;
  }

  body.page-id-19375 .mst-our-services .os-proof-panel {
    padding: 22px !important;
    border-radius: 8px !important;
  }

  body.page-id-19375 .mst-our-services .os-proof-panel:nth-child(2) {
    padding: 20px !important;
  }

  body.page-id-19375 .mst-our-services .os-proof-list {
    display: block !important;
    grid-template-columns: none !important;
    gap: 10px !important;
    row-gap: 10px !important;
    margin-top: 16px !important;
    font-size: 0 !important;
  }

  body.page-id-19375 .mst-our-services .os-proof-list span {
    display: flex !important;
    align-items: center !important;
    min-height: 44px !important;
    width: 100% !important;
    margin: 0 0 10px !important;
    padding: 12px 14px !important;
    border-radius: 6px !important;
    border: 1px solid #dcebed !important;
    background: #edf7f9 !important;
    color: #082033 !important;
    font-size: 15px !important;
    line-height: 1.35 !important;
  }

  body.page-id-19375 .mst-our-services .os-proof-list span:last-child {
    margin-bottom: 0 !important;
  }

  body.page-id-19375 .mst-our-services section.os-section:last-of-type {
    margin: 0 !important;
    padding: 0 !important;
    background: #0b3a4a !important;
  }

  body.page-id-19375 .mst-our-services section.os-section:last-of-type .os-wrap {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body.page-id-19375 .mst-our-services .os-quote {
    display: block !important;
    margin: 0 !important;
    padding: 40px 22px 30px !important;
    border-radius: 0 !important;
    background: #0b3a4a !important;
    box-shadow: none !important;
    text-align: center !important;
  }

  body.page-id-19375 .mst-our-services .os-quote h2 {
    font-size: 29px !important;
    line-height: 1.16 !important;
  }

  body.page-id-19375 .mst-our-services .os-quote p {
    max-width: 340px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    color: #e4f3f7 !important;
  }

  body.page-id-19375 .mst-our-services .os-quote .os-actions {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 28px auto 0 !important;
    padding: 0 9px !important;
  }

  body.page-id-19375 .mst-our-services .os-quote .os-btn {
    width: 100% !important;
    margin: 0 !important;
  }

  body.page-id-19375 footer.elementor-location-footer {
    margin-top: 0 !important;
  }
}
