/* ==========================================================
   Threads Technology India - responsive hardening layer
   Loaded LAST (after home.css / inner.css / tti-motion.css).
   Only fixes small-screen / tablet issues; desktop is untouched.
   ========================================================== */

html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body.tti-home { overflow-x: clip; }
.tti-home img, .tti-home video, .tti-home iframe { max-width: 100%; }
.tti-home .container, .tti-home .tti-wrap { min-width: 0; }
.tti-home h1, .tti-home h2, .tti-home h3, .tti-home h4 { overflow-wrap: anywhere; }
.tti-home p, .tti-home li, .tti-home td { overflow-wrap: break-word; }

/* Product detail: admin-written HTML, images and tables must never push the page wide */
.tti-inner .card-body { overflow-x: auto; }
.tti-inner .card-body img { max-width: 100%; height: auto; }
.tti-inner .card-body table { max-width: 100%; }
.tti-inner .card-body iframe, .tti-inner .quote-wrapper iframe { max-width: 100%; }
.tti-inner .quote-wrapper table { display: block; overflow-x: auto; }
.tti-inner .card-img-top { width: 100%; height: auto; }

/* Contact map */
.tti-inner .contact_area iframe { width: 100%; }

/* ---------- Tablet & down ---------- */
@media (max-width: 991px) {
  .tti-nav { -webkit-overflow-scrolling: touch; }
  .tti-nav > ul > li > a { min-height: 44px; }
  .tti-sub a { padding: 12px 14px; }
  .tti-inner .single-post .blog_details { padding: 26px 24px 30px; }
  .tti-inner .blog_right_sidebar { margin-bottom: 24px; }
  .tti-strip { column-width: 260px; }
}

/* ---------- Phones ---------- */
@media (max-width: 575px) {
  body.tti-home { font-size: 15px; }
  .tti-section { padding: 52px 0; }
  .tti-section--slim { padding: 40px 0; }
  .tti-inner .section_gap { padding: 52px 0; }
  .tti-inner .section_gap_bottom { padding-bottom: 52px; }
  .tti-head { margin-bottom: 28px; }

  /* trust strip: remove the stray left border/padding that alternate items kept */
  .tti-trust-item, .tti-trust-item + .tti-trust-item, .tti-trust-item:nth-child(odd), .tti-trust-item:first-child { border-left: 0; padding-left: 0; padding-right: 0; padding-top: 18px; padding-bottom: 18px; }

  .tti-hero-media img { max-height: 260px; }
  .tti-slide { padding: 24px 0 56px; gap: 22px; }
  .tti-hero-copy > p:not(.tti-eyebrow) { margin-bottom: 26px; }
  .tti-actions .tti-btn { padding: 13px 22px; }
  .tti-sectors { grid-template-columns: repeat(2, 1fr); }
  .tti-sector:nth-child(4) { border-left: 1px solid rgba(11, 42, 91, .1); }
  .tti-sector:nth-child(odd) { border-left: 0; }
  .tti-sector { padding: 14px 8px; }
  .tti-cta-grid { padding: 44px 0; }
  .tti-cta-actions { gap: 16px; }
  .tti-footer { padding-top: 44px; }
  .tti-footer-bottom { flex-direction: column; margin-top: 32px; }
  .tti-gallery { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .tti-strip { column-width: auto; column-count: 1; }
  .whatsapp-float-btn { bottom: 16px; }

  /* Products / related cards sit two-up on phones */
  .tti-inner .single-product .product-details { padding: 12px; }
  .tti-inner .single-product .product-details h6 { font-size: 14px; }
  .tti-inner .single-product .product-details small { margin-bottom: 8px; font-size: 12px; }
  .tti-inner .single-product .product-details .price { margin-bottom: 10px; }
  .tti-inner .single-product .product-details .price h6 a { font-size: 13px; }
  .tti-inner .single-product .product-details .prd-bottom { flex-wrap: wrap; gap: 6px; padding-top: 10px; }
  .tti-inner .single-product .product-details .prd-bottom .social-info span { width: 32px; height: 32px; font-size: 14px; }
  .tti-inner .row > .col-6 { padding-left: 8px; padding-right: 8px; }
  .tti-inner .row:has(> .col-6) { margin-left: -8px; margin-right: -8px; }

  /* Contact: reduce the double padding that squeezed the inputs */
  .tti-inner .contact_form { padding: 18px 14px; margin-top: 24px; }
  .tti-inner .contact_form.row { margin-left: 0; margin-right: 0; }
  .tti-inner .contact_form > [class*="col-"] { padding-left: 0; padding-right: 0; }
  .tti-inner .contact_area iframe { height: 240px; }
  .tti-inner .contact_info .info_item { padding: 18px 0 18px 58px; }
  .tti-inner .contact_info .info_item i { top: 18px; }
  .tti-inner .contact_form .primary-btn { width: 100%; }

  /* Product detail actions stack full width */
  .tti-inner .gap-3 .genric-btn.circle { width: 100%; margin-right: 0 !important; }
  .tti-inner .breadcrumb-banner nav { flex-wrap: wrap; row-gap: 4px; }
  .tti-inner .card-img-top.p-4 { padding: 12px !important; }

  /* Blog */
  .tti-inner .blog_card .blog_details h2 { font-size: 20px; }
  .tti-inner .blog_right_sidebar .single-sidebar-widget { padding: 18px; }

  /* Catalogue modal */
  #catalogueModal .modal-dialog { margin: 12px; }
  #catalogueModal .modal-body { padding: 8px 18px 22px; }
  #catalogueModal .form-control { font-size: 16px; } /* stops iOS zoom-on-focus */
  .tti-inner .form-control, .tti-inner textarea { font-size: 16px; }
}

/* very small phones */
@media (max-width: 360px) {
  .tti-wrap, .tti-inner .container { padding-left: 14px; padding-right: 14px; }
  .tti-btn { padding: 13px 20px; font-size: 13.5px; }
  .tti-why-list { grid-template-columns: 1fr; }
  .tti-range { gap: 10px; }
}

/* landscape phones: keep the open menu scrollable */
@media (max-width: 991px) and (max-height: 500px) {
  .tti-nav { max-height: calc(100vh - 64px); }
  .tti-sub { max-height: 40vh; }
}
