/* ================= Store page redesign ================= */
.sp-hero{background:#f6f7fb;padding-bottom:6px}
.sp-cover{height:270px;background:linear-gradient(120deg,#16265c,#2b4fd6);background-size:cover;background-position:center;position:relative}
.sp-cover:after{content:"";position:absolute;inset:0;background:radial-gradient(120% 120% at 85% 0%,rgba(255,106,0,.28),transparent 55%)}
.sp-cover-in{position:relative;height:100%;display:flex;align-items:flex-end;justify-content:flex-end;padding-bottom:16px}
.sp-dots{display:flex;gap:6px}
.sp-dots span{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.45)}
.sp-dots span.on{background:#fff;width:22px;border-radius:6px}
.sp-head{background:#fff;border:1px solid #e9ebf3;border-radius:16px;margin-top:-56px;position:relative;z-index:2;padding:20px 22px;display:flex;gap:20px;align-items:flex-start;box-shadow:0 10px 34px rgba(18,34,91,.09)}
.sp-logo{flex:0 0 108px;width:108px;height:108px;border-radius:16px;overflow:hidden;border:4px solid #fff;box-shadow:0 6px 20px rgba(18,34,91,.16);background:#f2f4fa;margin-top:-46px}
.sp-logo img{width:100%;height:100%;object-fit:cover;display:block}
.sp-head-main{flex:1;min-width:0}
.sp-name{font-size:24px;font-weight:800;color:#151c33;margin:0 0 6px;display:flex;align-items:center;gap:8px;line-height:1.2}
.sp-verified{color:#0f9d58;font-size:18px}
.sp-sub{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:8px}
.sp-rating{display:inline-flex;gap:5px;align-items:center;color:#f2a608;font-size:13px}
.sp-rating em{color:#6b7285;font-style:normal;font-weight:700;font-size:12.5px}
.sp-chip{font-size:12px;color:#5a6076;background:#f2f4fa;border-radius:20px;padding:4px 11px;display:inline-flex;gap:6px;align-items:center}
.sp-desc{font-size:13.8px;color:#5a6076;line-height:1.55;margin:0 0 12px;max-width:760px}
.sp-stats{display:flex;gap:26px}
.sp-stats>div{display:flex;flex-direction:column;line-height:1.1}
.sp-stats b{font-size:19px;font-weight:800;color:#12225b}
.sp-stats span{font-size:11.5px;color:#8b90a0;text-transform:uppercase;letter-spacing:.03em}
.sp-actions{display:flex;flex-direction:column;gap:9px;flex:0 0 210px}
.sp-btn{border-radius:30px;padding:11px 18px;font-weight:700;font-size:13.5px;text-align:center;text-decoration:none;transition:.2s;border:1.5px solid transparent;display:inline-flex;gap:8px;align-items:center;justify-content:center}
.sp-btn-primary{background:linear-gradient(135deg,#e62e04,#ff6a2b);color:#fff;box-shadow:0 6px 16px rgba(230,46,4,.26)}
.sp-btn-primary:hover{color:#fff;transform:translateY(-1px)}
.sp-btn-ghost{background:#eef8f1;color:#0f9d58;border-color:#cdecd9}
.sp-btn-ghost:hover{color:#0f9d58}
.sp-btn-outline{border-color:#cfd6ea;color:#12225b;background:#fff}
.sp-btn-outline:hover{background:#f4f6fc;color:#12225b}
.sp-tabs{display:flex;gap:4px;margin-top:14px;background:#fff;border:1px solid #e9ebf3;border-radius:12px;padding:5px;width:fit-content}
.sp-tabs a{padding:9px 20px;border-radius:9px;font-weight:700;font-size:13.5px;color:#5a6076;text-decoration:none}
.sp-tabs a:hover{color:#12225b;background:#f4f6fc}
.sp-tabs a.on{background:#12225b;color:#fff}
.sp-section{padding:26px 0 6px}
.sp-sec-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.sp-sec-head h2{font-size:19px;font-weight:800;color:#12225b;margin:0;display:flex;gap:9px;align-items:center}
.sp-count{font-size:13px;color:#8b90a0}
.sp-products{padding-bottom:40px}
.sp-grid-item{margin-bottom:16px}
.sp-load-wrap{text-align:center;padding:20px 0 6px}
.sp-load-more{background:#12225b;color:#fff;border:0;border-radius:30px;padding:13px 38px;font-weight:700;font-size:14px;cursor:pointer;transition:.2s;min-width:220px}
.sp-load-more:hover:not(:disabled){background:#0d1a44}
.sp-load-more:disabled{opacity:.75}
.sp-load-more.is-done{background:#eceef4;color:#8a8f9e;cursor:default}
.sp-spin{color:#12225b;font-size:20px;margin-top:12px}
.sp-empty{text-align:center;padding:60px 0;color:#98a0b5}
.sp-empty i{font-size:50px;opacity:.35;display:block;margin-bottom:8px}
@media (max-width:991px){
  .sp-cover{height:190px}
  .sp-head{flex-wrap:wrap}
  .sp-logo{flex:0 0 84px;width:84px;height:84px;margin-top:-38px}
  .sp-name{font-size:19px}
  .sp-actions{flex:1 1 100%;flex-direction:row}
  .sp-actions .sp-btn{flex:1}
  .sp-stats{gap:18px}
}

/* ---- store page: 5-per-row + category chips + cover overlay ---- */
@media (min-width:992px){ .sp-grid .sp-grid-item{flex:0 0 20% !important;max-width:20% !important;width:20% !important} }
.sp-cover{position:relative}
.sp-cover-grad{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,15,38,.88) 0%,rgba(9,15,38,.58) 42%,rgba(9,15,38,.12) 100%);z-index:1}
.sp-cover-in{position:relative;z-index:2;height:100%;align-items:flex-end;justify-content:space-between;display:flex;padding-bottom:24px}
.sp-cover-copy{color:#fff;max-width:620px}
.sp-cover-tag{display:inline-block;background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.25);border-radius:20px;padding:5px 13px;font-size:11.5px;font-weight:700;margin-bottom:12px;backdrop-filter:blur(4px)}
.sp-cover-title{font-size:31px;font-weight:800;line-height:1.1;text-shadow:0 2px 16px rgba(0,0,0,.4)}
.sp-cover-sub{font-size:13.5px;opacity:.94;margin-top:6px}
.sp-cats{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.sp-cat{font-size:12.8px;font-weight:600;color:#4a4f5e;background:#fff;border:1px solid #e2e6f0;border-radius:20px;padding:7px 14px;text-decoration:none;display:inline-flex;gap:7px;align-items:center;transition:.18s}
.sp-cat b{font-weight:800;color:#12225b;font-size:11px;background:#eef1fb;border-radius:10px;padding:1px 7px}
.sp-cat:hover{border-color:#cfd6ea;color:#12225b;transform:translateY(-1px)}
.sp-cat.on{background:#12225b;color:#fff;border-color:#12225b}
.sp-cat.on b{background:rgba(255,255,255,.25);color:#fff}
@media (max-width:991px){ .sp-cover-title{font-size:22px} .sp-cover-copy{max-width:100%} }

/* banner framing: favour the subject's upper body */
.sp-cover{background-position:center 28%}
