
/* =====================================
   FONT IMPORTS
====================================== */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;700&family=Open+Sans:wght@400;600&display=swap');

/* =====================================
   GLOBAL BASE STYLING – Typography & Colors
====================================== */
#body {
  font-family: 'Open Sans', sans-serif;
  color: #1A1A1A;
  background-color: #F5F5F5;
}

h1, h2, h3, h4, .headline, .product-title {
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  color: #1A1A1A;
}

:root {
  --blaze-orange: #FF6600;
  --charcoal-black: #1A1A1A;
  --warm-gray: #F5F5F5;
  --hover-orange: #e05400;
}

/* =====================================
   HEADER + NAV
====================================== */
#StoreHeader-component {
  background-color: #fff;
  border-bottom: 1px solid #ddd;
}

#StoreHeader-component a {
  color: var(--charcoal-black);
  font-weight: 600;
  font-family: 'Montserrat', sans-serif;
  text-transform: uppercase;
  transition: color 0.3s ease;
}

#StoreHeader-component a:hover {
  color: var(--blaze-orange);
}

/* =====================================
   BUTTONS – Interactive Effects
====================================== */
#body button.mat-raised-button,
#body .mat-raised-button {
  background-color: var(--blaze-orange) !important;
  color: #fff !important;
  font-family: 'Montserrat', sans-serif;
  border-radius: 50px;
  padding: 10px 24px;
  font-weight: 600;
  transition: all 0.3s ease;
  transform: translateY(0);
}

#body button.mat-raised-button:hover {
  background-color: var(--hover-orange) !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}

/* =====================================
   PRODUCT CARD HOVERS
====================================== */
#body .product-card {
  background-color: #fff;
  border: 1px solid #e6e6e6;
  border-radius: 12px;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

#body .product-card:hover {
  transform: scale(1.02);
  box-shadow: 0 10px 25px rgba(0,0,0,0.08);
}

/* =====================================
   ALL-STAR COLLECTION – Highlight Styling
====================================== */
.product-card.all-star {
  border: 2px solid var(--blaze-orange);
  background-color: #fff8f2;
  position: relative;
}

.product-card.all-star::after {
  content: "LIMITED EDITION";
  position: absolute;
  top: 10px;
  right: 10px;
  background: var(--blaze-orange);
  color: white;
  font-size: 10px;
  font-weight: bold;
  font-family: 'Montserrat', sans-serif;
  padding: 5px 10px;
  border-radius: 999px;
  z-index: 10;
}

/* =====================================
   FOOTER
====================================== */
#StoreFooter-component {
  background-color: #fff;
  color: var(--charcoal-black);
}

#StoreFooter-component a:hover {
  color: var(--blaze-orange);
}

/* =====================================
   FLOATING MESSAGE & BANNER (Optional Consolidation)
====================================== */
.section-banner {
  background: linear-gradient(to right, #1A1A1A, #FF6600);
  color: #fff;
  font-family: 'Montserrat', sans-serif;
  font-weight: 700;
  text-align: center;
  padding: 1.2rem;
  text-transform: uppercase;
  letter-spacing: 1px;
  z-index: 999;
}

.revival-float {
  position: fixed;
  bottom: 20px;
  right: 20px;
  background: #1A1A1A;
  color: #fff;
  font-family: 'Open Sans', sans-serif;
  font-size: 13px;
  padding: 10px 14px;
  border-radius: 999px;
  box-shadow: 0 8px 24px rgba(0,0,0,0.2);
  z-index: 1000;
}



/* === PRICE HIGHLIGHT === */
.product-card .price {
  font-size: 18px;
  font-weight: 800;
  color: var(--blaze-orange);
  background-color: var(--charcoal-black);
  padding: 4px 8px;
  border-radius: 6px;
  display: inline-block;
  margin-top: 6px;
  letter-spacing: 0.5px;
  font-family: 'Montserrat', sans-serif;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
}

/* === SOLD OUT BADGE === */
.sold-out-badge {
  position: absolute;
  top: 10px;
  left: 10px;
  background: #FF0000;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  padding: 5px 10px;
  border-radius: 6px;
  z-index: 100;
  text-transform: uppercase;
  font-family: 'Montserrat', sans-serif;
  box-shadow: 0 2px 10px rgba(0,0,0,0.2);
}

/* === ONLY 2 LEFT TAG === */
.low-stock-badge {
  position: absolute;
  top: 10px;
  right: 10px;
  background: #FFA500;
  color: #1A1A1A;
  font-size: 12px;
  font-weight: bold;
  padding: 5px 10px;
  border-radius: 6px;
  z-index: 100;
  text-transform: uppercase;
  font-family: 'Montserrat', sans-serif;
  box-shadow: 0 2px 10px rgba(0,0,0,0.2);
}
