  /* ---------- Products — головний елемент сайту ---------- */
  .products{ padding:18px 0 52px; }
  .products-head{ margin-bottom:22px; }
  .products-head h2{ font-size:38px; }
  .product-grid{ display:grid; grid-template-columns:1fr 1fr; gap:32px; align-items:stretch; }
  @media (max-width:780px){ .product-grid{ grid-template-columns:1fr; } }

  .product-card{
    background:#fff; border:1px solid var(--line); border-radius:var(--radius-lg); overflow:hidden;
    transition:transform .35s cubic-bezier(.2,.7,.2,1), box-shadow .35s cubic-bezier(.2,.7,.2,1), border-color .35s ease;
    text-align:left; width:100%; min-height:100%; display:flex; flex-direction:column; box-shadow:var(--shadow-sm);
    color:var(--ink);
  }
  .product-card:hover{ transform:translateY(-8px); box-shadow:var(--shadow-lg); border-color:var(--accent-soft); }
  .product-visual{
    display:block; width:100%; aspect-ratio:16/10; position:relative; overflow:hidden; background:#F2F0E9;
    border:0; color:inherit; text-align:left; -webkit-appearance:none; appearance:none;
  }
  .product-picture{ display:block; width:100%; height:100%; }
  .product-photo{ width:100%; height:100%; object-fit:cover; object-position:center; transition:transform .6s cubic-bezier(.2,.7,.2,1); }
  .product-card:hover .product-photo{ transform:scale(1.035); }
  .product-visual .pv-tag{
    position:absolute; top:18px; left:18px; background:rgba(255,255,255,.9); backdrop-filter:blur(6px);
    font-family:var(--font-sans); font-size:11px; font-weight:600; letter-spacing:0.07em; text-transform:uppercase; color:var(--accent-dark);
    padding:7px 12px; border-radius:var(--radius-pill);
  }
  .product-body{ padding:30px 30px 28px; display:flex; flex-direction:column; gap:16px; flex:1; }
  .product-body h3{ min-height:58px; font-size:23px; font-weight:600; line-height:1.22; letter-spacing:-0.025em; }
  .product-body > p.product-desc{ color:var(--ink-soft); font-size:14.5px; }
  .product-availability{
    display:flex; align-items:center; gap:8px; color:var(--accent-dark);
    font-size:13px; font-weight:600;
  }
  .product-availability::before{
    content:""; width:8px; height:8px; flex:0 0 8px; border-radius:50%;
    background:var(--accent); box-shadow:0 0 0 3px var(--accent-soft);
  }
  .product-chips{ display:flex; flex-wrap:wrap; gap:8px; margin:2px 0 4px; }
  .chip{ font-size:12.5px; color:var(--accent-dark); background:var(--accent-soft); padding:7px 12px; border-radius:var(--radius-pill); }
  .product-price{ border-top:1px solid var(--line); padding-top:20px; margin-top:auto; font-size:14px; }
  .product-price strong{ font-family:var(--font-sans); font-size:18px; font-weight:600; letter-spacing:-0.01em; }
  .product-actions{ display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
  .product-action{
    min-height:44px; display:inline-flex; align-items:center; justify-content:center; padding:10px 17px;
    border:1px solid var(--line); border-radius:var(--radius-pill); background:transparent;
    color:var(--ink); font-size:13.5px; font-weight:600; transition:background .25s ease, color .25s ease, border-color .25s ease, transform .25s ease;
  }
  .product-action:hover{ transform:translateY(-2px); border-color:var(--accent); }
  .product-action-primary{ background:var(--accent); border-color:var(--accent); color:#fff; }
  .product-action-primary:hover{ background:var(--accent-dark); border-color:var(--accent-dark); }
  @media (max-width:780px){
    .product-card{ background:#fff; isolation:isolate; }
    .product-visual .pv-tag{
      background:#fff; border-color:var(--line);
      -webkit-backdrop-filter:none; backdrop-filter:none;
    }
    .product-body{ position:relative; z-index:1; background:#fff; }
    .product-body h3{ min-height:0; }
  }
  @media (max-width:600px){
    .hero{ padding:12px 0 4px; }
    .products{ padding:16px 0 44px; }
  }

