body {
    font-size: 18px;
}

/* =================================================== * CUSTOM CSS CODE BELOW * =================================================== */ 

/* Post Content */
.blog_post_content {
 line-height: normal;
}

@media (max-width: 480px) {
    article.hero.post,  article.hero.post .blog_post_details {
        padding-inline: 0px!important;
    }
    
    [data-qb-page="product"] div#description, [data-qb-page="product"] div#description .blog_post_content {
        padding-inline: 0px !important;
    }
}

.blog_post_details.col-xl-10.mx-auto {
    max-width: 800px;
}
.blog_post_image img {
    max-width: 740px;
}

[data-qb-page="product"] .col.blog_post_content {
    max-width: 800px;
    margin-inline: auto;
}
.blog_post_content figure {
	margin-left: 0px;
	margin-right: 0px;
}
.lead, .lead.blog_post_content, .blog_post_content {
    font-size: 1em;
}
.blog_post_content img {
	width: 100%;
}
.blog_post_content a, .link-style, .tr-tb {
	color: #0157bb;
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 3px;
	text-decoration-color: #bedcff;
}
.blog_post_content a:hover {
	text-decoration: none;
}
.blog_post_content * {
	margin-block-start: 1rem;
}
.blog_post_content *:first-child {
	margin-block-start: 0rem;
}
.blog_post_content h2 {
	margin-block-start: 3rem;
}
.blog_post_content h3, 
.blog_post_content h4, 
.blog_post_content h5, 
.blog_post_content h6 {
	margin-block-start: 2.5rem;
}
.photo-content ul li:not(:first-child), 
.blog_post_content ul li:not(:first-child) {
    margin-top: 8px;
}
@media (max-width: 768px) { 
	.blog_post_content h2 {
		margin-block-start: 2.5rem;
	}
	
	.blog_post_content h3, 
	.blog_post_content h4, 
	.blog_post_content h5, 
	.blog_post_content h6 {
		margin-block-start: 1.5rem;
	}
}

/* Product Card */

[data-qb-page="list"] .product-price, [data-qb-page="list"] .product-price:hover, [data-qb-page="start"] .product-price, [data-qb-page="product"] .qs-product-price {
    color: #ffffff;
    font-size: 1.5rem;
    background: #c60156;
    padding-inline: 0.25rem;
    width: fit-content!important;
}


/* Table Styles */

/* Table Style (Adapts .wp-block-table and .wp-block-table table styles) */
.blog_post_content table {
  /* Styles previously on the table element */
  background-color: #fff; /* Table background */
  overflow: hidden;
  font-size: 1.1rem;
  border-radius: 0.7rem; /* Rounded corners for the table itself */
  border-collapse: collapse;
  width: 100%;

  /* Apply container's border directly to the table */
  border-top: 3px solid #efefef;
  border-bottom: 3px solid #efefef;
  border-left: none; /* Ensure no left/right borders on table */
  border-right: none;

  /* Remove padding rule that was on the container */
  /* padding: 0.5rem; */ /* This cannot be replicated well without a container */

  /* Margins previously on the figure element */
  margin-left: 0px;
  margin-right: 0px;
  margin-top: 1em; /* Add some default vertical spacing if needed */
  margin-bottom: 1em; /* Add some default vertical spacing if needed */
}

/* Zebra Striping for Table Body Rows */
.blog_post_content table tbody tr:nth-child(odd) {
  background-color: #dde9ff;
}

/* Table Header Row Style */
.blog_post_content table thead tr {
  background: #fff !important;
}

/* Remove internal borders from table elements */
.blog_post_content table thead,
.blog_post_content table tbody,
.blog_post_content table tfoot,
.blog_post_content table tr,
.blog_post_content table td,
.blog_post_content table th {
  border-width: 0 !important; /* Removes cell/row borders */
  /* Inherit other border properties */
  border-style: solid;
  border-color: inherit;
}

/* Cell Padding and Alignment */
.blog_post_content table td,
.blog_post_content table th {
  padding: 0.5em;
  text-align: left;
}

