/* Custom CSS */

/* Hide footer note on mobile panel */
.ra-hamburger-modal .menu-copyright .footer_powered_by {
  display: none;
}

/* To fix the conflict with free gift plugin */
.ra-menu-mobile-modal .modal-content {
  border: none;
  width: auto;
}

/* Back to top button position */
#gotop {
  bottom: 90px;
}

/* In/Out of stock notification */

.woocommerce-variation-availability .stock.in-stock,
.woocommerce-variation-availability .stock.out-of-stock,
body.single-product div.product .summary-price-box .rz-stock {
  text-transform: uppercase;
  font-weight: bold;
}

.woocommerce-variation-availability .stock.in-stock,
body.instock.single-product div.product .summary-price-box .rz-stock {
  color: #24b345;
}

.woocommerce-variation-availability .stock.out-of-stock,
body.outofstock.single-product div.product .summary-price-box .rz-stock {
  color: #ff0000;
}

/* Blog posts */
.post a {
  text-decoration: underline;
}
.post a:hover {
  text-decoration: none;
}

/* Product image*/
/*@media (max-width: 450px) {
	.content-area .site-main div div div div a img {
		max-height: 300px;
		width: auto;
	}
}
.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__image img {
	object-fit: contain;
  height: 400px;
  width: 500px;
}
.wcgs-carousel .spswiper-slide
 {
	 margin: unset;
}
.wcgs-carousel .wcgs-spswiper-arrow.wcgs-spswiper-button-next:not(.spswiper-button-lock), .wcgs-carousel .wcgs-spswiper-arrow.wcgs-spswiper-button-prev:not(.spswiper-button-lock) {
	top: 220px;
}
#wpgs-gallery .gallery-navigation-carousel-wrapper {
	order: unset!important; 
}
*/

/*Product Image Gallery */
#wpgs-gallery img {
  max-height: 500px;
  width: auto;
}

#wpgs-gallery .wcgs-thumb.spswiper-slide img {
  max-height: 100px;
}

/* Review submit button */
.single-product div.product .woocommerce-Reviews .comment-respond .form-submit {
  margin-top: 90px;
}
@media (max-width: 767px) {
  .single-product div.product .woocommerce-Reviews .comment-respond .form-submit {
    margin-top: 180px;
  }
}

/* Add to cart + QTY + Button styling  */

/* Rating Adjustments */
.single-product div.product .entry-summary .woocommerce-product-rating .razzi-svg-icon svg {
  width: 1.5em;
  height: 1.5em;
  color: #ffc516;
}

.single-product div.product .entry-summary .woocommerce-product-rating .woocommerce-review-link {
  font-size: 1.25rem;
}
@media (max-width: 767px) {
  .single-product div.product .entry-summary .woocommerce-product-rating {
    flex-direction: column;
  }
}
/* Sold qty adjustments */
.single-product div.product .entry-summary .rating-and-badge-wrapper .sold-badge {
  margin-left: auto;
  background: #eee;
  padding: 5px 20px;
  border-radius: 30px;
  font-size: 1.25rem;
  font-weight: bold;
  color: #000;
}
.single-product div.product .entry-summary .rating-and-badge-wrapper .sold-badge svg {
  color: red;
  scale: 1.5;
}

/* QTY Adjustments*/
.single-product div.product .entry-summary .quantity {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  border-color: #000;
  background: #eaeaea;
  border-width: 2px;
  margin-right: 0;
  margin-left: 50px;
}

.single-product div.product .entry-summary .quantity .quantity-label {
  position: absolute;
  margin: 0 0 0 -50px;
}

/* 
@media (min-width: 1200px) {
  .single-product div.product .entry-summary .summary-price-box-wrapper .quantity,
  .single-product div.product .entry-summary .woocommerce-variation-price .quantity {
  }
}

.single-product div.product .entry-summary .summary-price-box-wrapper .quantity .quantity-label,
.single-product div.product .entry-summary .woocommerce-variation-price .quantity .quantity-label {
  top: -35px;
  position: absolute;
  font-size: 1.25rem;
  color: #000;
}
@media (max-width: 1199px) {
  .single-product div.product .entry-summary .summary-price-box-wrapper .quantity .quantity-label,
  .single-product div.product .entry-summary .woocommerce-variation-price .quantity .quantity-label {
    display: none;
  }
} */

