/* SiteGiant NextImageContainer — scoped so photogrid/banner/card each work */

.evtedN {
  position: relative;
  display: block;
  width: 100%;
}

/* Header logo */
#Header6 .logo .evtedN,
#Header6 .menu-logo .evtedN {
  width: 160px !important;
  height: 65px !important;
}

#Header6 .logo .next-image,
#Header6 .menu-logo .next-image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* Homepage blocks — full viewport width (outer shell) */
#Banner1Style.main-block,
#Banner1StyleSecondary.main-block,
#PhotoGrid1Style.main-block,
#Instagram1Style.main-block {
  width: 100% !important;
  max-width: 1920px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Banner slider */
#Banner1Style .banner-components .evtedN,
#Banner1StyleSecondary .banner-components .evtedN {
  width: 100% !important;
  height: 0 !important;
  overflow: hidden;
}

#Banner1Style .banner-components .evtedN {
  padding-bottom: 0 !important;
}

#Banner1Style .banner-components .next-image,
#Banner1StyleSecondary .banner-components .next-image {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

@media (min-width: 1025px) {
  #Banner1Style.main-block,
  #Banner1Style .inner-container .banner-components,
  #Banner1Style .banner-components .slick-slider,
  #Banner1Style .banner-components .slick-list,
  #Banner1Style .banner-components .slick-track,
  #Banner1Style .banner-components .slick-slide,
  #Banner1Style .banner-components .slick-slide > div,
  #Banner1Style .banner-components .evtedN {
    height: 615px !important;
    max-height: 615px !important;
  }

  #Banner1Style .banner-components {
    position: relative !important;
    overflow: hidden !important;
  }

  #Banner1Style .banner-components .slick-dots {
    position: absolute !important;
    bottom: 12px !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    height: auto !important;
    line-height: 0 !important;
  }

  #Banner1StyleSecondary.main-block,
  #Banner1StyleSecondary .inner-container .banner-components,
  #Banner1StyleSecondary .banner-components .evtedN {
    height: 261px !important;
    max-height: 261px !important;
  }
}

@media (max-width: 1024px) {
  #Banner1Style.main-block,
  #Banner1Style .inner-container .banner-components,
  #Banner1Style .banner-components .slick-slider,
  #Banner1Style .banner-components .slick-list,
  #Banner1Style .banner-components .slick-track,
  #Banner1Style .banner-components .slick-slide,
  #Banner1Style .banner-components .slick-slide > div,
  #Banner1Style .banner-components .evtedN,
  #Banner1StyleSecondary.main-block,
  #Banner1StyleSecondary .inner-container .banner-components,
  #Banner1StyleSecondary .banner-components .evtedN {
    height: auto !important;
    max-height: none !important;
  }

  #Banner1Style.main-block {
    aspect-ratio: 375 / 195 !important;
    overflow: hidden !important;
    position: relative !important;
  }

  #Banner1Style .inner-container .banner-components {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    overflow: hidden !important;
  }

  #Banner1Style .banner-components .slick-slider,
  #Banner1Style .banner-components .slick-list,
  #Banner1Style .banner-components .slick-track,
  #Banner1Style .banner-components .slick-slide,
  #Banner1Style .banner-components .slick-slide > div,
  #Banner1Style .banner-components .slick-slide a {
    height: 100% !important;
  }

  /* Anchor was collapsing to 0 — absolute fill image needs a sized parent */
  #Banner1Style .banner-components .slick-slide a {
    display: block !important;
    width: 100% !important;
    position: relative !important;
  }

  #Banner1Style .banner-components .evtedN {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    padding-bottom: 0 !important;
  }

  #Banner1StyleSecondary.main-block {
    aspect-ratio: 375 / 98 !important;
    overflow: hidden !important;
    position: relative !important;
  }

  #Banner1StyleSecondary .inner-container .banner-components {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }

  #Banner1StyleSecondary .banner-components .slick-slide > div,
  #Banner1StyleSecondary .banner-components .slick-slide a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    position: relative !important;
  }

  #Banner1StyleSecondary .banner-components .evtedN {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    padding-bottom: 0 !important;
  }

  #Banner1Style .banner-components .slick-dots {
    bottom: 8px !important;
  }

  #PhotoGrid1Style .inner-container .photogrid-components .images-container {
    padding-bottom: 5px !important;
    box-sizing: border-box !important;
    height: auto !important;
  }

  #PhotoGrid1Style a img {
    position: static !important;
    width: 100% !important;
    height: auto !important;
  }
}

@media (min-width: 1132px) {
  #Header6 .header-components .header-outer-container .inner-container .header-content .search-box {
    margin: 24px 0 !important;
  }
}

@media (min-width: 1025px) {
  #LatestStyle.main-block {
    margin-top: -1px !important;
  }
}

/* Top-bar social icons — plain SVGs like original (no circular borders) */
#Header6 .social-media-list {
  display: flex !important;
  align-items: center !important;
}

#Header6 .social-media-list .social-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #535B53 !important;
  text-decoration: none !important;
  border: none !important;
  border-radius: 0 !important;
  width: auto !important;
  height: auto !important;
  background: none !important;
  margin-left: 16px !important;
  padding: 0 !important;
}

