/* ==========================================================================
   RESPONSIVE
   ========================================================================== */

@media (max-width:1080px){
  .is-explorer{grid-template-columns:255px 1fr}.cdr-grid article{grid-template-columns:auto 1fr}.cdr-download{grid-column:2;justify-self:start}
  .showcase-hero{grid-template-columns:minmax(170px,.75fr) minmax(390px,1.5fr) minmax(170px,.75fr)}
  .mega-inner{grid-template-columns:1fr 1fr;gap:24px}
  .mega-promo{grid-column:1/-1;flex-direction:row}
  .mega-promo .pimg{width:38%;height:auto}
  .footer-grid{grid-template-columns:1fr 1fr;gap:30px}
  .clients-grid{grid-template-columns:repeat(3,1fr)}
  .logo-strip{grid-template-columns:repeat(4,1fr)}
}

@media (max-width:900px){
  .gr-head{grid-template-columns:1fr;gap:16px}.gr-map{min-height:500px}.world-map{inset:45px 0 20px;width:100%;height:calc(100% - 65px)}
  .is-head,.cdr-head{grid-template-columns:1fr;gap:16px}.is-explorer{grid-template-columns:1fr;min-height:660px}.is-tabs{display:grid;grid-template-columns:repeat(3,1fr);padding:12px}.is-tab{min-height:62px;padding:10px 8px}.is-tab:hover,.is-tab.active{padding-left:10px}.is-panels{min-height:475px}.ds-grid{grid-template-columns:1fr}.ds-copy h2{max-width:14ch}.ds-visual{min-height:540px}.cdr-grid{grid-template-columns:1fr 1fr}
  .he-grid{grid-template-columns:1fr}.he-copy h2{max-width:13ch}.he-copy>p{max-width:62ch}
  .pc-heading{grid-template-columns:1fr;gap:10px}.pc-heading h2{max-width:14ch}.pc-viewport{height:450px;padding-right:10%}.pc-slide{flex-basis:88%;width:88%;height:450px;min-height:450px}.pc-content{width:76%}
  .showcase-hero{min-height:auto;grid-template-columns:1fr 1fr;grid-template-areas:"center center" "products company"}
  .showcase-center{grid-area:center;min-height:570px;padding:58px 24px}
  .product-stream{grid-area:products}.company-stream{grid-area:company}
  .showcase-stream{height:260px;padding:12px}
  .stream-window{height:236px}.stream-track{flex-direction:row;width:max-content;animation:showcase-left 25s linear infinite}
  .company-stream .stream-track{animation:showcase-right 28s linear infinite}
  .stream-track img{width:260px;height:236px}
  .stream-label{top:18px;left:18px}
  @keyframes showcase-left{to{transform:translateX(calc(-50% - 8px))}}
  @keyframes showcase-right{from{transform:translateX(calc(-50% - 8px))}to{transform:translateX(0)}}
  body{font-size:16px}
  .hero{min-height:auto}
  .hero-slider{min-height:560px}
  .hero-slider-ui{bottom:20px}
  .hero .wrap{padding-top:52px;padding-bottom:52px}
  .cols-4{grid-template-columns:repeat(2,1fr)}
  .cols-3{grid-template-columns:repeat(2,1fr)}
  .video-grid{grid-template-columns:repeat(2,1fr)}
  .gallery-grid{grid-template-columns:repeat(2,1fr)}
  .split{grid-template-columns:1fr}
  .split.rev .split-media{order:0}
  .pd-hero{grid-template-columns:1fr;gap:26px}
  .stats{grid-template-columns:repeat(2,1fr);margin-top:-40px;padding:24px}
  .q-objectives,.value-list{grid-template-columns:1fr}
  .form-grid{grid-template-columns:1fr}

  /* ---- mobile nav ---- */
  .nav-toggle{display:block;z-index:80}
  .nav-links{position:fixed;inset:var(--header-h) 0 auto 0;flex-direction:column;
    align-items:stretch;background:#fff;border-bottom:1px solid var(--line);
    box-shadow:var(--shadow-lg);padding:12px 20px 24px;gap:0;max-height:calc(100vh - var(--header-h));
    overflow-y:auto;transform:translateY(-12px);opacity:0;visibility:hidden;transition:.28s}
  .nav-links.open{transform:none;opacity:1;visibility:visible}
  .nav-links>li{border-bottom:1px solid var(--line)}
  .nav-links>li>a{padding:.9rem .4rem;font-size:1rem}
  .nav.open .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .nav.open .nav-toggle span:nth-child(2){opacity:0}
  .nav.open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

  /* mega -> accordion */
  .has-mega .caret{margin-left:auto}
  .mega{position:static;opacity:1;visibility:visible;transform:none;box-shadow:none;
    border:0;background:var(--surface);border-radius:var(--r);
    max-height:0;overflow:hidden;transition:max-height .35s ease}
  .has-mega.mopen .mega{max-height:3000px;margin:4px 0 10px}
  .has-mega:hover .mega{max-height:0}
  .has-mega.mopen:hover .mega{max-height:3000px}
  .mega-inner{grid-template-columns:1fr;padding:14px 16px;gap:16px}
  .mega-promo{flex-direction:column}
  .mega-promo .pimg{width:100%;height:110px}
  .has-mega.mopen .caret{transform:rotate(180deg)}
}

