/* Progressive large-screen layout. Nothing below 1921 CSS pixels is changed. */
@media (min-width: 1921px) {
  .container,
  .home-slide-content {
    width: min(calc(100% - 72px), clamp(1200px, calc(31.25vw + 600px), 1800px));
  }

  .promo-strip { font-size: clamp(13px, calc(.15625vw + 10px), 16px); }
  .promo-strip-inner { min-height: clamp(34px, calc(.3125vw + 28px), 40px); }
  .topbar { min-height: clamp(64px, calc(.8333vw + 48px), 80px); gap: clamp(12px, .73vw, 28px); }
  .logo { padding: clamp(5px, .42vw, 8px) clamp(11px, .73vw, 20px); }
  .logo-main { font-size: clamp(22px, calc(.3125vw + 16px), 28px); }
  .logo-sub { font-size: clamp(10px, calc(.1042vw + 8px), 12px); }
  .search { max-width: clamp(560px, calc(16.67vw + 240px), 880px); }
  .search input { padding-top: clamp(12px, .73vw, 16px); padding-bottom: clamp(12px, .73vw, 16px); font-size: clamp(16px, calc(.2083vw + 12px), 20px); }
  .city-switch,.catbar a { font-size: clamp(14px, calc(.15625vw + 11px), 17px); }
  .phone { font-size: clamp(16px, calc(.2083vw + 12px), 20px); }
  .catbar-inner { height: clamp(48px, calc(.625vw + 36px), 60px); gap: clamp(28px, 1.67vw, 52px); }

  .home-carousel-track { min-height: clamp(420px, calc(10.4167vw + 220px), 620px); }
  .home-carousel-arrow { width: clamp(42px, calc(.52vw + 32px), 52px); height: clamp(42px, calc(.52vw + 32px), 52px); }
  .home-carousel-prev { left: clamp(18px, 1.25vw, 48px); }
  .home-carousel-next { right: clamp(18px, 1.25vw, 48px); }

  .section-title { margin-top: clamp(34px, calc(1.15vw + 12px), 56px); margin-bottom: clamp(18px, calc(.625vw + 6px), 30px); }
  .section-title h2,.catalog-title h1 { font-size: clamp(42px, calc(1.0417vw + 22px), 62px); }
  .section-title a { font-size: clamp(16px, calc(.2083vw + 12px), 20px); }
  .product-grid { gap: clamp(14px, .94vw, 28px); }
  .product-card { min-height: clamp(365px, calc(7.03125vw + 230px), 500px); border-radius: clamp(22px, 1.25vw, 32px); }
  .product-image { height: clamp(214px, calc(4.479vw + 128px), 300px); }
  .product-info { padding: clamp(15px, .94vw, 24px); }
  .product-title { min-height: clamp(48px, 3.125vw, 64px); font-size: clamp(14px, calc(.2083vw + 10px), 18px); }
  .price-row strong { font-size: clamp(20px, calc(.3125vw + 14px), 26px); }
  .cart-btn { min-width: clamp(86px, 5.21vw, 112px); height: clamp(40px, 2.5vw, 48px); font-size: clamp(13px, calc(.15625vw + 10px), 16px); }

  .category-grid { gap: clamp(16px, 1.04vw, 28px); }
  .category-card { min-height: clamp(190px, calc(4.167vw + 110px), 270px); padding: clamp(24px, 1.67vw, 40px); border-radius: clamp(22px, 1.25vw, 32px); font-size: clamp(16px, calc(.2083vw + 12px), 20px); }
  .cat-art { width: clamp(96px, 6.25vw, 128px); height: clamp(96px, 6.25vw, 128px); }

  .compact-catalog { padding-top: clamp(30px, 2.08vw, 48px); }
  .catalog-layout { grid-template-columns: clamp(270px, calc(4.6875vw + 180px), 360px) 1fr; gap: clamp(24px, 1.56vw, 36px); }
  .filters { padding: clamp(20px, 1.25vw, 30px); border-radius: clamp(22px, 1.25vw, 30px); }
  .catalog-products { gap: clamp(14px, .83vw, 24px); }
  .catalog-toolbar { margin-bottom: clamp(18px, 1.04vw, 28px); }

  .product-detail { gap: clamp(34px, 2.08vw, 54px); padding-top: clamp(30px, 2.08vw, 50px); }
  .gallery { min-height: clamp(430px, calc(9.8958vw + 240px), 620px); border-radius: clamp(24px, 1.35vw, 34px); padding: clamp(20px, 1.56vw, 34px); }
  .gallery img,.gallery .product-placeholder-image { max-height: clamp(380px, calc(9.375vw + 200px), 560px); }
  .product-side { padding: clamp(26px, 1.67vw, 42px); border-radius: clamp(24px, 1.35vw, 34px); }
  .product-side h1 { font-size: clamp(40px, calc(1.0417vw + 20px), 60px); }
  .detail-price { font-size: clamp(32px, calc(.625vw + 20px), 44px); }
  .description-card,.content-card { padding: clamp(24px, 1.46vw, 36px); border-radius: clamp(24px, 1.35vw, 34px); font-size: clamp(16px, calc(.15625vw + 13px), 19px); }

  /* Keep every root category on one centered line across 2K and 4K displays. */
  .catbar .catbar-inner {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0 clamp(18px, 1.25vw, 48px);
    justify-content: center;
    flex-wrap: nowrap;
    gap: clamp(0px, .42vw, 16px);
    overflow: visible;
  }

  .catbar .catbar-all,
  .catbar .catbar-root {
    height: 100%;
  }
}