/* Product Price Adjustments */

.single-product div.product .entry-summary .summary-price-box-wrapper,
.single-product div.product .entry-summary .woocommerce-variation-price {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: row;
}

@media (max-width: 767px) {
  .single-product div.product .entry-summary .summary-price-box-wrapper,
  .single-product div.product .entry-summary .woocommerce-variation-price {
    flex-wrap: wrap;
    flex-direction: column;
    align-items: start;
  }
}

.single-product div.product .entry-summary .summary-price-box {
  display: flex;
  flex-direction: column;
  align-items: start;
  margin-right: 20px;
}

.single-product div.product .entry-summary .woocommerce-variation-availability .stock.in-stock,
.single-product div.product .entry-summary .summary-price-box .rz-stock {
  margin-top: 0;
  display: none;
}

.single-product div.product .entry-summary .summary-price-box-wrapper .price,
.single-product div.product .entry-summary .woocommerce-variation-price .price {
  display: flex;
  flex-direction: column;
  align-items: start;
  font-size: 3.5rem;
  margin-right: 3rem;
}
.single-product div.product .entry-summary .summary-price-box-wrapper .price del,
.single-product div.product .entry-summary .woocommerce-variation-price .price del {
  font-size: 1.75rem;
  line-height: normal;
  margin-bottom: -12px;
}
.single-product div.product .entry-summary .summary-price-box-wrapper .price ins,
.single-product div.product .entry-summary .woocommerce-variation-price .price ins {
  color: #000000;
  position: relative;
  line-height: normal;
  display: flex;
  align-items: baseline;
}

.single-product div.product .entry-summary .summary-price-box-wrapper .price ins .discount-percentage,
.single-product div.product .entry-summary .woocommerce-variation-price .price ins .discount-percentage {
  font-size: 1.5rem;
  background: #53b848;
  position: absolute;
  right: 0px;
  top: 17px;
  padding: 0 5px;
  line-height: 26px;
  color: #fff;
}
.single-product div.product .entry-summary .summary-price-box-wrapper .price small,
.single-product div.product .entry-summary .woocommerce-variation-price .price small {
  font-size: 1rem;
}

/* Add inc. VAT to price */
.single-product div.product .entry-summary .summary-price-box-wrapper .price ins:after,
.single-product div.product .entry-summary .woocommerce-variation-price .price ins:after {
  content: " inc. VAT";
  display: inline-block;
  font-size: 1rem;
  font-weight: 700;
  color: #000;
  margin-left: 10px;
  vertical-align: middle;
  line-height: normal;
  white-space: nowrap;
}

/* Add to cart button adjustments */
.single-product div.product .entry-summary form.cart .product-button-wrapper button.rz-buy-now-button {
  display: none;
}

.single-product div.product .entry-summary form.cart .product-button-wrapper button.single_add_to_cart_button {
  width: 100%;
  text-transform: uppercase;
  font-size: 1.75rem;
  padding: 10px;
  border-radius: 20px;
  background: #b20304;
  margin-right: 0;
  margin-bottom: 5px;
}

/* Hide Inc Vat */
.single-product div.product .entry-summary .summary-price-box-wrapper .woocommerce-price-suffix,
.single-product div.product .entry-summary .woocommerce-variation-price .woocommerce-price-suffix {
  display: none;
}

/* Responsive Tabs and Share Section */

.single-product div.product.product-tabs-under-summary .product-gallery-summary {
  margin-bottom: 0px !important;
}

.razzi-tabs-share-wrapper {
  display: flex;
  flex-wrap: wrap;
  margin-top: 20px;
  width: 100%;
}

