.contact_info_icon {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 42px !important;
  height: 42px !important;
  min-width: 42px;
  border-radius: 50%;
  background: rgba(255, 120, 0, .12);
  color: #ff7800;
}

.contact_info_icon svg {
  display: block;
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

@media (max-width: 768px) {
  html,
  body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }

  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }

  img,
  video,
  iframe,
  canvas,
  svg {
    max-width: 100%;
  }

  iframe,
  video {
    width: 100%;
  }

  table {
    display: block;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  p,
  li,
  a,
  span,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    overflow-wrap: anywhere;
  }

  .auto-container,
  .container,
  .container-fluid,
  .wrapper,
  .page,
  .main,
  .section,
  .content,
  .left,
  .right,
  .left_box,
  .right_box,
  .txt_box,
  .text_box,
  .img_box,
  .swiper,
  [class*="swiper"],
  [class*="banner"],
  [class*="section"],
  [class*="content"] {
    max-width: 100% !important;
  }

  .auto-container,
  .container {
    width: 100% !important;
    padding-left: 16px;
    padding-right: 16px;
  }

  .section {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }

  .head_block {
    margin-bottom: 22px !important;
  }

  .head_block .title,
  .inside_banner h1,
  .banner h1,
  .page_title,
  h1 {
    line-height: 1.18;
  }

  .head_block .title,
  h1 {
    font-size: 30px !important;
  }

  h2 {
    font-size: 24px !important;
  }

  h3 {
    font-size: 20px !important;
  }

  .row,
  .index_section1_box,
  .index_section4_box,
  .index_section5_box,
  .index_section6_box,
  .index_section7_box,
  .index_section8_box,
  .product_list,
  .news_list,
  .case_list,
  .solution_list,
  .pro_list,
  .list_box,
  .item_box,
  .foot_head,
  .left_category,
  .foot_subscribe {
    display: flex;
    flex-direction: column;
    gap: 18px;
    width: 100%;
  }

  .row > *,
  .index_section1_box > *,
  .index_section4_box > *,
  .index_section5_box > *,
  .index_section6_box > *,
  .index_section7_box > *,
  .index_section8_box > *,
  .product_list > *,
  .news_list > *,
  .case_list > *,
  .solution_list > *,
  .pro_list > *,
  .list_box > *,
  .item_box > *,
  .left_category > * {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  .index_section1_box .item,
  .index_section4_box .item,
  .index_section6_box .item,
  .index_section8_box .left,
  .index_section8_box .right,
  .section2_swiper_box {
    border-radius: 6px;
  }

  .img_box,
  .pic,
  .thumb,
  .pro_img,
  .news_img,
  .case_img {
    overflow: hidden;
  }

  .img_box img,
  .pic img,
  .thumb img,
  .pro_img img,
  .news_img img,
  .case_img img {
    width: 100%;
    height: auto;
    object-fit: cover;
  }

  .foot_subscribe input,
  .foot_subscribe button,
  input,
  textarea,
  select,
  button {
    width: 100%;
    max-width: 100%;
  }

  .footer .foot_top h3 {
    font-size: 28px !important;
    line-height: 1.25;
    text-align: left;
  }

  .footer .foot_contact p,
  .footer .foot_bottom,
  .footer .foot_bottom .left,
  .footer .foot_bottom .right {
    width: 100%;
    max-width: 100%;
  }

  .footer .foot_contact p {
    display: flex;
    align-items: flex-start;
    gap: 12px;
  }

  .footer .foot_contact p img {
    flex: 0 0 auto;
    max-width: 28px;
    height: auto;
  }

  .footer .foot_bottom .auto-container,
  .footer .foot_bottom {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: flex-start;
  }

  .footer .foot_bottom .right {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
  }

  .leftwhatsapp,
  .leftphone,
  .leftemail {
    transform: scale(.86);
    transform-origin: right center;
  }

  .modal,
  .modal-dialog,
  .modal-content {
    max-width: 100%;
  }

  .index_section1_box,
  .list_products_box .content_box > .item_box,
  .products_box .item_box,
  .product_list,
  .pro_list {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
  }

  .index_section1_box > *,
  .list_products_box .content_box > .item_box > *,
  .products_box .item_box > *,
  .product_list > *,
  .pro_list > * {
    width: auto !important;
    max-width: 100% !important;
    min-width: 0;
    margin: 0 !important;
  }

  .index_section1_box .item .img_box,
  .list_products_box .content_box > .item_box .item .img_box,
  .products_box .item_box .item .img_box,
  .product_list .item .img_box,
  .pro_list .item .img_box {
    aspect-ratio: 4 / 3;
  }

  .index_section1_box .txt_box,
  .list_products_box .content_box > .item_box .text_box,
  .products_box .item_box .text_box,
  .product_list .text_box,
  .pro_list .text_box {
    padding: 10px 8px !important;
  }

  .index_section1_box .txt_box,
  .list_products_box .content_box > .item_box .text_box p,
  .products_box .item_box .text_box p,
  .product_list .text_box p,
  .pro_list .text_box p {
    font-size: 14px !important;
    line-height: 1.35;
  }

  .list_products_box .content_box > .item_box .text_box .other,
  .products_box .item_box .text_box .other,
  .product_list .text_box .other,
  .pro_list .text_box .other {
    display: none !important;
  }
}