@media (max-width:560px){
  .global-reach{padding:64px 0}.gr-head h2{font-size:2.4rem}.gr-map{min-height:500px;border-radius:20px}.gr-map-copy{left:14px;right:14px;top:14px;max-width:none}.world-map{inset:92px 0 48px;width:100%;height:calc(100% - 140px)}.gr-legend{left:14px;right:14px;bottom:13px;justify-content:flex-start;gap:9px 14px}.gr-legend span{font-size:.56rem}.regional-inset .inset-title{font-size:8px}
  .whatsapp-float{left:14px;bottom:14px;padding:7px}.wf-icon{width:42px;height:42px}.wf-copy{display:none}.back-to-top{right:14px;bottom:14px;width:48px;height:48px}
  .industry-solutions{padding:64px 0}.is-head h2,.cdr-head h2{font-size:2.35rem}.is-explorer{border-radius:20px;min-height:700px}.is-tabs{grid-template-columns:1fr 1fr}.is-tab{font-size:.76rem;gap:7px}.is-tab span{width:25px;height:25px}.is-panels{min-height:480px}.is-content{left:22px;right:22px;bottom:26px}.is-content h3{font-size:2.05rem}.is-content>p{font-size:.9rem}.is-content a{font-size:.7rem;padding:8px 10px}
  .delivery-story{padding:65px 0}.ds-copy h2{font-size:2.55rem}.ds-visual{min-height:420px}.ds-main{right:0;bottom:18%}.ds-small{width:48%;height:31%}.ds-small.one{right:-3%;top:4%}.ds-small.two{right:0}.ds-visual>a{left:12px;bottom:4%}
  .client-downloads{padding:62px 0}.cdr-grid{grid-template-columns:1fr}.cdr-grid article{grid-template-columns:auto 1fr}.cdr-download{grid-column:2}.cdr-note{align-items:flex-start;flex-direction:column}
  .home-enquiry{padding:64px 0}.he-copy h2{font-size:2.65rem}.he-direct{flex-direction:column}.he-direct a{width:100%}.he-form-card{border-radius:20px;padding:26px 20px}.he-form{grid-template-columns:1fr}.he-form .field{grid-column:1/-1}.he-form-top{align-items:flex-start;flex-direction:column}.he-form-top i{text-align:left}
  .product-carousel-section{padding:50px 0 42px}.pc-heading{margin-bottom:22px}.pc-heading h2{font-size:2.25rem}
  .pc-viewport{height:460px;gap:14px;padding-right:7%}.pc-slide{flex-basis:93%;width:93%;height:460px;min-height:460px;border-radius:20px}.pc-overlay{background:linear-gradient(0deg,rgba(3,27,36,.96) 0%,rgba(3,27,36,.68) 62%,rgba(3,27,36,.12) 100%)}
  .pc-content{left:24px;right:24px;bottom:25px;width:auto}.pc-content h3{font-size:2rem}.pc-content>p{font-size:.92rem}.pc-number{right:20px;top:18px}.pc-meta{padding:10px 0 13px}
  .pc-progress{width:90px}.pc-buttons button{width:50px;height:50px}.pc-all{text-align:center;margin-top:24px}
  .showcase-center{min-height:540px;padding:48px 18px}.showcase-brandmark{width:160px;margin-bottom:22px}
  .hero-slider{min-height:540px}.hero-brandmark{width:160px;margin-bottom:22px}.hero-slider-controls{flex-direction:column;align-items:flex-start}.hero-arrows{align-self:flex-end}
  .showcase-center h1{font-size:2.55rem}.showcase-center>p{font-size:1rem}.showcase-center .btn-row{width:100%}
  .showcase-stream{height:190px}.stream-window{height:166px}.stream-track img{width:210px;height:166px}
  .wrap{padding:0 18px}
  .cols-4,.cols-3,.cols-2,.video-grid,.gallery-grid{grid-template-columns:1fr}
  .stats{grid-template-columns:1fr 1fr}
  .clients-grid{grid-template-columns:repeat(2,1fr)}
  .logo-strip{grid-template-columns:repeat(2,1fr)}
  .pd-gallery{grid-template-columns:repeat(3,1fr);gap:10px}
  .btn-row{flex-direction:column;align-items:stretch}
  .btn{justify-content:center}
  .hero .cap-strip{flex-wrap:wrap;font-size:.78rem}
  .footer-grid{grid-template-columns:1fr}
  .topbar .tb-left{gap:14px;font-size:.76rem}
  .footer-bottom{flex-direction:column}
}

@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
  .reveal{opacity:1;transform:none}
  .stream-track{animation-play-state:paused}
  .map-routes path,.map-pin .pulse{animation:none}
  .route-movers{display:none}
}

/* ---------- slider alignment revision ---------- */
@media (max-width:900px){
  .hero-slider .hero-copy{max-width:720px;padding-left:18px;padding-right:18px}
  .hero-slider-ui{bottom:14px}
}
@media (max-width:560px){
  .hero-slider{min-height:590px}
  .hero-slider .hero-copy{padding:20px 8px 68px}
  .hero-slider .hero-brandmark{margin-left:auto;margin-right:auto}
  .hero-slider .btn-row{width:100%}
  .hero-slider .cap-strip{border-radius:18px;justify-content:center}
  .hero-slider-controls{min-height:24px}
  .hero-arrows{display:none}
  .hero-dots{width:100%;justify-content:center}
}