.razzi-tabs-column {
  flex: 0 0 60%;
  max-width: 60%;
  padding-right: 15px;
  box-sizing: border-box;
}

.razzi-share-column {
  flex: 0 0 40%;
  max-width: 40%;
  padding-left: 15px;
  box-sizing: border-box;
}

/* Responsive styles for smaller screens */
@media (max-width: 767px) {
  .razzi-tabs-share-wrapper {
    margin-top: 0;
    flex-direction: column;
    align-items: center;
  }

  .razzi-tabs-column,
  .razzi-share-column {
    flex: 1 0 100%;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    box-sizing: border-box;
    margin-bottom: 20px;
    max-width: 100%;
  }

  .razzi-tabs-column:last-child {
    margin-bottom: 0;
  }

  .razzi-tabs-column {
    order: 1;
  }
  .razzi-share-column {
    margin-top: 0;
    margin-bottom: 0;
    order: 0;
  }
  .razzi-tabs-share-wrapper .razzi-share-column .product-share {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .razzi-tabs-column,
  .razzi-share-column {
    width: auto;
    max-width: 100%;
  }

  .razzi-tabs-column {
    padding-right: 15px;
  }

  .razzi-share-column {
    padding-left: 15px;
  }

  .extra-social-share-bottom {
    display: none;
  }
}

.single-product .site-content {
  padding-bottom: 0;
}

/* Product details tabs */

.single-product div.product.product-tabs-under-summary .woocommerce-tabs {
  margin-top: 0px !important;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.single-product div.product.product-tabs-under-summary .woocommerce-tabs .razzi-tab-wrapper > a:after {
  display: none;
}
.single-product div.product.product-tabs-under-summary .woocommerce-tabs .razzi-tab-wrapper > a {
  background-color: #e5e5e5;
  padding: 15px 30px !important;
  border-radius: 30px;
  font-size: 1.25rem;
  text-transform: none;
}

.single-product div.product.product-tabs-under-summary .woocommerce-tabs .razzi-tab-wrapper {
}
/* Share + Meta data tabs */

.single-product div.product .product-share {
  text-align: center;
  margin-top: 0 !important;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.single-product div.product .product-share .share-title {
  font-size: 1.25rem;
  font-weight: bold;
  margin-bottom: 10px;
}

.single-product div.product .product-share .product-share-list {
  display: flex;
  justify-content: center;
  gap: 15px;
}

.single-product div.product .product-share .product-share-list a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background-color: #f0f0f0;
  border-radius: 50%;
  text-decoration: none;
  color: #333;
  transition: all 0.3s ease;
}

.single-product div.product .product-share .product-share-list a:hover {
  background-color: #333;
  color: #fff;
}

.single-product div.product .woocommerce-product-details__short-description {
  margin-top: 15px;
  margin-bottom: 15px;
}

.single-product div.product .woocommerce-product-details__short-description p {
  margin: 0;
  font-size: 1rem;
  line-height: 1.6;
}

/* Product featured points */
.product-featured-points {
  margin-top: 20px;
  margin-bottom: 20px;
}

.product-featured-points .featured-points-title {
  font-size: 1.125rem;
  font-weight: 600;
  margin-bottom: 15px;
  color: #333;
}

.product-featured-points .featured-points-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.product-featured-points .featured-point-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.product-featured-points .featured-point-item .point-icon {
  flex-shrink: 0;
  width: 30px;
  height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.product-featured-points .featured-point-item .point-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.product-featured-points .featured-point-item .point-text {
  font-size: 0.95rem;
  line-height: 1.5;
  color: #555;
}

/* Product featured points grid layout */
.product-featured-points-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 20px;
  max-width: 520px;
  margin: 20px auto;
}

.featured-point-grid-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 10px;
}

.featured-point-grid-item img {
  width: 50px;
  height: 50px;
  object-fit: contain;
}

.featured-point-grid-item span {
  font-size: 0.9rem;
  line-height: 1.4;
  color: #555;
  font-weight: 500;
}

@media (max-width: 767px) {
  .product-featured-points-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
  }
  
  .featured-point-grid-item img {
    width: 40px;
    height: 40px;
  }
  
  .featured-point-grid-item span {
    font-size: 0.8rem;
  }
}

