/* ProSale public storefront design system — ported from prosale-web. */

:root{
  --prosale-navy: #062449;     /* deep navy */
  --prosale-accent: #e8242e;   /* brand red */
}

body.prosale-shop{
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  background: #ffffff;
  color: #1f2733;
}

/* ---- Brand color helpers ---- */
.bg-prosale{ background-color: var(--prosale-navy) !important; }
.text-prosale-navy{ color: var(--prosale-navy) !important; }
.text-prosale-accent{ color: var(--prosale-accent) !important; }
.text-prosale-navy-700{ color: rgba(6, 36, 73, 0.85) !important; }

.btn-prosale{
  background-color: var(--prosale-accent);
  border-color: transparent;
  color: #fff;
}
.btn-prosale:hover{ background-color: #d21d28; color:#fff; }

.badge.bg-prosale{ background-color: var(--prosale-navy) !important; }

/* ---- Full-width colored bands ---- */
.prosale-band{
  position: relative;
  width: 100%;
  overflow: visible;
  padding: 3rem 0;
}
.band-hero      { background: #f5f5f5; }
.band-mid       { background: #ffffff; }
.band-lightblue { background: #e8f1fb; }

/* ---- Cards (sales & products) ---- */
.sale-card{
  border-radius: 1.25rem;
  border: none;
  background: #ffffff;
  overflow: hidden;
  transition: transform .15s ease, box-shadow .15s ease;
}
.sale-card:hover{ transform: translateY(-3px); box-shadow: 0 .75rem 1.5rem rgba(6,36,73,.12) !important; }

.sale-card-logo-wrap{
  overflow: hidden;
  height: 200px;
  border-bottom: 1px solid rgba(0,0,0,0.06);
  background: #f1f3f5;
}
.sale-card-img-top,
.sale-card-logo{
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.sale-card-body{ padding: 1.1rem 1.25rem 1.25rem; }
.sale-card-title{
  font-size: 1.15rem;
  font-weight: 800;
  color: var(--prosale-navy);
  margin-bottom: 0.6rem;
}
.sale-card-meta{ font-size: 0.92rem; color: #333; }

/* Compact product cards */
.product-card .sale-card-logo-wrap,
.product-card .sale-card-img-top{ height: 160px; }
.product-card .sale-card-body{ padding: .75rem .85rem 1rem; }
.product-card .sale-card-title{ font-size: 1rem; margin-bottom: .4rem; }
.product-card .sale-card-meta{ font-size: .82rem; }

/* No-image placeholder */
.no-image-placeholder{
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: .35rem;
  background: #f1f3f5;
  color: #9aa3ab;
}
.no-image-placeholder svg{ width: 30px; height: 30px; }
.no-image-placeholder span{
  font-size: .72rem;
  letter-spacing: .03em;
  text-transform: uppercase;
}

/* ---- Footer ---- */
.prosale-footer{
  background: var(--prosale-navy);
  color: rgba(255,255,255,0.92);
  padding: 3.5rem 0;
}
.footer-brand-text{ color: #fff; font-weight: 900; font-size: 1.5rem; }
.footer-contact{ color: rgba(255,255,255,0.85); line-height: 1.55; }
.footer-title{
  color: rgba(255,255,255,0.95);
  font-weight: 900;
  letter-spacing: .06em;
  font-size: .9rem;
  margin-bottom: 1rem;
  text-transform: uppercase;
}
.footer-list{ list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: .75rem; }
.footer-link{ color: rgba(255,255,255,0.82); text-decoration: none; }
.footer-link:hover{ color: #fff; text-decoration: underline; }
