/* === Mobilní hlavička – stabilní layout a rozumné ikony === */
@media (max-width:768px){
  .site-header .header-mobile,
  .site-header .header-inner,
  .site-header .header-bottom,
  .site-header .container{
    display:flex;align-items:center;justify-content:space-between;
    gap:.5rem;box-sizing:border-box;padding:0 12px;width:100%;
  }

  /* klikací plochy (burger/košík/ikony) – fixní rozměr */
  .mobile-menu-toggle, .header-tools a, .header-tools .cart{
    display:inline-flex;align-items:center;justify-content:center;
    width:44px;height:44px;
  }

  /* samotné ikony uvnitř (SVG/IMG) – neroztahovat */
  .header-tools img, .mobile-menu-toggle img,
  .header-tools svg, .mobile-menu-toggle svg{
    max-width:28px; max-height:28px; width:auto; height:auto;
  }

  /* prevence horizontálního posuvu */
  body{overflow-x:hidden;}
}

/* === Logo – správná výška, žádné roztažení === */
.site-branding img.custom-logo,
.site-header .custom-logo{
  height:40px; width:auto; max-width:100%;
  object-fit:contain; display:inline-block;
}
@media (min-width:769px){
  .site-branding img.custom-logo,
  .site-header .custom-logo{ height:56px; }
}

/* === Banner/Hero – stabilní poměr + korektní vykreslení === */
.home .banner, .home .hero{ aspect-ratio:16/9; overflow:hidden; }
.home .banner img, .home .hero img{
  width:100%; height:100%; object-fit:cover; display:block;
}

/* === (volitelné) Když někde vzniká sizes="auto" s obřím fallbackem === */
img[sizes="auto"]{ contain-intrinsic-size:auto; }

/* === (jistota) Nepoužívat content-visibility na header/hero === */
.site-header, .home .banner, .home .hero{
  content-visibility:visible !important;
  contain-intrinsic-size:auto !important;
}


