/* Arg Sanat «پیشخوان کارخانه» — catalog.html «کاتالوگ محصولات» (assets/catalog-page.js builds the rows).
   Loaded after site.css and product-category.css; tokens only. Same rules: nothing under 16px, blue focus
   ring, red only for buying, digits in .ltr isolates, no dot next to a digit. Big text for older buyers. */

/* the sticky «دسته‌بندی‌ها» nav below does the site category bar's job here (it jumps within the page) */
.pg-catalog .catbar{display:none}

.cg-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px 32px;flex-wrap:wrap;padding:6px 0 18px}
.cg-head h1{font-size:48px;line-height:1.35}
.cg-head .lead{margin-top:6px;max-width:40em}
.cg-facts{list-style:none;display:flex;gap:10px;flex-wrap:wrap}
.cg-facts li{background:var(--paper);border:1px solid var(--line);border-radius:var(--r2);padding:8px 18px;display:flex;flex-direction:column;align-items:center;min-width:104px;line-height:1.35}
.cg-facts b{font:800 30px/1.2 var(--fd)}
.cg-facts span{font-size:16px;color:var(--ink-2)}
.cg-note{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;background:var(--blue-tint);color:var(--blue-2);border-radius:var(--r2);padding:14px 18px;margin-bottom:22px;font-size:17px;line-height:1.8}
.cg-note .ico{grid-row:span 2;width:26px;height:26px;margin-top:4px;color:var(--blue)}
.cg-note b{color:var(--ink)}

