/* Phone layouts are composed vertically. Do not shrink desktop controls or
   depend on clipping to make a fixed-size card fit a narrow viewport. */
.product-lineup-stage{display:contents}
.mobile-scroll-hint{display:none}
@media(max-width:760px){
  .nuxt-page-shell main{min-width:0}
  .nuxt-page-shell .secondary-back{top:14px!important;right:64px!important;left:auto!important;z-index:1001!important}
  .nuxt-page-shell main a.head-single{height:auto!important;min-height:48px!important;padding:14px 20px!important;justify-content:center!important;align-items:center!important;text-align:center!important}
  .nuxt-page-shell .product-hero{height:auto!important;min-height:0!important;padding:56px 0 40px!important}
  .nuxt-page-shell .product-hero .hero-copy{position:relative!important;inset:auto!important;width:auto!important;margin:0 20px!important}
  .nuxt-page-shell .product-hero .hero-copy p{width:100%!important;margin-top:20px!important}
  .nuxt-page-shell .product-lineup-stage{display:block;position:relative;margin-top:28px;width:100%;aspect-ratio:1680/790}
  .nuxt-page-shell .product-lineup-stage .industrial-lineup{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:contain!important}
  .nuxt-page-shell .product-lineup-stage .hotspots{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}
  .nuxt-page-shell .product-hero .hotspot-detail{position:static!important;width:auto!important;height:auto!important;margin:16px 20px 0!important;transform:none!important}
  .nuxt-page-shell .product-hero .hotspot-detail.is-open{display:block!important;opacity:1!important;visibility:visible!important}
  .nuxt-page-shell .faqs .faq-list summary{height:auto!important;min-height:72px!important;padding:20px 0!important;gap:16px!important;font-size:18px!important;line-height:1.45!important}
  .nuxt-page-shell .faqs .faq-list summary span{flex-shrink:0!important}
  .nuxt-page-shell .faqs .faq-list p{width:100%!important;margin:0!important;padding-bottom:24px!important}
  .nuxt-page-shell .latest-cases .case-track article>div{height:auto!important;padding:20px!important}
  .nuxt-page-shell .latest-cases .case-track p{display:-webkit-box!important;white-space:normal!important;width:auto!important;margin:12px 24px 0 0!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important}
  .nuxt-page-shell .overview-gallery{display:flex!important;flex-direction:column!important;gap:16px!important}
  .nuxt-page-shell .overview-gallery .overview-stage{order:0;width:100%!important;height:auto!important;aspect-ratio:1/1}
  .nuxt-page-shell .overview-gallery .thumbs{order:1;flex-direction:row!important;flex-wrap:wrap!important;gap:12px!important}
  .nuxt-page-shell .related-grid{grid-template-columns:minmax(0,1fr)!important;gap:32px!important}
  .nuxt-page-shell .related-grid .related-card>div{height:300px!important}
  .nuxt-page-shell .mobile-scroll-hint{display:block;color:#596273;font-size:14px!important;line-height:1.5!important;margin:24px 0 12px!important}
  .nuxt-page-shell .mobile-scroll-hint+.spec-table-wrap{margin-top:0!important}
  .nuxt-page-shell .solution-cases .case-heading>a{width:100%!important;height:auto!important;min-height:48px!important;border-radius:999px!important;padding:14px 20px!important;aspect-ratio:auto!important}
  .nuxt-page-shell :is(.industry-application-tabs,.industry-object-tabs,.product-series-tabs){display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;overflow:visible!important;height:auto!important}
  .nuxt-page-shell :is(.industry-application-tabs,.industry-object-tabs,.product-series-tabs)>button{width:100%!important;min-width:0!important;min-height:52px!important;height:auto!important;padding:12px!important;white-space:normal!important;font-size:14px!important;line-height:1.4!important}

  .nuxt-page-shell main :is(.actions,.head-actions,.head-single,.shared-cta-actions){
    display:flex!important;position:static!important;width:100%!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important;
  }
  .nuxt-page-shell main :is(.actions,.head-actions,.head-single,.shared-cta-actions)>a{
    display:flex!important;width:100%!important;max-width:100%!important;min-width:0!important;min-height:48px!important;height:auto!important;padding:14px 20px!important;justify-content:center!important;align-items:center!important;white-space:normal!important;line-height:1.4!important;text-align:center!important;
  }
  .nuxt-page-shell main .hero .actions{grid-template-columns:minmax(0,1fr)!important}
  .nuxt-page-shell main .hero .actions .button{font-size:14px!important;white-space:normal!important;min-height:48px!important;line-height:1.4!important}
  .nuxt-page-shell>main>.hero:first-child{
    display:flex!important;height:auto!important;min-height:0!important;padding:56px 0 0!important;flex-direction:column!important;
  }
  .nuxt-page-shell>main>.hero:first-child .hero-content{
    position:relative!important;inset:auto!important;order:0;width:auto!important;max-width:none!important;margin:0 20px!important;padding:0!important;
  }
  .nuxt-page-shell>main>.hero:first-child .hero-content h1{width:auto!important;max-width:100%!important}
  .nuxt-page-shell>main>.hero:first-child .hero-content>p{width:auto!important;max-width:100%!important;margin:20px 0 24px!important}
  .nuxt-page-shell>main>.hero:first-child .hero-media{
    position:relative!important;inset:auto!important;order:1;width:100%!important;height:340px!important;min-height:0!important;margin-top:24px!important;
  }
  .nuxt-page-shell>main>.hero:first-child .hero-fade{background:linear-gradient(180deg,#f3f4f6,rgba(243,244,246,0) 30%)!important}
  .nuxt-page-shell>main>.hero:first-child .logo-strip{position:relative!important;inset:auto!important;order:2;height:74px!important}
  .nuxt-page-shell>main>.hero:first-child .hero-pagination{bottom:98px!important}
  .nuxt-page-shell #why{height:auto!important;min-height:0!important;padding-bottom:0!important}
  .nuxt-page-shell #why .why-copy{padding-top:64px!important}
  .nuxt-page-shell #why .why-copy h2{width:100%!important}
  .nuxt-page-shell #why .stats{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;margin-top:28px!important;align-items:stretch!important}
  .nuxt-page-shell #why .stats article{height:auto!important;min-height:160px!important;min-width:0!important;padding:20px 16px!important;gap:10px!important}
  .nuxt-page-shell #why .stats strong{font-size:clamp(28px,8vw,36px)!important;line-height:1.15!important;letter-spacing:normal!important;white-space:nowrap!important}
  .nuxt-page-shell #why .stats sup{font-size:18px!important;line-height:1!important}
  .nuxt-page-shell #why .stats span{display:block!important;margin:0!important;font-size:16px!important;line-height:1.5!important;flex-shrink:0!important}
  .nuxt-page-shell #why .globe-wrap{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;aspect-ratio:2/1!important;margin:28px auto 0!important;transform:none!important}
  .nuxt-page-shell :is(.quality-card,.contact-grid article,.resource-panels>article,.benefit-grid article,.support-grid article,.partner-event-card){height:auto!important;min-width:0!important}
  .nuxt-page-shell :is(.quality-card,.contact-grid article,.resource-panels>article,.benefit-grid article,.support-grid article)>:is(p,h2,h3){flex-shrink:0!important}
  .nuxt-page-shell :is(.resource-links,.contact-grid){grid-template-columns:minmax(0,1fr)!important}
  .nuxt-page-shell .about-stat-grid{gap:12px!important;align-items:stretch!important}
  .nuxt-page-shell .about-stat-grid .about-stat{height:auto!important;min-height:164px!important;padding:20px 16px!important;min-width:0!important;gap:10px!important}
  .nuxt-page-shell .about-stat-grid .about-stat strong{font-size:clamp(28px,8vw,36px)!important;line-height:1.15!important;letter-spacing:normal!important;white-space:nowrap!important}
  .nuxt-page-shell .about-stat-grid .about-stat sup{font-size:18px!important;line-height:1!important}
  .nuxt-page-shell .about-stat-grid .about-stat span{margin:0!important;font-size:16px!important;line-height:1.5!important;flex-shrink:0!important}
  .nuxt-page-shell .quality-policy .quality-card p{display:block!important;max-height:none!important;overflow:visible!important;-webkit-line-clamp:unset!important}
  .nuxt-page-shell .contact-tabs{display:grid!important;width:100%!important;height:auto!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;margin:0 auto 16px!important;padding:0!important;overflow:visible!important;border-radius:0!important}
  .nuxt-page-shell .contact-tabs button,.nuxt-page-shell .contact-tabs button:first-child,.nuxt-page-shell .contact-tabs button.active{width:100%!important;min-width:0!important;height:auto!important;min-height:52px!important;margin:0!important;padding:12px 10px!important;border-radius:10px!important}
  .nuxt-page-shell .contact-tabs button:last-child{grid-column:1/-1!important}
  .nuxt-page-shell .contact-tabs button.active{background:#1f6fe0!important;color:#fff!important}
  .nuxt-page-shell .contact-card{border-radius:16px!important}
}
@media(max-width:360px){
  .nuxt-page-shell #why .stats{grid-template-columns:minmax(0,1fr)!important}
  .nuxt-page-shell #why .stats article{min-height:0!important;padding:24px!important}
  .nuxt-page-shell .about-stat-grid{grid-template-columns:minmax(0,1fr)!important}
  .nuxt-page-shell .about-stat-grid .about-stat{min-height:0!important;padding:24px!important}
}

@media(max-width:480px){.nuxt-page-shell .quality-applications .application-grid{grid-template-columns:minmax(0,1fr)!important}}

@media(max-width:760px){
  .nuxt-page-shell .product-hero .hero-copy p{display:block!important;overflow:visible!important;max-height:none!important;-webkit-line-clamp:unset!important}
  .nuxt-page-shell .precision-card{padding:24px!important}
  .nuxt-page-shell .precision-card>div{gap:8px!important;margin-top:20px!important}
  .nuxt-page-shell .precision-card strong{font-size:18px!important;line-height:1.4!important}
  .nuxt-page-shell .precision-card span{font-size:16px!important;line-height:1.5!important}
  .nuxt-page-shell .download-band>div{padding:56px 20px!important}
  .nuxt-page-shell .download-band{height:auto!important;min-height:360px!important}
  .nuxt-page-shell .news-directory{grid-template-columns:minmax(0,1fr)!important;width:100%!important;gap:32px!important}
  .nuxt-page-shell .news-directory>*{min-width:0!important;max-width:100%!important}
  .nuxt-page-shell .news-table-head{display:none!important}
  .nuxt-page-shell .news-directory .news-row{height:auto!important;min-height:0!important;grid-template-columns:minmax(0,1fr)!important;gap:8px!important;padding:20px 0!important}
  .nuxt-page-shell .news-directory .news-row a{padding-right:0!important}
  .nuxt-page-shell .news-directory .news-row span:first-of-type{display:block!important}
  .nuxt-page-shell .resource-content{padding-left:20px!important;padding-right:20px!important}
  .nuxt-page-shell #why .globe-wrap{aspect-ratio:1/1!important}
  .nuxt-page-shell #why .globe-surface{height:100%!important;touch-action:pan-y!important}
  .nuxt-page-shell #why .office-detail{left:20px!important;right:20px!important;top:auto!important;bottom:16px!important;width:auto!important;height:auto!important;max-width:none!important;padding:16px!important;transform:none!important;margin:0!important}
  .nuxt-page-shell #why .office-detail span{font-size:14px!important;line-height:1.5!important}
  .nuxt-page-shell .about-globe{height:auto!important;min-height:0!important;display:flex!important;flex-direction:column!important;padding:64px 20px 32px!important}
  .nuxt-page-shell .about-globe-copy{position:static!important;order:0}
  .nuxt-page-shell .about-globe-copy strong{font-size:36px!important;line-height:1.15!important}
  .nuxt-page-shell .about-globe-copy sup{font-size:20px!important}
  .nuxt-page-shell .about-globe-stage{position:relative!important;inset:auto!important;order:1;width:100%!important;height:auto!important;aspect-ratio:1/1!important;transform:none!important;margin-top:28px!important;touch-action:pan-y!important}
  .nuxt-page-shell .about-globe-more{position:static!important;order:2;width:100%!important;margin-top:24px!important}
  .nuxt-page-shell .about-globe-word{position:static!important;order:3;width:100%!important;margin:28px 0 0!important}
}

@media(max-width:760px){
  .nuxt-page-shell .solution-cases .case-heading{flex-direction:column!important;align-items:stretch!important}
  .nuxt-page-shell .solution-cases .case-heading>a{flex:0 0 auto!important;min-width:0!important;line-height:1.4!important}
  .nuxt-page-shell .solution-showcase .industry-tabs{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important;height:auto!important;padding:8px!important;border-radius:16px!important;overflow:visible!important}
  .nuxt-page-shell .solution-showcase .industry-tabs button{width:100%!important;min-width:0!important;height:auto!important;min-height:52px!important;padding:12px 8px!important;white-space:normal!important;font-size:14px!important;line-height:1.4!important}
  .nuxt-page-shell .solution-showcase .industry-tabs button>span{white-space:normal!important;overflow:visible!important}
  .nuxt-page-shell .solution-showcase .industry-tabs button:after{display:none!important}
}
