/* Body */
body {
  --announcement-bar-height: 40px;
  --navbar-height: 72px;

  --header-height: calc(var(--announcement-bar-height) + var(--navbar-height));
  --header-height-with-offset: calc(var(--header-height) + 1rem);

  @media (min-width: 768px) {
    --navbar-height: 88px;
  }

  @media (min-width: 992px) {
    --navbar-height: 155px;
  }

  padding-top: var(--header-height);

  * {
    scroll-margin-top: var(--header-height-with-offset);
  }
}

/* Bootstrap overrides */
.dropdown-toggle::after {
  color: #C1FD01;
}

/* Product entries badge */
.product-entries-badge {
  display: inline-flex;

  background: linear-gradient(to bottom, #9aff01, #e7fd00);
  border-radius: 6px;
  box-shadow: inset 0 0 5px #00000022;
  transform: skew(-10deg);

  font-family: Montserrat;
  font-size: 0.75rem;
  line-height: 1;
  text-transform: uppercase;
  text-wrap: nowrap;

  @media (min-width: 768px) {
    font-size: 0.9rem;
  }
}

.product-entries-badge-amount {
  background-color: #1e2701;
  color: #C1FD01;

  font-weight: 800;
  letter-spacing: -0.5px;
  border-radius: 6px;
}

.product-entries-badge-amount, .product-entries-badge-multiplier {
  padding: 6px 12px;
}

.product-entries-badge-multiplier {
  padding-left: 9px;

  color: black;
  font-weight: 900;
}

.product-entries-badge[data-multiplier="300"] {
  background: linear-gradient(to bottom, #fe0000, #800001);

  .product-entries-badge-amount { background-color: #2f0000; color: #ffdfdf; }
  .product-entries-badge-multiplier { color: #ffdfdf; }
}

.product-entries-badge[data-multiplier="400"] {
  background: linear-gradient(to bottom, #ff00ed, #6e00b1);

  .product-entries-badge-amount { background-color: #1f004e; color: #ffffff; }
  .product-entries-badge-multiplier { color: #ffffff; }
}

.product-entries-badge[data-multiplier="500"] {
  background: linear-gradient(to bottom, #dd9c00, #f3cb09);

  .product-entries-badge-amount { background-color: #1e1500; color: #ffffff; }
  .product-entries-badge-multiplier { color: #000000; }
}

[data-product-handle="bronze-quick-entry"] {
  .product-entries-badge { background: #9b581a !important; }
  .product-entries-badge-amount { background-color: #38250f !important; color: white !important; }
  .product-entries-badge-multiplier { color: white !important; }
}

[data-product-handle="silver-quick-entry"] {
  .product-entries-badge { background: #9b9c9c !important; }
  .product-entries-badge-amount { background-color: #2e2f30 !important; color: white !important; }
  .product-entries-badge-multiplier { color: white !important; }
}

[data-product-handle="gold-quick-entry"] {
  .product-entries-badge { background: #f3ae09 !important; }
  .product-entries-badge-amount { background-color: #523b03 !important; color: white !important; }
  .product-entries-badge-multiplier { color: white !important; }
}

[data-product-handle="platinum-quick-entry"] {
  .product-entries-badge { background: #7791c8 !important; }
  .product-entries-badge-amount { background-color: #25272e !important; color: white !important; }
  .product-entries-badge-multiplier { color: white !important; }
}

.product-entries-badge {
  &[data-multiplier="400"], &[data-multiplier="500"] {
    mask: linear-gradient(-60deg, #000 30%, #0005, #000 70%) right/350% 100%;
    animation: product-entries-badge-shine 2s infinite linear;
  }
}

@keyframes product-entries-badge-shine {
  100% {
    mask-position: left;
  }
}

/* Product item v2 */
.product-item.product-item--v2 {
  .product-link {
    justify-content: flex-start;
  }

  .product-image {
    flex: 0 1 auto;
  }

  .product-image img {
    aspect-ratio: 4 / 5;
    object-fit: contain;
    object-position: center;
  }

  .product-info {
    margin-top: 0.5rem;
  }

  .product-title {
    margin-top: 0.5rem;

    color: black;
    font-family: Montserrat;
    font-weight: 600;
    font-size: 15px;
    line-height: 1.2;

    @media (min-width: 1200px) {
      font-size: 17px;
    }
  }

  .product-price {
    margin-top: 0.15rem;

    color: #6a6b6c;
    font-family: Montserrat;
    font-size: 14px;

    @media (min-width: 1200px) {
      font-size: 17px;
    }
  }
}