/* =========================================================
   v118 MOBILE/TABLET ONLY
   Desktop visual rules are intentionally untouched.
   Scope: RFQ/Contact all languages, Vendor all languages, KU Catalog.
   ========================================================= */

@media (max-width: 1024px) and (pointer: coarse), (max-width: 900px){
  /* ---------------------------------------------------------
     RFQ / CONTACT — hard viewport containment at source
     --------------------------------------------------------- */
  body.mobile-rfq-fix,
  body.mobile-rfq-fix main,
  body.mobile-rfq-fix header,
  body.mobile-rfq-fix footer,
  body.mobile-rfq-fix section{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  body.mobile-rfq-fix{
    overflow-x:clip!important;
    position:relative!important;
  }
  body.mobile-rfq-fix .topbar,
  body.mobile-rfq-fix .nav,
  body.mobile-rfq-fix .wrap,
  body.mobile-rfq-fix .page-hero .wrap,
  body.mobile-rfq-fix .contact-box,
  body.mobile-rfq-fix .map-pro,
  body.mobile-rfq-fix .rfq-form-card,
  body.mobile-rfq-fix .rfq-compact,
  body.mobile-rfq-fix .rfq-form-grid,
  body.mobile-rfq-fix .rfq-form-grid-v85,
  body.mobile-rfq-fix .rfq-form-head-v85{
    min-width:0!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  body.mobile-rfq-fix .wrap{
    width:min(100% - 24px, 1180px)!important;
    margin-inline:auto!important;
    padding-inline:0!important;
  }
  body.mobile-rfq-fix .nav{
    width:100%!important;
    padding-inline:12px!important;
  }
  body.mobile-rfq-fix .contact-box{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    gap:14px!important;
  }
  body.mobile-rfq-fix .contact-item,
  body.mobile-rfq-fix .contact-card-v86,
  body.mobile-rfq-fix .contact-item strong,
  body.mobile-rfq-fix .contact-item p,
  body.mobile-rfq-fix .contact-item span{
    min-width:0!important;
    max-width:100%!important;
    overflow-wrap:anywhere!important;
    word-break:break-word!important;
  }
  body.mobile-rfq-fix .contact-item,
  body.mobile-rfq-fix .contact-card-v86{
    width:100%!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }
  body.mobile-rfq-fix .map-pro,
  body.mobile-rfq-fix .map-pro iframe{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
    overflow:hidden!important;
  }
  body.mobile-rfq-fix .map-pro iframe{display:block!important;border:0!important}

  body.mobile-rfq-fix .rfq-form-card,
  body.mobile-rfq-fix .rfq-compact{
    width:100%!important;
    margin-inline:0!important;
    padding:20px 14px!important;
    overflow:hidden!important;
  }
  body.mobile-rfq-fix .rfq-form-head-v85{
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr)!important;
    gap:10px!important;
    width:100%!important;
  }
  body.mobile-rfq-fix .rfq-form-head-v85>*{min-width:0!important;max-width:100%!important}
  body.mobile-rfq-fix .rfq-form-grid,
  body.mobile-rfq-fix .rfq-form-grid-v85{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;
    gap:12px!important;
  }
  body.mobile-rfq-fix .rfq-form-grid>*,
  body.mobile-rfq-fix .rfq-form-grid-v85>*,
  body.mobile-rfq-fix .rfq-full,
  body.mobile-rfq-fix .rfq-upload,
  body.mobile-rfq-fix .rfq-consent,
  body.mobile-rfq-fix .rfq-submit-row{
    grid-column:1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  body.mobile-rfq-fix input,
  body.mobile-rfq-fix select,
  body.mobile-rfq-fix textarea,
  body.mobile-rfq-fix button{
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  body.mobile-rfq-fix .rfq-form-grid input,
  body.mobile-rfq-fix .rfq-form-grid select,
  body.mobile-rfq-fix .rfq-form-grid textarea,
  body.mobile-rfq-fix .rfq-form-grid-v85 input,
  body.mobile-rfq-fix .rfq-form-grid-v85 select,
  body.mobile-rfq-fix .rfq-form-grid-v85 textarea,
  body.mobile-rfq-fix .rfq-upload input[type="file"]{
    display:block!important;
    width:100%!important;
  }
  body.mobile-rfq-fix .rfq-upload{overflow:hidden!important}
  body.mobile-rfq-fix .rfq-upload input[type="file"]{
    font-size:11px!important;
    overflow:hidden!important;
    white-space:nowrap!important;
    text-overflow:ellipsis!important;
  }
  body.mobile-rfq-fix .rfq-consent{
    display:grid!important;
    grid-template-columns:20px minmax(0,1fr)!important;
    align-items:start!important;
    gap:9px!important;
  }
  body.mobile-rfq-fix .rfq-consent input{
    width:18px!important;height:18px!important;min-width:18px!important;max-width:18px!important;
  }
  body.mobile-rfq-fix .rfq-submit-row{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:10px!important;
  }
  body.mobile-rfq-fix .rfq-submit{width:100%!important}
  body.mobile-rfq-fix .rfq-mail-note{width:100%!important;text-align:center!important;overflow-wrap:anywhere!important}
  body.mobile-rfq-fix .rfq-hp{
    position:fixed!important;left:0!important;top:0!important;
    width:1px!important;height:1px!important;margin:0!important;padding:0!important;
    clip-path:inset(50%)!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important;
  }

  /* ---------------------------------------------------------
     VENDOR — all languages, mobile/tablet single-page stage
     --------------------------------------------------------- */
  body.mobile-vendor-fix.showcase-page,
  body.mobile-vendor-fix.showcase-page .showcase-main,
  body.mobile-vendor-fix.showcase-page .showcase-stage-wrap,
  body.mobile-vendor-fix.showcase-page .showcase-stage{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
  body.mobile-vendor-fix.showcase-page{overflow-x:clip!important}
  body.mobile-vendor-fix.showcase-page .showcase-main{overflow:hidden!important}
  body.mobile-vendor-fix.showcase-page .showcase-stage-wrap{
    padding:16px 0 38px!important;
    overflow:hidden!important;
  }
  body.mobile-vendor-fix.showcase-page .showcase-stage{
    height:clamp(430px,72dvh,650px)!important;
    min-height:430px!important;
    overflow:hidden!important;
    perspective:none!important;
  }
  body.mobile-vendor-fix.showcase-page .showcase-slide{
    left:50%!important;
    top:50%!important;
    width:min(72vw,390px)!important;
    max-width:calc(100vw - 28px)!important;
    margin:0!important;
    background:transparent!important;
    transform-origin:center center!important;
  }
  body.mobile-vendor-fix.showcase-page .showcase-slide[aria-hidden="true"]{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transform:translate(-50%,-50%) scale(.96)!important;
    filter:none!important;
  }
  body.mobile-vendor-fix.showcase-page .showcase-slide[aria-hidden="false"]{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:translate(-50%,-50%)!important;
    filter:none!important;
    z-index:20!important;
  }
  body.mobile-vendor-fix.showcase-page .showcase-slide img{
    display:block!important;
    width:auto!important;
    height:auto!important;
    max-width:100%!important;
    max-height:min(64dvh,610px)!important;
    object-fit:contain!important;
    margin:0 auto!important;
    border-radius:8px!important;
  }
  body.mobile-vendor-fix.showcase-page [data-showcase]:not(.is-ready) .showcase-slide{
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;
  }
  body.mobile-vendor-fix.showcase-page [data-showcase]:not(.is-ready) .showcase-slide:first-child{
    opacity:1!important;visibility:visible!important;pointer-events:auto!important;
    left:50%!important;top:50%!important;
    width:min(72vw,390px)!important;
    max-width:calc(100vw - 28px)!important;
    transform:translate(-50%,-50%)!important;
  }
  body.mobile-vendor-fix.showcase-page [data-showcase]:not(.is-ready) .showcase-slide:first-child img{
    width:auto!important;height:auto!important;max-width:100%!important;max-height:min(64dvh,610px)!important;object-fit:contain!important;margin:0 auto!important;
  }
  body.mobile-vendor-fix.showcase-page .showcase-controls,
  body.mobile-vendor-fix.showcase-page .showcase-progress,
  body.mobile-vendor-fix.showcase-page .showcase-download-row{
    width:min(100% - 28px,360px)!important;
    max-width:calc(100% - 28px)!important;
    margin-inline:auto!important;
  }
  body.mobile-vendor-fix.showcase-page .showcase-controls{justify-content:center!important}

  /* ---------------------------------------------------------
     KU CATALOG ONLY — preserve other 3 language catalogs
     --------------------------------------------------------- */
  body.mobile-ku-catalog-fix.showcase-page,
  body.mobile-ku-catalog-fix.showcase-page .showcase-main,
  body.mobile-ku-catalog-fix.showcase-page .showcase-stage-wrap,
  body.mobile-ku-catalog-fix.showcase-page .showcase-stage{
    width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;
  }
  body.mobile-ku-catalog-fix.showcase-page{overflow-x:clip!important}
  body.mobile-ku-catalog-fix.showcase-page .showcase-main,
  body.mobile-ku-catalog-fix.showcase-page .showcase-stage-wrap,
  body.mobile-ku-catalog-fix.showcase-page .showcase-stage{overflow:hidden!important}
  body.mobile-ku-catalog-fix.showcase-page .showcase-stage{perspective:none!important}
  body.mobile-ku-catalog-fix.showcase-page .showcase-slide{
    left:50%!important;top:50%!important;width:min(72vw,390px)!important;max-width:calc(100vw - 28px)!important;
  }
  body.mobile-ku-catalog-fix.showcase-page .showcase-slide[aria-hidden="true"]{
    opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translate(-50%,-50%) scale(.96)!important;filter:none!important;
  }
  body.mobile-ku-catalog-fix.showcase-page .showcase-slide[aria-hidden="false"]{
    opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:translate(-50%,-50%)!important;filter:none!important;z-index:20!important;
  }
  body.mobile-ku-catalog-fix.showcase-page .showcase-slide img{
    display:block!important;width:auto!important;height:auto!important;max-width:100%!important;max-height:min(64dvh,610px)!important;object-fit:contain!important;margin:0 auto!important;
  }
  body.mobile-ku-catalog-fix.showcase-page [data-showcase]:not(.is-ready) .showcase-slide{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
  body.mobile-ku-catalog-fix.showcase-page [data-showcase]:not(.is-ready) .showcase-slide:first-child{
    opacity:1!important;visibility:visible!important;pointer-events:auto!important;left:50%!important;top:50%!important;width:min(72vw,390px)!important;max-width:calc(100vw - 28px)!important;transform:translate(-50%,-50%)!important;
  }
  body.mobile-ku-catalog-fix.showcase-page .showcase-controls,
  body.mobile-ku-catalog-fix.showcase-page .showcase-progress,
  body.mobile-ku-catalog-fix.showcase-page .showcase-download-row{
    max-width:calc(100% - 28px)!important;margin-inline:auto!important;
  }
}

@media (max-width: 600px){
  body.mobile-rfq-fix .wrap{width:calc(100% - 18px)!important}
  body.mobile-rfq-fix .rfq-form-card,
  body.mobile-rfq-fix .rfq-compact{padding:18px 11px!important;border-radius:14px!important}
  body.mobile-rfq-fix .rfq-form-head-v85{grid-template-columns:34px minmax(0,1fr)!important;gap:9px!important}
  body.mobile-rfq-fix .rfq-title-icon{width:34px!important;height:34px!important;min-width:34px!important;max-width:34px!important}
  body.mobile-rfq-fix .rfq-form-head-v85 h3{font-size:18px!important;line-height:1.4!important}

  body.mobile-vendor-fix.showcase-page .showcase-stage-wrap{padding:8px 0 32px!important}
  body.mobile-vendor-fix.showcase-page .showcase-stage{height:min(130vw,520px)!important;min-height:390px!important}
  body.mobile-vendor-fix.showcase-page .showcase-slide,
  body.mobile-vendor-fix.showcase-page [data-showcase]:not(.is-ready) .showcase-slide:first-child{
    width:min(84vw,330px)!important;max-width:calc(100vw - 18px)!important;
  }
  body.mobile-vendor-fix.showcase-page .showcase-slide img,
  body.mobile-vendor-fix.showcase-page [data-showcase]:not(.is-ready) .showcase-slide:first-child img{
    max-width:calc(100vw - 18px)!important;max-height:min(116vw,486px)!important;border-radius:7px!important;
  }
  body.mobile-vendor-fix.showcase-page .showcase-controls{gap:10px!important;margin-top:4px!important}
  body.mobile-vendor-fix.showcase-page .showcase-arrow{width:40px!important;height:40px!important;flex:0 0 40px!important}
  body.mobile-vendor-fix.showcase-page .showcase-progress{width:min(300px,calc(100vw - 42px))!important}

  body.mobile-ku-catalog-fix.showcase-page .showcase-stage{height:min(130vw,520px)!important;min-height:390px!important}
  body.mobile-ku-catalog-fix.showcase-page .showcase-slide,
  body.mobile-ku-catalog-fix.showcase-page [data-showcase]:not(.is-ready) .showcase-slide:first-child{
    width:min(84vw,330px)!important;max-width:calc(100vw - 18px)!important;
  }
  body.mobile-ku-catalog-fix.showcase-page .showcase-slide img,
  body.mobile-ku-catalog-fix.showcase-page [data-showcase]:not(.is-ready) .showcase-slide:first-child img{
    max-width:calc(100vw - 18px)!important;max-height:min(116vw,486px)!important;
  }
}
