/* Shared responsive layout; keep desktop layouts unchanged. */
@media (max-width: 1100px) {
  .site-header {gap:18px}
  .header-phone {display:none}
}
@media (max-width: 900px) {
  .container {width:calc(100% - 40px);min-width:0}
  .site-header {height:78px;padding:0 20px;gap:16px}
  .site-header .brand {flex-shrink:0}
  .site-header .ftm-logo {width:132px;height:auto;max-width:100%}
  .site-header .menu-toggle {display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;margin-left:auto;cursor:pointer;color:inherit}
  .site-header .header-actions {margin-left:auto}
  .site-header nav {display:none;position:absolute;inset:100% 0 auto;transform:none;width:100%;max-height:calc(100dvh - 78px);overflow-y:auto;padding:16px 20px;background:#071a2e;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 16px 24px #0002}
  .site-header nav.open {display:flex}
  .site-header nav a {color:#fff;display:block;padding:12px 0;font-size:15px}
  .site-header nav .nav-dropdown {width:100%;position:relative;gap:8px}
  .site-header .nav-products-toggle {color:#f15a24;min-width:44px;min-height:44px}
  .site-header nav .products-menu {position:static;inset:auto;transform:none;min-width:0;width:100%;max-height:none;box-shadow:none;background:#102b3e;padding:8px 16px}
  .site-header nav .products-menu a {white-space:normal;font-size:14px}
  .products-page .products-layout {grid-template-columns:minmax(0,1fr)}
  .products-page .products-filter {position:static;min-width:0;max-width:100%;width:100%}
  #products-categories {display:flex;gap:8px;overflow-x:auto;max-width:100%;padding-bottom:8px;overscroll-behavior-x:contain}
  .products-category {flex:0 0 auto;width:auto;gap:12px;min-height:44px;font-family:inherit}
  .products-toolbar,.products-toolbar>div,.products-search {min-width:0}
  .footer-grid>*,.contact-map-layout>*,.blog-feature-area>*,.machine-overview>* {min-width:0}
  .footer-contact {grid-template-columns:1fr;align-items:start}
  .footer-contact p {max-width:none}
  .footer-contact a {overflow-wrap:anywhere}
  .footer-credit {white-space:normal}
}
@media (max-width: 600px) {
  .container {width:calc(100% - 32px)}
  .site-header {height:70px;padding:0 16px;gap:12px}
  .site-header .header-actions {display:none}
  .site-header nav {max-height:calc(100dvh - 70px)}
  .hero h1,.about-hero h1,.services-hero h1,.contact-page-hero h1 {font-size:clamp(32px,9vw,46px);line-height:1.08;overflow-wrap:break-word}
  .section h2,.faq-intro h2 {font-size:clamp(30px,8.5vw,40px);line-height:1.08}
  .hero-cta {flex-wrap:wrap;gap:12px}
  .hero-stats {flex-wrap:wrap;row-gap:20px}
  .global-reach-copy h2,.blog-page-heading h1 {white-space:normal;font-size:clamp(28px,7.5vw,38px);line-height:1.12}
  .products-page .products-grid {grid-template-columns:minmax(0,1fr);gap:20px}
  .products-page .product-photo {height:230px}
  .products-page .product-card h3 {min-height:0;font-size:17px;line-height:1.4;margin-bottom:12px}
  .products-page .product-card-copy {padding:20px}
  .products-page .product-card-copy>span {min-height:0;font-size:13px}
  .products-page .product-card-actions {flex-wrap:nowrap}
  .products-page .product-detail {min-width:0;min-height:44px;font-size:12px}
  .products-page .product-quote {width:auto;min-height:44px;font-size:12px}
  .products-page .products-toolbar>div {flex-wrap:wrap}
  .products-page .products-search {flex:1 1 100%;width:100%;height:46px}
  .products-page .products-search input {font-size:16px}
  .products-page .products-toolbar select {width:100%;max-width:none;height:44px;font-size:14px}
  .products-intro .eyebrow {line-height:1.6;letter-spacing:.08em}
  .products-pagination {flex-wrap:wrap;gap:8px}
  .newsletter form {display:flex;flex-direction:column;min-width:0}
  .newsletter form input {min-width:0;width:100%;font-size:16px}
  .footer-grid {grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px 18px}
  .footer-contact {grid-template-columns:minmax(0,1fr)}
  .footer-bottom>span {line-height:1.8}
  .footer-bottom .footer-credit {display:block;margin-left:0;white-space:normal}
  .machine-breadcrumb {flex-wrap:wrap}
  .machine-actions {flex-wrap:wrap}
  .machine-summary h1 {overflow-wrap:break-word}
}