/* Campaign bar */
.campaign-bar__campaigns {
  background-color: #d0d2d3;
}

.campaign-bar__campaigns .razzi-header-container {
  padding: 10px 0;
  margin: 0;
}

.campaign-bar__campaigns .razzi-promotion {
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 500;
  font-size: 14px;
}

.campaign-bar__campaigns .razzi-promotion ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  align-items: center;
}

.campaign-bar__campaigns .razzi-promotion ul li {
  display: inline-flex;
  margin-right: 10px;
  align-items: center;
}

.campaign-bar__campaigns .razzi-promotion ul li a {
  display: inline-block;
  padding: 10px 20px;
  background: #fff;
  color: #000;
  text-decoration: none;
}

/* Hide campaign bar when the desktop header is hidden (Mobile/Tablet) */
@media (max-width: 991px) {
    #campaign-bar {
        display: none !important;
    }
}

/* Also hide it when the header becomes sticky/minimized on desktop */
.site-header.minimized #campaign-bar,
.header-sticky #campaign-bar,
.sticky-header-active #campaign-bar,
.header-is-sticky #campaign-bar {
    display: none !important;
}

.topbar-usp {
  gap: 0;
}

.campaign-bar__campaigns .razzi-promotion ul li a {
  background-color: #d0d2d3;
}

.campaign-bar__campaigns .razzi-promotion ul li a:hover {
  background-color: #fff;
}

.campaign-bar__campaigns .razzi-promotion ul li {
  margin-right: 0px;
}

/* Hide .summary-price-box */
.single-product div.product .entry-summary .summary-price-box {
  display: none !important;
}

/* Put .single_add_to_cart_button button alt on the same line but to the right as .quantity */
.single-product div.product .entry-summary form.cart .product-button-wrapper {
  display: flex !important;
  align-items: center !important;
  gap: 20px !important;
}

.single-product div.product .entry-summary form.cart .product-button-wrapper .quantity {
  flex: 0 0 auto !important;
  width: 140px !important;
  margin-left: 0 !important;
}

.single-product div.product .entry-summary form.cart .product-button-wrapper button.single_add_to_cart_button {
  flex: 1 1 auto !important;
  margin-bottom: 0 !important;
}

/* Align Quantity and Add to Cart button on the same line */
.single-product div.product .entry-summary form.cart .product-button-wrapper {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 15px !important;
    flex-wrap: nowrap !important;
}

/* Ensure the quantity field doesn't take up too much space */
.single-product div.product .entry-summary form.cart .product-button-wrapper .quantity {
    flex: 0 0 auto !important;
    margin-bottom: 0 !important;
    margin-right: 0 !important;
}

/* Make the Add to Cart button fill the remaining space */
.single-product div.product .entry-summary form.cart .product-button-wrapper .single_add_to_cart_button {
    flex: 1 1 auto !important;
    margin-bottom: 0 !important;
}

.single-product div.product .entry-summary form.cart .product-button-wrapper button.single_add_to_cart_button {
	    padding: 4px;
        border-radius: 4px;
}

.quantity-label {
	display: none;
}

/* Hide duplicate 60 day returns message - removed as it was the wrong one */

.single-product div.product.product-type-variable form.cart {
	margin-top: 10px!important;
}

/* Hazard Warnings Styling */
.product-hazard-warnings {
    margin-top: 20px;
    margin-bottom: 20px;
    padding: 15px;
    border: 1px solid #ddd;
    border-radius: 4px;
    background-color: #f9f9f9;
}

.product-hazard-warnings .hazard-title {
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 12px;
    color: #333;
    text-transform: none;
    letter-spacing: 0.5px;
}
.hazard-title {
	margin-top: 0px;
}

.hazard-icons-row {
    display: flex;
    gap: 15px;
    margin-bottom: 15px;
    flex-wrap: wrap;
}