@media (max-width: 480px) {
  .auto-container,
  .container {
    padding-left: 14px;
    padding-right: 14px;
  }

  .section {
    padding-top: 34px !important;
    padding-bottom: 34px !important;
  }

  .head_block .title,
  h1 {
    font-size: 27px !important;
  }

  h2 {
    font-size: 22px !important;
  }

  .footer .foot_top h3 {
    font-size: 25px !important;
  }

  .index_section1_box,
  .list_products_box .content_box > .item_box,
  .products_box .item_box,
  .product_list,
  .pro_list {
    gap: 10px;
  }

  .index_section1_box .txt_box,
  .list_products_box .content_box > .item_box .text_box,
  .products_box .item_box .text_box,
  .product_list .text_box,
  .pro_list .text_box {
    padding: 9px 7px !important;
  }

  .index_section1_box .txt_box,
  .list_products_box .content_box > .item_box .text_box p,
  .products_box .item_box .text_box p,
  .product_list .text_box p,
  .pro_list .text_box p {
    font-size: 13px !important;
  }
}

/* ===== Footer + bottom B2B bar mobile fix (overlap / cramped) ===== */
@media (max-width: 768px) {
  /* Stack footer columns cleanly, no overlap */
  .footer .foot_head { display: block !important; }
  .footer .foot_head .left_category { display: block !important; width: 100% !important; }
  .footer .foot_head .left_category .item { display: block !important; width: 100% !important; margin: 0 0 22px !important; }
  .footer .foot_head .left_category .item > p,
  .footer .foot_head .right_box > p { font-size: 18px !important; margin-bottom: 12px !important; }
  .footer .foot_head .left_category .item .item_box {
    display: flex !important;
    flex-direction: column !important;
    gap: 0 !important;
    height: auto !important;
    max-height: none !important;
    column-count: 1 !important;
    columns: auto !important;
  }
  .footer .foot_head .left_category .item .item_box a {
    display: block !important;
    float: none !important;
    width: 100% !important;
    padding: 7px 0 !important;
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.4 !important;
  }
  .footer .foot_head .right_box {
    display: block !important;
    width: 100% !important;
    position: static !important;
    margin-top: 4px !important;
    clear: both !important;
  }
  .footer .foot_head .right_box .foot_contact p { margin-bottom: 14px !important; }
  /* keep last footer content clear of the fixed bottom bar */
  .footer { padding-bottom: 76px !important; }

  /* Bottom B2B bar: hide long text, show two clear buttons */
  #staecore-b2b-bar .b2b-bar-inner { gap: 8px !important; padding: 8px 12px !important; align-items: center !important; }
  #staecore-b2b-bar .b2b-bar-text { display: none !important; }
  #staecore-b2b-bar .b2b-bar-actions { flex: 1 1 auto !important; justify-content: center !important; gap: 10px !important; }
  #staecore-b2b-bar .b2b-bar-btn,
  #staecore-b2b-bar .b2b-bar-wa {
    flex: 1 1 0 !important;
    text-align: center !important;
    padding: 10px 8px !important;
    font-size: 13px !important;
    white-space: nowrap !important;
  }
  #staecore-b2b-bar .b2b-bar-close { flex: 0 0 auto !important; }
}
