/* HYPERMARKET SEPIDE — newspaper catalog + aisle floorplan + sticky WA cart */
body.sh-hyper{
  font-family:"Vazirmatn",system-ui,sans-serif;
  background:#f4f7fb;
  color:#0f2744;
  padding-bottom:88px;
}
.sh-hyper h1,.sh-hyper h2,.sh-hyper h3,.sh-logo,.sh-cell b,.sh-price strong{
  font-family:"Rubik","Vazirmatn",sans-serif;
}

/* (a) flyer ticker */
.sh-ticker{
  background:#0b3d91;
  color:#fff;
  overflow:hidden;
  border-bottom:3px solid #ffd400;
  font-size:.86rem;
  font-weight:600;
}
.sh-ticker-track{
  display:flex;
  gap:2.5rem;
  width:max-content;
  padding:.55rem 0;
  animation:sh-marquee 28s linear infinite;
}
.sh-ticker-track span{white-space:nowrap;opacity:.95}
@keyframes sh-marquee{
  from{transform:translateX(0)}
  to{transform:translateX(50%)}
}

.sh-top{
  display:flex;align-items:center;gap:1rem;flex-wrap:wrap;
  width:min(1120px,94%);margin:0 auto;padding:1rem 0;
}
.sh-logo{
  font-weight:800;font-size:1.35rem;color:#0b3d91;letter-spacing:-.02em;
}
.sh-logo span{
  display:inline-block;margin-inline-start:.35rem;background:#ffd400;color:#0b3d91;
  font-size:.72rem;padding:.15rem .45rem;border-radius:4px;vertical-align:middle;
}
.sh-nav{display:flex;gap:1rem;flex:1;flex-wrap:wrap;font-size:.9rem}
.sh-nav a{opacity:.8}
.sh-nav a:hover{opacity:1;color:#0b3d91}
.sh-back{font-size:.85rem;color:#0b3d91;font-weight:700;border:1px solid #b8c9e0;padding:.4rem .8rem;border-radius:999px;background:#fff}

.sh-masthead{
  width:min(1120px,94%);margin:0 auto 2rem;
  display:grid;grid-template-columns:1.05fr .95fr;gap:1.5rem;align-items:center;
  background:#fff;border:1px solid #d5e0ef;border-radius:4px;
  box-shadow:0 1px 0 #ffd400 inset;padding:1.5rem;
}
@media(max-width:820px){.sh-masthead{grid-template-columns:1fr}}
.sh-eyebrow{font-size:.75rem;font-weight:700;color:#0b3d91;letter-spacing:.06em;margin-bottom:.4rem}
.sh-masthead h1{font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.2;margin-bottom:.6rem}
.sh-lead{color:#3a5474;margin-bottom:1rem}
.sh-mast-meta{display:flex;flex-wrap:wrap;gap:.5rem}
.sh-mast-meta span{
  background:#e8f0fb;color:#0b3d91;font-size:.78rem;font-weight:600;
  padding:.35rem .7rem;border-radius:999px;
}
.sh-mast-photo{position:relative;margin:0}
.sh-mast-photo img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:2px;border:1px solid #c5d4e8}
.sh-mast-photo figcaption{
  position:absolute;bottom:.6rem;right:.6rem;background:rgba(11,61,145,.9);color:#fff;
  font-size:.75rem;padding:.25rem .55rem;border-radius:2px;
}

/* (b) aisle floorplan */
.sh-aisles{width:min(1120px,94%);margin:0 auto 2.5rem}
.sh-aisles-head{display:flex;justify-content:space-between;align-items:end;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}
.sh-aisles-head h2{font-size:1.45rem;color:#0b3d91}
.sh-aisles-head p{color:#5a7394;font-size:.92rem}
.sh-floorplan{
  display:grid;grid-template-columns:repeat(4,1fr);gap:.55rem;
  background:#0b3d91;padding:.75rem;border-radius:6px;
  border:3px solid #ffd400;
}
@media(max-width:640px){.sh-floorplan{grid-template-columns:repeat(2,1fr)}}
.sh-cell{
  background:#fff;border:0;border-radius:4px;padding:.85rem .6rem;cursor:pointer;
  text-align:center;color:#0f2744;transition:transform .15s,box-shadow .15s;
}
.sh-cell:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(0,0,0,.18)}
.sh-cell b{display:block;font-size:1.05rem;color:#0b3d91;margin-bottom:.15rem}
.sh-cell span{font-size:.78rem;color:#4a6280}
.sh-cell.hot{background:#fff8d6;box-shadow:inset 0 0 0 2px #ffd400}
.sh-cell.exit{background:#e3f7ea}
.sh-aisle-legend{margin-top:.75rem;font-size:.82rem;color:#5a7394;display:flex;gap:1rem;align-items:center;flex-wrap:wrap}
.sh-aisle-legend .dot{width:.7rem;height:.7rem;border-radius:2px;display:inline-block;margin-inline-end:.35rem;vertical-align:middle}
.sh-aisle-legend .dot.hot{background:#ffd400}
.sh-aisle-legend .dot.exit{background:#3cb371}

/* (c) newspaper catalog */
.sh-catalog{
  background:#fffef8;
  border-block:1px solid #e2d9c4;
  padding:2.2rem 0 2.5rem;
  margin-bottom:2.5rem;
}
.sh-cat-head{width:min(1120px,94%);margin:0 auto 1.25rem;display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:.5rem}
.sh-cat-head h2{font-size:1.5rem;color:#0b3d91}
.sh-paper-date{font-size:.85rem;color:#8a7a5a;font-style:italic}
.sh-newspaper{
  width:min(1120px,94%);margin:0 auto;
  columns:3;column-gap:1.25rem;column-rule:1px solid #e6dcc6;
}
@media(max-width:900px){.sh-newspaper{columns:2}}
@media(max-width:560px){.sh-newspaper{columns:1}}
.sh-col{
  break-inside:avoid;margin-bottom:1.25rem;padding-bottom:1rem;
  border-bottom:1px dashed #d9cfb6;display:block;
}
.sh-col.lead{column-span:all;display:grid;grid-template-columns:1.1fr .9fr;gap:1rem;align-items:center;border-bottom:2px solid #0b3d91;padding-bottom:1.25rem;margin-bottom:1.5rem}
@media(max-width:700px){.sh-col.lead{grid-template-columns:1fr;column-span:none}}
.sh-col img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:2px;margin-bottom:.65rem;filter:contrast(1.02)}
.sh-col.lead img{margin-bottom:0;aspect-ratio:16/11}
.sh-col h3{font-size:1.05rem;margin-bottom:.35rem;color:#0f2744}
.sh-price{margin-bottom:.4rem;color:#0b3d91}
.sh-price del{color:#8a9bb0;font-size:.85rem;margin-inline-end:.35rem}
.sh-price strong{font-size:1.15rem}
.sh-price small{color:#5a7394;font-weight:400}
.sh-col p{font-size:.9rem;color:#3a5474;margin-bottom:.5rem}
.sh-aisle-tag{
  display:inline-block;font-size:.72rem;font-weight:700;background:#0b3d91;color:#fff;
  padding:.2rem .5rem;border-radius:2px;
}

/* (d) family bulk split */
.sh-bulk{width:min(1120px,94%);margin:0 auto 2.5rem}
.sh-bulk h2{font-size:1.45rem;color:#0b3d91;margin-bottom:1rem}
.sh-split{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
@media(max-width:720px){.sh-split{grid-template-columns:1fr}}
.sh-banner{
  position:relative;display:block;overflow:hidden;border-radius:6px;min-height:220px;
  border:1px solid #c5d4e8;
}
.sh-banner img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.sh-banner-copy{
  position:relative;z-index:1;height:100%;min-height:220px;
  display:flex;flex-direction:column;justify-content:flex-end;
  padding:1.25rem;color:#fff;
  background:linear-gradient(180deg,transparent 20%,rgba(11,61,145,.92) 100%);
}
.sh-banner.right .sh-banner-copy{background:linear-gradient(180deg,transparent 20%,rgba(15,39,68,.92) 100%)}
.sh-badge{
  align-self:flex-start;background:#ffd400;color:#0b3d91;font-size:.7rem;font-weight:800;
  padding:.25rem .55rem;border-radius:2px;margin-bottom:.5rem;letter-spacing:.04em;
}
.sh-badge.yellow{background:#fff;color:#0b3d91}
.sh-banner h3{font-size:1.2rem;margin-bottom:.25rem}
.sh-banner p{font-size:.88rem;opacity:.9;margin-bottom:.4rem}
.sh-banner strong{font-size:1.05rem;color:#ffd400}

.sh-store{
  width:min(1120px,94%);margin:0 auto 2rem;
  display:grid;grid-template-columns:1fr 1.2fr;gap:1.25rem;align-items:center;
  background:#fff;border:1px solid #d5e0ef;border-radius:6px;padding:1.25rem;
}
@media(max-width:800px){.sh-store{grid-template-columns:1fr}}
.sh-store h2{font-size:1.3rem;color:#0b3d91;margin-bottom:.5rem}
.sh-store p{color:#3a5474;font-size:.92rem;margin-bottom:.35rem}
.sh-wa{
  display:inline-block;margin-top:.8rem;background:#25D366;color:#fff;
  padding:.7rem 1.15rem;border-radius:999px;font-weight:700;font-size:.92rem;
}
.sh-store iframe{width:100%;height:220px;border:0;border-radius:6px}

.sh-foot{
  text-align:center;padding:1.5rem 4% 2rem;color:#6a809c;font-size:.85rem;
  border-top:1px solid #d5e0ef;
}
.sh-foot a{display:inline-block;margin-top:.4rem;color:#0b3d91;font-weight:600}

/* (e) sticky mini-cart */
.sh-minicart{
  position:fixed;bottom:0;inset-inline:0;z-index:40;
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  background:#0b3d91;color:#fff;padding:.85rem 4%;
  border-top:3px solid #ffd400;
  box-shadow:0 -8px 24px rgba(11,61,145,.25);
}
.sh-cart-info{display:flex;align-items:baseline;gap:.75rem;flex-wrap:wrap}
.sh-cart-count{
  background:#ffd400;color:#0b3d91;font-size:.75rem;font-weight:800;
  padding:.2rem .5rem;border-radius:2px;
}
.sh-cart-info strong{font-size:1.05rem}
.sh-cart-info small{opacity:.8;font-size:.78rem}
.sh-cart-wa{
  flex-shrink:0;background:#25D366;color:#fff;font-weight:800;
  padding:.7rem 1.2rem;border-radius:999px;font-size:.9rem;
}
@media(max-width:480px){
  .sh-minicart{flex-direction:column;align-items:stretch;text-align:center}
  .sh-cart-info{justify-content:center}
}