/* Header Cell Specific Styles */
.blog_post_content table th {
  font-weight: bold;
}

/* Responsive Styles */
@media (max-width: 768px) {
  /* Adjust table font and remove rounding on small screens */
  .blog_post_content table {
    font-size: 0.8rem;
    line-height: 1.2;
    border-radius: 0px; /* Remove table rounding, border will follow */
    /* No container padding to adjust */
  }
}


/* Cart CSS */

.x-qs-cart-message {
    display: flex;
    gap: 0.5em;
    padding: 6px 0px;
    justify-content: center;
    text-align: center;
    align-items: center;
    background: #e8e8e8;
    color: #0057bb;
    font-weight: 600;
    font-size: 20px;
    border-radius: 4px 4px 0px 0px;
}

@media (max-width: 480px) {
    .x-qs-cart-message {
        font-size: 15px!important;
    }
}

.x-qs-cart-message .qs-cart-message {
    padding: unset !important;
    color: #002855 !important;
    font-size: 0.8em !important;
}
/* Cart Actions */

.sidebar-cart-actions {
    padding: 1rem 2rem;
}

.modal-content.sidebar-cart-content {
    padding-bottom: 0px;
}

/* Cart Related Product */

.sidebar-cart-content .modal-close {
    color: #000;
}
.cart-related-products {
    padding: 1rem 2rem;
    border-top: 1px solid #eee;
    margin-top: 20px;
  }
  
  .cart-related-products .cart-related-products__title {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
    font-size: 22px;
    font-weight: normal;
  }
  
  .cart-related-products .heart-icon {
    margin-right: 10px;
  }
  
  .cart-related-products .cart-related-products__container {
    display: flex;
    flex-direction: column;
    gap: 15px;
  }
  
  .cart-related-products .cart-related-product-item {
    display: flex;
    align-items: center;
    padding: 10px 0;
    border-bottom: 1px solid #eee;
  }
  
  .cart-related-products .cart-related-product-item:last-child {
    border-bottom: none;
  }
  
  .cart-related-products .cart-related-product-item__image {
    width: 60px;
    height: 60px;
    overflow: hidden;
    flex-shrink: 0;
  }
  
  .cart-related-products .cart-related-product-item__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  
  .cart-related-products .cart-related-product-item__info {
    flex-grow: 1;
    padding: 0 15px;
    display: flex;
    flex-direction: column;
  }
  
  .cart-related-products .cart-related-product-item__name {
    margin-bottom: 5px;
  }
  
  .cart-related-products .cart-related-product-item__name a {
    color: #333;
    text-decoration: none;
    font-weight: 500;
  }
  
  .cart-related-products .cart-related-product-item__price {
    font-weight: bold;
  }
  
  .cart-related-products .before-price {
    text-decoration: line-through;
    color: #999;
    margin-right: 5px;
    font-weight: normal;
  }
  
  .cart-related-products .cart-related-product-item__action {
    flex-shrink: 0;
  }
  
  .cart-related-products .buy-button {
    background-color: var(--primary-color);
    color: #fff;
    border: none;
    padding: 8px 15px;
    font-size: 14px;
    cursor: pointer;
    font-weight: bold;
  }
  
  .cart-related-products .buy-button:hover {
    background-color: #333;
  }
  
  @media (max-width: 576px) {
    .cart-related-products .cart-related-product-item__name {
      font-size: 14px;
    }
    
    .cart-related-products .cart-related-product-item__price {
      font-size: 14px;
    }
    
    .cart-related-products .buy-button {
      padding: 6px 12px;
      font-size: 12px;
    }
  }
  
/* Discount Banner */
.blackfriday-box {
    background: #f8332f;
    color: #ffffff;
    border-radius: 8px;
    padding: 1.5rem;
    margin-top: 10px;
    margin-left: 0px;
    margin-block: 1rem;
}
.blackfriday-box h3 {  
    margin-bottom: 8px;
    font-size: 16.5px;
}