/* ── PROMOTIONS-SPECIFIC ─────────────────────────────── */
.promo-hero{
  background:linear-gradient(160deg,#1a2232 0%,#0d1320 55%,#06283f 100%);color:#fff;
  padding:64px clamp(20px,4vw,72px) 56px;
  position:relative;overflow:hidden;
}
.promo-hero::before{
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse at 70% 50%,rgba(0,102,204,.22) 0%,transparent 65%);
  pointer-events:none;
}
.promo-hero-inner{max-width:1280px;margin:0 auto;position:relative;z-index:1;}
.promo-hero-ey{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:#4da3ff;margin:0 0 10px;}
.promo-hero-h{font-size:clamp(32px,5vw,64px);font-weight:700;letter-spacing:-.05em;line-height:1.04;margin:0 0 14px;}
.promo-hero-sub{font-size:clamp(13px,1.3vw,16px);color:rgba(255,255,255,.68);line-height:1.65;max-width:520px;margin:0 0 28px;}

/* countdown */
.promo-cd{display:flex;align-items:flex-end;gap:20px;flex-wrap:wrap;}
.promo-cd-timer{display:flex;align-items:center;gap:5px;}
.promo-cd-unit{display:flex;flex-direction:column;align-items:center;background:rgba(255,255,255,.09);border:1.5px solid rgba(255,255,255,.12);border-radius:12px;padding:9px 13px;min-width:54px;}
.promo-cd-num{font-size:22px;font-weight:700;letter-spacing:-.04em;line-height:1;color:#fff;}
.promo-cd-lbl{font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:rgba(255,255,255,.45);margin-top:3px;}
.promo-cd-sep{font-size:20px;font-weight:700;color:rgba(255,255,255,.3);margin-bottom:10px;}
.promo-hero-trust{display:flex;gap:18px;flex-wrap:wrap;}
.promo-hero-trust-item{display:flex;align-items:center;gap:7px;font-size:12px;color:rgba(255,255,255,.55);}
.promo-hero-trust-item svg{width:14px;height:14px;stroke:rgba(255,255,255,.4);flex-shrink:0;}

/* filter bar — matches shop.html fbar-inner style */
.promo-fbar{
  position:sticky;top:0;z-index:200;
  padding:8px clamp(20px,4vw,72px);
  background:transparent;
}
.promo-fbar-inner{
  max-width:1280px;margin:0 auto;
  display:flex;align-items:center;gap:8px;flex-wrap:wrap;
  border-radius:14px;
  background:rgba(255,255,255,.96);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  box-shadow:0 4px 28px -6px rgba(0,0,0,.14),0 0 0 1px rgba(0,0,0,.1);
  padding:10px 18px;
}
.promo-fbar-lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--t3);margin-right:2px;flex-shrink:0;}
.promo-fbar-tabs{display:flex;gap:4px;position:relative;flex-wrap:wrap;}
/* filter tabs match .ftab style */
.promo-fbar-tabs{gap:0!important;border:1.5px solid rgba(0,0,0,0.12);border-radius:9px;overflow:hidden;flex-wrap:nowrap!important;}
.promo-ftab{
  height:36px;padding:0 16px;border-radius:0;
  border:none;border-right:1.5px solid rgba(0,0,0,0.10);
  background:#fff;
  font:600 12.5px var(--font);color:var(--t2);
  cursor:pointer;display:inline-flex;align-items:center;
  transition:background 140ms,color 140ms;white-space:nowrap;
}
.promo-ftab:last-child{border-right:none;}
.promo-ftab:hover:not(.on){background:#f5f5f7;color:var(--text);}
.promo-ftab.on{background:var(--blue);color:#fff;}
.promo-ftab--clear{color:#7c3aed;}
.promo-ftab--clear:hover:not(.on){background:rgba(124,58,237,0.08);color:#7c3aed;}
.promo-ftab--clear.on{background:#7c3aed;color:#fff;}
.promo-fbar-count{margin-left:auto;font-size:12px;color:var(--t3);white-space:nowrap;flex-shrink:0;}

.pg-grid--5-clear{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;}
@media(max-width:1280px){.pg-grid--5-clear{grid-template-columns:repeat(3,1fr);}}
@media(max-width:820px){.pg-grid--5-clear{grid-template-columns:repeat(2,1fr);}}
@media(max-width:520px){.pg-grid--5-clear{grid-template-columns:1fr;}}

/* ── S-CARD iOS complete fix ── */
.s-card { background: #fff !important; border-radius: 18px !important; border: 1.5px solid rgba(0,0,0,0.08) !important; overflow: hidden !important; display: flex !important; flex-direction: column !important; transition: transform 220ms cubic-bezier(0.2,0,0,1), box-shadow 220ms, border-color 220ms !important; }
.s-card:hover { transform: translateY(-4px) !important; border-color: rgba(0,0,0,0.14) !important; box-shadow: 0 16px 40px -12px rgba(0,0,0,0.14) !important; }
.s-card-img { aspect-ratio: 4/3; background: #f5f5f7 !important; position: relative; overflow: hidden; display: flex; align-items: center; justify-content: center; }
.s-card-img img { width: 100%; height: 100%; object-fit: contain; padding: 12px; transition: transform 320ms cubic-bezier(0.2,0,0,1); }
.s-card:hover .s-card-img img { transform: scale(1.04); }
.s-card-bdg { position: absolute; top: 10px; left: 10px; z-index: 2; display: flex; flex-wrap: wrap; gap: 4px; }
.s-bdg { display: inline-flex; align-items: center; height: 18px; padding: 0 7px; border-radius: 5px; font: 700 9.5px -apple-system,system-ui,sans-serif; letter-spacing: .04em; text-transform: uppercase; }
.s-bdg-sale { background: #d0312d; color: #fff; }
.s-bdg-new  { background: #1f7a3a; color: #fff; }
.s-bdg-po   { background: #515154; color: #fff; }
.s-bdg-clear{ background: #7c3aed; color: #fff; }
.s-card-body { padding: 14px 16px 8px; display: flex; flex-direction: column; gap: 3px; flex: 1; }
.s-card-brand { font: 700 10.5px -apple-system,system-ui,sans-serif; letter-spacing: .12em; text-transform: uppercase; color: var(--brand-blue); }
.s-card-name  { font: 700 15px -apple-system,system-ui,sans-serif; letter-spacing: -.02em; color: #1d1d1f; line-height: 1.25; }
.s-card-desc  { font: 400 12px -apple-system,system-ui,sans-serif; color: #6b6b6e; line-height: 1.4; margin-top: 2px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.s-card-foot  { padding: 10px 16px 14px; display: flex; flex-direction: column; gap: 10px; }
.s-card-price-wrap { display: flex; flex-direction: column; gap: 2px; }
.s-card-price { font: 700 21px -apple-system,system-ui,sans-serif; letter-spacing: -.04em; color: #1d1d1f; }
.s-card-was-row { display: flex; align-items: baseline; gap: 6px; }
.s-card-was   { font: 500 12px -apple-system,system-ui,sans-serif; color: #6b6b6e; text-decoration: line-through; }
.s-card-save  { font: 700 11px -apple-system,system-ui,sans-serif; color: #1f7a3a; }
.s-card-actions { display: flex; gap: 6px; align-items: center; }
.s-btn-cart { flex: 1; height: 36px; border-radius: 9px !important; border: none; background: var(--brand-blue); color: #fff; font: 600 13px -apple-system,system-ui,sans-serif; cursor: pointer; transition: background 150ms, transform 150ms; }
.s-btn-cart:hover { background: #005bb5; transform: translateY(-1px); }
.s-btn-view { height: 36px; padding: 0 12px; border-radius: 9px !important; border: 1.5px solid rgba(0,0,0,0.12); background: #fff; color: #1d1d1f; font: 600 13px -apple-system,system-ui,sans-serif; cursor: pointer; display: flex; align-items: center; gap: 4px; white-space: nowrap; transition: border-color 150ms; }
.s-btn-view:hover { border-color: rgba(0,0,0,0.3); }
.s-btn-view svg { width: 14px; height: 14px; stroke-width: 3; }

/* product grid — exact pgrid from shop.html */
.promo-grid-wrap{padding:32px clamp(20px,4vw,72px) 64px;background:var(--bg);}
.promo-grid-max{max-width:1680px;margin:0 auto;}
.promo-pgrid{
  display:grid;
  grid-template-columns:repeat(5,1fr);
  gap:12px;
  background:var(--bg);
}
@media(max-width:1400px){.promo-pgrid{grid-template-columns:repeat(4,1fr);}}
@media(max-width:1000px){.promo-pgrid{grid-template-columns:repeat(3,1fr);}}
@media(max-width:680px){.promo-pgrid{grid-template-columns:repeat(2,1fr);gap:8px;}}

/* cards inherit all .s-card styles from pages.css */
.s-card.hidden{display:none!important;}

/* alert strip */
.promo-alert{background:#fff;padding:52px clamp(20px,4vw,72px);text-align:center;border-top:1px solid var(--bdr);}

/* clearance hero variant */
.promo-hero--clear { background: linear-gradient(160deg,#1a0a2e 0%,#12061c 55%,#1a0a2e 100%) !important; }
.promo-hero--clear::before { background: radial-gradient(ellipse at 70% 50%, rgba(124,58,237,.28) 0%, transparent 65%) !important; }
.promo-hero--clear #promo-hero-ey { color: #c084fc !important; }


/* stock chip — inline with was/save, far right */
.s-card-was-row{display:flex;align-items:baseline;gap:6px;}
.s-card-stock{
  margin-left:auto;
  font:700 10px var(--font);letter-spacing:.04em;text-transform:uppercase;
  color:#d0312d;background:rgba(208,49,45,.09);
  border:1px solid rgba(208,49,45,.22);
  padding:3px 8px;border-radius:6px;white-space:nowrap;
  align-self:center;
}

/* ── ELITE FILTER BAR ── */
.promo-fbar-inner{gap:14px;padding:12px 20px;}
.promo-fbar-lbl{display:none;}
.promo-fbar-tabs{
  gap:0!important;border:none!important;border-radius:11px;overflow:hidden;
  background:rgba(0,0,0,0.05);padding:3px;flex-wrap:nowrap!important;
}
.promo-ftab{
  border:none!important;border-radius:8px!important;background:transparent!important;
  height:34px;padding:0 16px;
  font:600 12.5px var(--font);color:var(--t2);
  display:inline-flex;align-items:center;gap:7px;
  transition:background 180ms,color 180ms,box-shadow 180ms;
}
.promo-ftab:hover:not(.on){background:rgba(255,255,255,.7)!important;color:var(--text);}
.promo-ftab.on{background:#fff!important;color:var(--text)!important;box-shadow:0 1px 6px rgba(0,0,0,.12);}
.promo-ftab .ftab-n{
  font:700 10px var(--font);
  background:rgba(0,0,0,.07);color:var(--t2);
  min-width:20px;height:18px;padding:0 6px;border-radius:9px;
  display:inline-flex;align-items:center;justify-content:center;
}
.promo-ftab.on .ftab-n{background:var(--blue);color:#fff;}
.promo-ftab[data-filter="clearance"].on .ftab-n{background:#7c3aed;}
.promo-fbar-count{margin-left:auto;font:500 12px var(--font);color:var(--t3);white-space:nowrap;}