.hazard-icon {
    display: flex;
    align-items: center;
    justify-content: center;
}

.hazard-icon img {
    width: 50px;
    height: 50px;
    object-fit: contain;
}

.hazard-messages {
    display: flex;
    flex-direction: column;
    gap: 0px;
}

.hazard-message {
    font-size: 0.9rem;
    line-height: 1.5;
    color: #555;
    font-weight: 400;
}

@media (max-width: 767px) {
    .hazard-icons-row {
        gap: 10px;
    }
    .hazard-icon img {
        width: 40px;
        height: 40px;
    }
    .hazard-message {
        font-size: 0.85rem;
    }
}

/* ================================
   Sticky Product Image Gallery
   (Amazon-style: image stays visible while scrolling through product text)
   ================================ */
@media (min-width: 992px) {

  /* 1. Force the gallery+summary container into a side-by-side flexbox layout */
  .single-product div.product .product-gallery-summary {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    gap: 30px !important;
  }

  /* 2. Disable the theme's clearfix pseudo-elements which interfere with flexbox */
  .single-product div.product .product-gallery-summary::before,
  .single-product div.product .product-gallery-summary::after {
    display: none !important;
    content: none !important;
  }

  /* 3. Style the JS-injected sticky wrapper that holds the gallery */
  .pe-sticky-gallery-wrapper {
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 120px !important;
    align-self: flex-start !important;
    flex: 0 0 50% !important;
    max-width: 50% !important;
    z-index: 10;
    float: none !important;
  }

  /* 4. Reset gallery styles inside the wrapper - let WooGallery keep its overflow:hidden */
  .pe-sticky-gallery-wrapper #wpgs-gallery {
    position: relative !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* 5. Ensure the summary column fills remaining space without float */
  .single-product div.product .product-gallery-summary > .summary.entry-summary {
    flex: 1 1 auto !important;
    float: none !important;
    max-width: none !important;
    width: auto !important;
  }
}

.widget_shopping_cart_content .woocommerce-mini-cart__buttons {
    flex-direction: column;
}

/* Move Amazon Pay button above Continue Shopping */
.amazon-pay-button {
    order: 1;
}

.cart-collaterals,
.woocommerce-cart-form {
    display: flex;
    flex-direction: column;
}

.amz-pay-button-wrapper {
    order: 1 !important;
    margin-bottom: 10px !important;
}
.ppc-button-wrapper.ppcp-width-300 {
	order: 2;
}
.razzi-button.button-light.continue-button {
	order: 3;
}
.wc-amazon-checkout-message.wc-amazon-payments-advanced-populated {
	display: none;
}
.wc_payment_methods.payment_methods.methods li label {
	gap: 4px;
}
#pay_with_amazon, #pay_with_amazon_cart {
	width: 100%!important;
}
#pay_with_amazon_product {
	max-width: 750px;
    width: 100% !important;
    margin-left: 0px;
    margin-right: 0px;
}
.amazonpay-button-container.amazonpay-button-enabled.amazonpay-button-container-rows {
    max-width: 750px !important;
}
.product-button-wrapper {
	max-width: 750px;
}
.ppcp-button-apm {
	max-width: 600px;
}
.ppc-button-wrapper.ppcp-width-500 {
   	max-width: 600px !important;
}
.woocommerce-variation-add-to-cart.variations_button.woocommerce-variation-add-to-cart-enabled {
	max-width: 600px !important;
}
.summary.entry-summary {
    padding-left: 0px !important;
}
#wpgs-gallery img {
    max-height: 800px;
}
@media (max-width: 450px) {
	.sold-badge {
    	font-size: 0.8rem;
    }
    #wpgs-gallery img {
    	max-height: 200px;
	}
    .single-product div.product .entry-summary form.cart .product-button-wrapper button.single_add_to_cart_button {
    	font-size: 1.25rem; 
    }
}

.single-product div.product.product-type-variable form.cart .product-button-wrapper {
    margin-bottom: 20px;
}