
/* GM Digitals — mobile optimization pack 5.12 */
html,body{max-width:100%;overflow-x:hidden}
img,svg,video,canvas{max-width:100%;height:auto}
button,input,textarea,select{max-width:100%;font:inherit}
a,.btn,button{touch-action:manipulation}
@media(max-width:700px){
  body{-webkit-text-size-adjust:100%}
  .wrap{max-width:100%;width:calc(100% - 24px)!important}
  header .wrap{width:calc(100% - 20px)!important}
  .nav{min-height:68px;height:auto!important;padding:12px 0;gap:8px}
  .brand{min-width:0}
  .brand span:last-child{white-space:nowrap}
  .mobile-menu-btn{flex:0 0 auto}
  .navcta{white-space:nowrap}
  .navlinks.mobile-open{top:100%!important;max-height:calc(100vh - 76px);overflow:auto}
  section{padding:68px 0}
  h1{overflow-wrap:anywhere}
  .hero-grid,.grid,.layout,.quote,.contact,.about-grid,.feedback-grid,.demo-grid,.op-grid{min-width:0}
  .hero-card,.card,.quote-card,.quote-result,.contact,.operation,.lab,.reviews-card{max-width:100%;min-width:0}
  .actions,.service-actions,.hero-actions,.top-actions{width:100%;min-width:0}
  .actions .btn,.hero-actions .btn{width:100%;min-height:48px}
  .service-actions{position:static!important;display:grid!important;grid-template-columns:1fr auto!important}
  .service-actions .link{min-width:0;overflow-wrap:anywhere}
  .service-actions .buy-tile{min-width:0!important}
  .field{min-width:0}
  .field input,.field textarea,.customInput{width:100%;min-width:0;font-size:16px!important}
  .choice{display:grid!important;grid-template-columns:1fr 1fr;gap:8px}
  .choice button{min-height:44px}
  .price{font-size:48px!important}
  .tabs{scrollbar-width:none}
  .tabs::-webkit-scrollbar{display:none}
  .flow{grid-template-columns:1fr!important}
  .flow .arrow{transform:rotate(90deg)}
  .screen,.demo-card,.mock{max-width:100%;overflow:hidden}
  .screen-nav,.dashbar{overflow:hidden}
  .screen-nav span,.dashbar span{min-width:0;overflow:hidden;text-overflow:ellipsis}
  .table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
  pre,code{max-width:100%;overflow-x:auto}
  .mobile-nav{padding-bottom:max(9px,env(safe-area-inset-bottom))}
}
@media(max-width:420px){
  .wrap{width:calc(100% - 18px)!important}
  .brand{gap:8px}
  .brand .mark{width:32px!important;height:32px!important}
  .brand span:last-child{font-size:11px!important;letter-spacing:.04em}
  .hero h1{font-size:42px!important}
  .section-head h2,.lab-top h2,.op-head h2{font-size:38px!important}
  .choice{grid-template-columns:1fr!important}
  .service{padding:20px!important}
  .service-actions{grid-template-columns:1fr!important;align-items:stretch!important}
  .service-actions .buy-tile{width:100%}
  .price-card .service-actions{grid-template-columns:1fr!important}
}

/* 5.13: keep language selector in the header, never floating over the hero */
.gm-language{position:relative!important;top:auto!important;right:auto!important}
.nav>.gm-language{position:relative!important;top:auto!important;right:auto!important}
@media(max-width:900px){
  .nav{min-width:0}
  .nav>.gm-language{margin-left:auto!important}
  .nav .mobile-menu-btn{margin-left:0!important;margin-right:0!important}
}
@media(max-width:420px){
  .nav .navcta{display:none!important}
}