/* sticky nav */
.cg-nav{position:sticky;top:var(--cg-top,0px);z-index:30;background:var(--plaster);border-block:1px solid var(--line);box-shadow:0 8px 18px -14px rgba(26,28,31,.35)}
.cg-nav__in{display:flex;align-items:flex-start;gap:8px 12px;padding-block:8px}
.cg-nav__l{flex:none;display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:700;font-size:16px;color:var(--ink-2);white-space:nowrap}
.cg-nav__l .ico{width:20px;height:20px;color:var(--blue)}
.cg-chips{list-style:none;display:flex;flex-wrap:wrap;gap:6px 8px;min-width:0}
.cg-chips .chip{min-height:44px;padding:4px 14px}
.cg-chips .chip[aria-current="location"]{background:var(--ink);border-color:var(--ink);color:#fff;font-weight:700}
.cg-chips .chip[aria-current="location"] small{color:var(--on-ink-2)}
.cg-nav__toggle{display:none}

/* sections */
.cg-sec{padding:30px 0 6px;scroll-margin-top:calc(var(--cg-top,0px) + var(--cg-nav-h,60px) + 8px)}
.cg-sec__head{display:flex;align-items:flex-end;justify-content:space-between;gap:4px 20px;flex-wrap:wrap;margin-bottom:14px;padding-bottom:8px;border-bottom:2px solid var(--ink)}
.cg-sec__head h2{font-size:32px;line-height:1.4}
.cg-sec__head h2 small{font:500 18px/1 var(--fb);color:var(--ink-2);margin-inline-start:6px}
.cg-sec__head h2:focus{outline:none}
.cg-sec__head h2:focus-visible{outline:3px solid var(--blue);outline-offset:2px}

/* items: a card each; photo, name, code and carton, price, add + phone order */
.cg-list{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.cg-item{background:var(--paper);border:1px solid var(--line);border-radius:var(--r2);overflow:hidden;display:flex;flex-direction:column}
.cg-item:hover{border-color:var(--ink)}
.cg-item__ph{aspect-ratio:4/3}
.cg-item__b{padding:12px 16px 4px;display:flex;flex-direction:column;gap:4px}
.cg-item__t{font:700 18px/1.6 var(--fb)}
.cg-item__t a{color:var(--ink);text-decoration:none}
.cg-item__t a:hover{text-decoration:underline}
.cg-item__meta{font-size:16px;color:var(--ink-2);line-height:1.7}
.cg-item__code{color:var(--ink);font-weight:700}
.cg-item__meta .sep{height:.85em}
.cg-item__buy{margin-top:auto;padding:6px 16px 14px;display:flex;flex-direction:column;gap:8px}
.cg-item__buy .price b{font-size:25px}
.cg-call{align-self:center;display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 10px;border:0;background:none;color:var(--blue);font:700 16px/1.3 var(--fb);text-decoration:underline;text-underline-offset:4px}
.cg-call .ico{width:18px;height:18px}
.cg-call:hover{text-decoration-thickness:2px}
.cg-soon{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:16px;color:var(--ink-2)}
.cg-call-soon{min-height:52px}
.cg-noscript{padding:24px 0;font-size:17px}
.cg-callbar{margin-top:40px}

@media (max-width:1180px){
  .cg-list{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media (max-width:1020px){
  .cg-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:719px){
  .cg-head{padding-bottom:12px;gap:12px}
  .cg-head h1{font-size:32px}
  .cg-facts{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .cg-facts li{min-width:0;padding:6px 8px}
  .cg-facts b{font-size:24px}
  .cg-note{padding:12px 14px;font-size:16px;gap:4px 10px}
  .cg-note .ico{width:22px;height:22px}

  /* phones: one button names the current group and opens all of them (no hidden sideways scroller) */
  .cg-nav__in{display:block;padding-block:8px}
  .cg-nav--js .cg-nav__l{display:none}
  .cg-nav--js .cg-nav__toggle{display:flex;align-items:center;gap:8px;width:100%;min-height:48px;padding:0 14px;border:2px solid var(--ink);border-radius:var(--r1);background:var(--paper);color:var(--ink);font:500 16px/1.3 var(--fb);text-align:start}
  .cg-nav__toggle>span{font-weight:700;white-space:nowrap}
  .cg-nav__toggle b{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .cg-nav__toggle .ico{width:20px;height:20px;flex:none}
  .cg-nav__chev{transition:transform .15s}
  .cg-nav__toggle[aria-expanded="true"] .cg-nav__chev{transform:rotate(180deg)}
  .cg-nav--js:not(.is-open) .cg-chips{display:none}
  .cg-nav--js.is-open .cg-chips{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding-top:10px;max-height:calc(100vh - 140px);overflow:auto}
  .cg-nav--js.is-open .chip{width:100%;justify-content:center;white-space:normal;text-align:center;line-height:1.35}

  .cg-sec{padding-top:24px}
  .cg-sec__head{margin-bottom:10px}
  .cg-sec__head h2{font-size:25px}
  .cg-sec__head h2 small{font-size:16px}
  /* one item per row: photo at the start, the words beside it, buying below; text stays large */
  .cg-list{grid-template-columns:1fr;gap:10px}
  .cg-item{display:grid;grid-template-columns:112px minmax(0,1fr);grid-template-rows:auto 1fr auto auto;grid-template-areas:"ph b" "ph price" "add add" "call call";column-gap:12px;padding:12px 12px 4px}
  .cg-item__ph{grid-area:ph;aspect-ratio:1/1;align-self:start;border-radius:var(--r1)}
  .cg-item__b{grid-area:b;padding:0}
  .cg-item__t{font-size:17px;line-height:1.6}
  .cg-item__buy{display:contents}
  .cg-item__buy .price{grid-area:price;align-self:end;padding-bottom:2px}
  .cg-item__buy .price b{font-size:23px}
  .cg-item__buy .addbox{grid-area:add;margin-top:10px}
  .cg-item__buy .cg-call{grid-area:call;justify-self:center}
  .cg-item__buy .cg-soon{grid-area:price;align-self:end}
  .cg-item__buy .cg-call-soon{grid-area:add;margin:10px 0 8px}
  .cg-callbar{margin-top:28px}
}
@media (prefers-reduced-motion:reduce){.cg-nav__chev{transition:none}}