#Header6 .social-media-list .social-icon:first-child {
  margin-left: 8px !important;
}

#Header6 .social-media-list .social-icon svg {
  display: block !important;
  width: 15px !important;
  height: 15px !important;
  margin-left: 0 !important;
  color: #535B53 !important;
  fill: currentColor !important;
}


#PhotoGrid1Style .evtedN {
  width: 100% !important;
  height: 100% !important;
  position: relative !important;
  display: block !important;
}

#PhotoGrid1Style .evtedN .next-image {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

#PhotoGrid1Style .image1,
#PhotoGrid1Style .image2,
#PhotoGrid1Style .image3,
#PhotoGrid1Style .image4 {
  height: 100% !important;
}

#PhotoGrid1Style a {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

@media (min-width: 1025px) {
  #PhotoGrid1Style .inner-container .photogrid-components .images-container {
    height: 558px !important;
  }

  #PhotoGrid1Style:has(.badges-row) .inner-container .photogrid-components .images-container {
    height: auto !important;
  }
}

/* Homepage product carousel cards */
#FeaturedStyle .single-product-box .product-images.row-5,
#LatestStyle .single-product-box .product-images.row-5 {
  aspect-ratio: 1 / 1 !important;
  width: 100% !important;
  position: relative !important;
}

#FeaturedStyle .single-product-box .product-images .inner-row-5,
#LatestStyle .single-product-box .product-images .inner-row-5 {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

#FeaturedStyle .single-product-box .product-images .evtedN,
#LatestStyle .single-product-box .product-images .evtedN {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

#FeaturedStyle .single-product-box .product-images .next-image,
#LatestStyle .single-product-box .product-images .next-image {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

#FeaturedStyle .slick-slide > div,
#LatestStyle .slick-slide > div {
  display: flex !important;
  height: 100% !important;
  width: 100% !important;
}

#FeaturedStyle .slick-slide .single-product-box,
#LatestStyle .slick-slide .single-product-box,
#FeaturedStyle .slick-slide > div .single-product-box,
#LatestStyle .slick-slide > div .single-product-box {
  display: block !important;
  width: 100% !important;
}

/* Shop listing product cards */
#Styled_ProductCard .product-image.row-3 {
  aspect-ratio: 1 / 1 !important;
  position: relative !important;
  width: 100% !important;
}

#Styled_ProductCard .product-image .evtedN {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

#Styled_ProductCard .product-image .next-image {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

#Styled_ProductCard .single-product-box {
  display: block !important;
  border: 1px solid rgba(155, 155, 155, 0.3) !important;
  border-radius: 6px;
}

#Styled_AllProducts .products-col-item {
  padding: 5px;
  margin-bottom: 10px;
}

/* Instagram grid — square cells with 5px gutters (original grid gutter) */
#Instagram1Style .instagram-content .insta-img {
  flex: 0 0 33.333% !important;
  max-width: 33.333% !important;
  padding: 0 5px 10px !important;
  box-sizing: border-box !important;
}

#Instagram1Style .instagram-image-block .evtedN {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
}

#Instagram1Style .instagram-image-block .next-image.instagram-img {
  object-fit: cover !important;
}

/* Reviews */
#ProductReviewsStyle1.main-block {
  width: 100% !important;
  max-width: 1920px !important;
}

#ProductReviewsStyle1 .review-components {
  position: relative !important;
}

#ProductReviewsStyle1 .review-item {
  background: #fff;
  min-height: 374px !important;
  height: 374px !important;
  box-sizing: border-box !important;
}

#ProductReviewsStyle1 .review-components .slick-slider,
#ProductReviewsStyle1 .review-components .slick-list,
#ProductReviewsStyle1 .review-components .slick-track {
  min-height: 382px !important;
  margin-bottom: 0 !important;
}

#ProductReviewsStyle1 .review-components .slick-dots {
  position: absolute !important;
  bottom: 32px !important;
  left: 0 !important;
  right: 0 !important;
  margin: 0 !important;
  height: 0 !important;
  line-height: 0 !important;
  overflow: visible !important;
}

#ProductReviewsStyle1 .product-container .ant-list-item-meta-avatar img {
  width: 48px;
  height: 48px;
  object-fit: cover;
  border-radius: 4px;
}

#ProductReviewsStyle1 .ant-rate {
  color: #ffae4c !important;
}

#ProductReviewsStyle1 .ant-rate-star {
  display: inline-block !important;
  margin-right: 0 !important;
}

#ProductReviewsStyle1 .review-components .slick-arrow {
  font-size: 0 !important;
  line-height: 0 !important;
  color: transparent !important;
  width: 40px !important;
  height: 40px !important;
}

@media (max-width: 1024px) {
  #ProductReviewsStyle1 .review-item {
    min-height: 368px !important;
    height: auto !important;
  }

  #ProductReviewsStyle1 .review-components .slick-slider,
  #ProductReviewsStyle1 .review-components .slick-list,
  #ProductReviewsStyle1 .review-components .slick-track {
    min-height: 0 !important;
  }
}
