/* ============================================================
   ZMG GROUP — css/responsive.css
   Breakpoints, mobile contact bar, reduced-motion and print.
   Loaded after style.css. Mobile is treated as a first-class
   layout, not a shrunken desktop.
   ============================================================ */

/* ---------- Mobile quick-contact bar (touch only) ---------- */
.mobile-bar{display:none}

/* ---------- <= 1180px ---------- */
@media (max-width:1180px){
  .why__cell--lg{grid-column:span 6}
  .why__cell--md{grid-column:span 6}
  .why__cell--sm{grid-column:span 6}
  .ind-card,.ind-card--w{grid-column:span 6}
  .trust__grid--caps{grid-template-columns:repeat(3,1fr)}
}

/* ---------- <= 1024px ---------- */
@media (max-width:1024px){
  .globe-layout,.services__layout,.calc__layout,.ceo__layout,.network__layout,.quote-form__layout,.faq__layout{grid-template-columns:1fr}
  .service-panel{min-height:auto}
  .form-aside{position:static}
  .footer__top{grid-template-columns:1fr 1fr}
  .trust__grid{grid-template-columns:repeat(2,1fr)}
  .trust__grid--caps{grid-template-columns:repeat(3,1fr)}
}

/* ---------- <= 860px (tablet / large phone) ---------- */
@media (max-width:860px){
  .nav__menu,.nav__phone{display:none}
  .burger{display:block}
  .nav__cta{display:none}
  .cursor{display:none!important}
  .grid--4{grid-template-columns:repeat(2,1fr)}
  .grid--3{grid-template-columns:repeat(2,1fr)}
  /* Show the touch contact bar and lift content clear of it. */
  .mobile-bar{display:grid;grid-template-columns:repeat(3,1fr);
    position:fixed;left:0;right:0;bottom:0;z-index:900;
    background:var(--graphite);border-top:1px solid var(--line-strong);
    padding-bottom:env(safe-area-inset-bottom,0)}
  .mobile-bar__item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.3em;
    padding:.7em .4em;font-family:var(--font-mono);font-size:var(--fs-kicker);
    letter-spacing:.12em;text-transform:uppercase;color:var(--white);min-height:56px}
  .mobile-bar__item svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.5}
  .mobile-bar__item--cta{background:var(--zmg-red)}
  body{padding-bottom:64px}
}

/* ---------- <= 640px (phone) ---------- */
@media (max-width:640px){
  :root{--nav-h:64px}
  .hero{min-height:92svh;align-items:flex-end;flex-wrap:wrap}
  .hero__foot{position:static;margin-top:2rem;flex-direction:column;align-items:flex-start;gap:1rem;flex:0 0 100%;max-width:100%}
  .hero__actions{width:100%}
  .hero__actions .btn{width:100%;justify-content:space-between}
  .globe-points{grid-template-columns:1fr}
  .calc__grid,.lead-form__grid,.grid--2{grid-template-columns:1fr}
  .calc__modes,.calc__result{grid-template-columns:1fr}
  .route-detail{grid-template-columns:1fr 1fr}
  .mode{border-bottom:1px solid var(--line)}
  .cargo__grid{grid-template-columns:1fr}
  .cargo__search{max-width:none}
  .footer__top{grid-template-columns:1fr}
  .trust__grid--caps{grid-template-columns:repeat(2,1fr)}
  .route__track{flex-direction:column;gap:1.6rem;align-items:flex-start;padding-left:0}
  .route__line{top:0;bottom:0;left:29px;right:auto;width:2px;height:auto}
  .route__line i{transform-origin:top;transform:scaleY(0)}
  .route.is-in .route__line i{transform:scaleY(1)}
  .route__pulse{top:auto;left:-2px;animation:none;display:none}
  .route__node{flex-direction:row;text-align:left;align-items:center;gap:1rem;width:100%}
  .route__dot{flex:0 0 auto;width:52px;height:52px}
  .wa-float__label{display:none}
  .wa-float{padding:1em;border-radius:50%;bottom:80px}
  .acc-panel__inner{padding-left:.2rem}
  .ind-card,.ind-card--w{grid-column:span 12;min-height:200px}
  .why__cell--lg,.why__cell--md,.why__cell--sm{grid-column:span 12}
}

/* ---------- <= 380px ---------- */
@media (max-width:380px){
  .trust__grid{grid-template-columns:1fr}
  .grid--3,.grid--4{grid-template-columns:1fr}
}

/* ---------- Reduced motion: the site must work untouched ---------- */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  [data-reveal],[data-stagger]>*{opacity:1!important;transform:none!important}
  .mask-reveal{clip-path:none!important}
  .preloader__logo,.preloader__tag,.preloader__bar{opacity:1!important;animation:none!important}
  .hero h1 .line i{transform:none!important;animation:none!important}
  .hero__grid{animation:none!important}
  .cursor,.wa-float::after{display:none!important}
  #preloader{display:none}
}

/* ---------- Print ---------- */
@media print{
  .nav,.wa-float,.back-top,.cursor,#preloader,.marquee,.globe-stage,.mobile-bar{display:none!important}
  body{background:#fff;color:#000;padding-bottom:0}
