/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1100px) {
  .svc-grid   { grid-template-columns:repeat(2,1fr); }
  .ft-top     { grid-template-columns:1fr 1fr; gap:36px; }
  .about-in   { gap:56px; }
  .proc-steps { grid-template-columns:repeat(2,1fr); gap:44px; }
  .proc-steps::before { display:none; }
}

@media (max-width:768px) {
  :root { --nav-h:62px; }
  .wrap { padding:0 22px; }
  nav { padding:0 22px; }

  .nav-ul, .nav-cta-desk { display:none; }
  .ham { display:flex; }

  .hero-h1 { font-size:clamp(44px,12vw,72px); }
  .hero-stats { display:none; }

  .svc-grid        { grid-template-columns:repeat(2,1fr); gap:10px; }
  .svc-card        { padding:24px 16px 20px; }
  .svc-card.rv     { transform:translateY(14px); }
  .svc-ico         { margin-bottom:14px; }
  .svc-name        { font-size:16px; }
  .svc-desc        { font-size:12px; }
  .svc-hd          { flex-direction:column; align-items:flex-start; }
  .svc-note        { text-align:left; max-width:100%; }

  .about      { padding:80px 0; }
  .about-in   { grid-template-columns:1fr; gap:44px; }
  .about-img-wrap { aspect-ratio:4/3; }
  .about-watermark { bottom:-1%; }

  .proc-steps { grid-template-columns:1fr; }

  .testi      { padding:80px 0; }
  .testi-hd   { flex-direction:column; align-items:flex-start; }
  .testi-grid {
    grid-template-columns:repeat(3,72vw);
    overflow-x:auto; scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch; touch-action:pan-x;
    scrollbar-width:none; padding-bottom:4px;
  }
  .testi-grid::-webkit-scrollbar { display:none; }
  .t-card { scroll-snap-align:start; touch-action:pan-x; }

  .gallery    { padding:80px 0; }
  .gal-grid   { grid-template-columns:repeat(3,1fr); }

  .contact    { padding:80px 0; }
  .contact-in { grid-template-columns:1fr; gap:44px; }
  .con-form   { padding:28px 20px; }
  .f-row      { grid-template-columns:1fr; }

  footer      { padding:56px 0 0; }
  .ft-top     { grid-template-columns:1fr; gap:28px; }

  .sticky-bar { padding:12px 20px; }
  .sb-msg     { display:none; }
}
