/*-------------------
This theme uses Bootstrap v5.1.

It is highly recommended to check out Bootstrap's guiding principles,
strategies, and techniques at https://getbootstrap.com/docs/5.1/extend/approach/
before adding custom styling.

To learn more about Bootstrap v5.1, please check
out https://getbootstrap.com/docs/5.1/getting-started/introduction/.
/*-------------------*/

/*-------------------*/
/* GENERAL */
/*-------------------*/

/*-------------------*/
/* TOP NAV */
/*-------------------*/
.navbar-container {
  background-color: #C8102E !important;
}
/*-------------------*/
/* HEADER */
/*-------------------*/
.subpage .header-container.border-bottom {
  border-bottom: 1px solid #f2f2f2 !important;
}

/*-------------------*/
/* CATEGORY NAV */
/*-------------------*/

/*-------------------*/
/* CONTENT */
/*-------------------*/
.center-both-flex {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 50px;
  font-weight: 700;
}

.homepage-images .big,
.homepage-images .small,
.homepage-images .smallcat,
.homepage-images .full {
  display: flex;
  justify-content: space-between;
  margin: 20px 0;
}

.homepage-images .small a,
.homepage-images .smallcat a,
.homepage-images .big a,
.homepage-images .full a {
  display: block;
  position: relative;
  overflow: hidden;
}

.homepage-images .full img {
  width: 1370px;
  display: block;
}

.homepage-images .big img {
  width: 677px;
  display: block;
}

.homepage-images .small img {
  width: 448px;
  display: block;
}

.homepage-images .smallcat img {
  width: 448px;
  display: block;
}

.homepage-images a > img {
  transition: transform 0.4s ease;
  transform: scale(1);
}

/* Overlay base: hidden by default */
.homepage-images a > .overlay {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  padding: 16px;
  pointer-events: none;

  background: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.65),
    rgba(0, 0, 0, 0.25),
    rgba(0, 0, 0, 0)
  );

  opacity: 0;
  transition: opacity 0.25s ease, background 0.25s ease;
}

/* Text hidden initially */
.homepage-images a > .overlay span {
  color: #fff;
  font-weight: 500;
  font-size: 17px;
  line-height: 1.3;
  text-align: left;
  max-width: 220px;
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.7);

  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.25s ease, transform 0.25s ease;
}

/* Hover states */
.homepage-images a:hover > img {
  transform: scale(1.05);
}

.homepage-images a:hover > .overlay {
  opacity: 1;
  background: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.75),
    rgba(0, 0, 0, 0.35),
    rgba(0, 0, 0, 0)
  );
}

.homepage-images a:hover > .overlay span {
  opacity: 1;
  transform: translateY(0);
}

.button-container {
  text-align: center;
  margin: 50px 0;
}

a.see-more-btn {
  background-color: #fff;
  color: #333 !important;
  padding: 10px 40px;
  font-size: 18px !important;
  border: 2px solid #333;
  border-radius: 2px;
  margin: 10px 0;
  transition: all 0.25s;
}

a.see-more-btn:hover {
  background-color: #ce2c2c;
    border: 2px solid #ce2c2c;
    color: #fff !important;
}

/*-------------------*/
/* PRODUCT THUMBS */
/*-------------------*/

/*-------------------*/
/* PRODUCT */
/*-------------------*/

/*-------------------*/
/* CART/CHECKOUT */
/*-------------------*/

/*-------------------*/
/* FOOTER */
/*-------------------*/


/*-------------------*/
/* MEDIA QUERIES */
/*-------------------*/
@media screen and (min-width: 661px){

}

@media screen and (max-width: 1200px){
  .homepage-images .big, .homepage-images .small {
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px;
  }
}

@media screen and (max-width: 1200px){

}

@media screen and (max-width: 660px){
  .homepage-images .big img {
    width: 100%;
  }
  
  @media screen and (max-width: 660px){
  .homepage-images .full img {
    width: 100%;
  }
  
  @media screen and (max-width: 660px){
  .homepage-images .small img {
    display: none;
  }

  @media screen and (max-width: 660px){
  .homepage-images .smallcat img {
    width: 100%;
  }
    
  .footer-container {
    text-align: center;
  }
  .footer-logo {
    margin: 10px auto;
  }
  .nav.social-media {
    justify-content: center !important;
  }
  .accordion-button {
    width: auto;
    margin: auto;
    padding: 1rem 1.25rem !important;
  }
  .footer-container .accordion-button::after {
    display: none !important;
  }
}

@media screen and (max-width: 340px){

}