/* ATUT homepage adjustments, kept in a local module outside the theme/core. */
@media (max-width: 767px) {
  #index #header .row-mobile .col-mobile { flex: 0 0 25%; width: 25%; }
  #index #header .row-mobile .mobile-center { flex-basis: 50%; width: 50%; }
  #index #_mobile_logo { width: 150px; max-width: 100%; }
  #index #_mobile_logo img { width: 150px; height: auto; margin: 10px auto; }
  #index #menu-icon { min-width: 44px; min-height: 44px; display: flex; align-items: center; }
  #index #pos_search_top .pos_search { display: none; }
  #index #pos_search_top #pos_query_top { width: 100%; padding: 0 60px 0 16px; font-size: 16px; }
  #index #pos_search_top .search_submit { width: 52px; min-height: 44px; }

  /* Nivo's caption previously occupied a second row below the image. */
  #index .slideshow_container .pos-slideshow { margin-bottom: 24px; }
  #index .slideshow_container .nivoSlider { height: 300px !important; min-height: 300px; }
  #index .slideshow_container .nivo-main-image { height: 300px !important; min-height: 300px; width: 100%; object-fit: cover; object-position: right center; }
  #index .slideshow_container .nivoSlider > .nivo-caption {
    position: absolute; inset: 0; height: 100%; min-height: 0; background: transparent;
  }
  #index .slideshow_container .nivo-caption .banner7-des {
    position: absolute; inset: 0; transform: none; display: flex; align-items: center;
  }
  #index .slideshow_container .desc_slideshow { width: 100%; max-width: 280px; }
  #index .slideshow_container .desc_slideshow .info { padding: 14px; }
  #index .slideshow_container .desc_slideshow h2 { font-size: 20px; }
  #index .slideshow_container .desc_slideshow .readmore { min-height: 44px; }

  #index .static_cms { padding: 16px; margin-bottom: 28px; }
  #index .static_cms > .row { margin: 0; }
  #index .static_cms .box_cms { padding: 0; gap: 12px; }
  #index .static_cms .box_cms > img { flex: 0 0 32px; width: 32px; height: auto; margin: 3px 0 0; }
  #index .static_cms .txt_cms { min-width: 0; }
  #index .static_cms .txt_cms h2 { font-size: 18px; line-height: 1.35; margin-bottom: 8px; }
  #index .static_cms .txt_cms p { font-size: 14px; line-height: 1.55; margin: 0 0 8px; }
  #index .static_cms .txt_cms p:last-child { margin-bottom: 0; }

  #index .pos_title { margin-bottom: 20px; }
  #index .pos_title h2 { font-size: 22px; line-height: 1.3; }
  #index .pos_title .desc_title { font-size: 14px; line-height: 1.5; }
  #index .tab-category .pos_title { padding-bottom: 14px; }
  #index .tab-category .pos_title .cate_mobile { position: relative; top: auto; right: auto; margin-top: 12px; }
  #index .tab-category .pos_title .cate_mobile .dropdown-toggle { font-size: 14px; }
  #index .tab-category-container-slider, #index .pos-featured-products { margin-bottom: 28px; }
  #index .js-product-miniature .product_desc { padding-top: 12px; }
  #index .js-product-miniature .product_name {
    white-space: normal; text-overflow: clip; overflow-wrap: anywhere;
    display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3;
    line-height: 1.4; font-size: 15px; min-height: 63px; max-height: 63px;
    text-transform: none;
  }
  #index .category-products-slider .category_products { margin-bottom: 28px; }
  #index .category-products-slider .js-product-miniature {
    display: flex; align-items: center; gap: 14px; margin-bottom: 16px;
  }
  #index .category-products-slider .js-product-miniature > .img_block.thumbnail-container {
    flex: 0 0 92px; float: none; width: 92px; height: 92px;
  }
  #index .category-products-slider .js-product-miniature .product_desc {
    flex: 1; min-width: 0; padding: 0;
  }
  #index .category-products-slider .js-product-miniature .product_name {
    min-height: 0; max-height: 84px; -webkit-line-clamp: 4;
  }
  #index .category-products-slider .pos_title { margin-bottom: 16px; }
  #index .category-products-slider .pos_content { margin-top: 0; }
  #index #footer .footer_top { padding: 28px 0; }
  #index #footer .ft_newsletter input[name=email] { font-size: 16px; }
  #index .ets_cookie_banber_block {
    box-sizing: border-box; left: 12px; right: 12px; bottom: 12px; width: auto;
    max-width: none; padding: 16px; max-height: 45vh; overflow-y: auto;
  }
  #index .ets_cookie_banner_content p { font-size: 13px; line-height: 1.5; margin-bottom: 10px; }
  #index .ets_cookie_banner_footer .ets-cb-btn-ok { min-height: 44px; }
}
