/* Beeskraal: free-theme WooCommerce parity for Pro */

:root {
  --primary-theme-color: #DC2751;
  --secondary-theme-color: #151515;
  --primary-theme-gradient: linear-gradient(90deg, #EA69F8 0%, #9B98F8 27.69%, #37D3F9 54.18%, #3EEDBD 74.27%, #D5DF27 100%);
  --secondary-theme-gradient: linear-gradient(90deg, #3EEDBD 50%, #D5DF27 100%);
}


.post-single a,
.page-single a,
.sidebar-area .textwidget a,
.comment-content a,
.woocommerce-product-details__short-description a,
#tab-description a,
.extra-home-content a{
  text-decoration: underline;
  color: var(--primary-theme-color);
}

.footer-area form.woocommerce-product-search button,
#sidebar form.woocommerce-product-search button{
  background: var(--primary-theme-color);
  border-radius: 0px;
  color: #fff;
  margin-top: 5px;
  padding: 10px 0;
  width: 100%;
  font-weight: 600;
  border: none;
  border: solid 1pxvar(--primary-theme-color);
}

/* WOOCOMMERCE */
/* Cart */
.wp-block-woocommerce-cart.alignwide{
  margin-right: auto;
  margin-left: auto;
}

.wp-block-woocommerce-checkout.alignwide{
  margin-right: auto;
  margin-left: auto;
}

.wp-block-woocommerce-cart .wc-block-cart-items{
  border: 1px solid #dee2e6 !important;
  box-shadow: 0px 0px 40px 0px rgb(0 0 0 / 9%);
  padding: 10px;
}

.wp-block-woocommerce-cart-order-summary-block{
  border: 1px solid #dee2e6 !important;
  box-shadow: 0px 0px 40px 0px rgb(0 0 0 / 9%);
}

.wp-block-woocommerce-cart-order-summary-heading-block{
  padding: 10px 20px !important;
  background: #f3f4f7 !important;
}

.wc-block-components-product-name{
  font-size: 20px;
  text-decoration: none !important;
  font-weight: 600 !important;
  color: #000 !important;
}

.wc-block-cart-items__header-image{
  padding-left: 16px !important;
}

.wc-block-cart-items__header-total{
  padding-right: 16px !important;
}

.wc-block-components-totals-coupon-link,
.wc-block-cart__submit-container a,
.wc-block-checkout__actions_row button,
.wc-block-components-totals-coupon__form button,
.wc-block-components-checkout-return-to-cart-button,
.wc-block-grid__product-add-to-cart a,
.product-add-to-cart a,
.woocommerce-Address-title.title a,
.products .yith-wcwl-add-button a,
.products .yith-wcwl-wishlistexistsbrowse,
.products .yith-wcwl-wishlistaddedbrowse,
.entry-summary .yith-wcwl-add-button a,
.entry-summary .yith-wcwl-wishlistexistsbrowse,
.entry-summary .yith-wcwl-wishlistaddedbrowse{
  background: var(--primary-theme-color);
  color: #fff !important;
  line-height: unset;
  padding: .618em 1em;
  font-weight: 700;
  border-radius: 3px;
  margin-top: 10px;
  text-decoration: none !important;
}

.wc-block-components-totals-coupon__form button{
  margin-top: 0px !important;
}

.entry-summary .yith-wcwl-add-button,
.products .yith-wcwl-add-button{
  margin-top: 21px;
  margin-bottom: 10px;
}

.wc-block-cart__submit-container a{
  margin-top: 20px;
}

.wc-block-components-totals-coupon-link:hover,
.wc-block-cart__submit-container:hover a,
.wc-block-checkout__actions_row button:hover,
.wc-block-components-checkout-return-to-cart-button:hover,
.wc-block-grid__product-add-to-cart a:hover,
.yith-wcwl-add-button:hover a{
  background: #121212;
}

.wc-block-components-totals-coupon{
  text-align: center;
  padding-left: 16px;
  padding-right: 16px;
}

.wc-block-cart-items__header-product{
  background: #f3f4f7 !important;
}

.wc-block-cart-items__header th{
  padding: 10px 20px !important;
  font-size: 14px;
}

.wc-block-cart__totals-title{
  font-size: 14px !important;
  font-weight: 700 !important;
  text-align: center !important;
}

tr.wc-block-cart-items__row{
  padding: 15px 15px !important;
}

.wc-block-components-totals-item,
.wc-block-components-totals-item{
  padding-left: 16px !important;
  padding-right: 16px !important;
}

span.wp-block-woocommerce-cart-order-summary-heading-block.wc-block-cart__totals-title{
  display: block !important;
}

.woocommerce-message p{
  flex-basis: 55%;
}

.product .price ins,
.price .woocommerce-Price-amount.amount{
  font-size: 20px;
  font-weight: 600;
}

.product .price del .woocommerce-Price-amount.amount{
  font-size: 18px !important;
  font-weight: 500 !important;
}

.product .price{
  margin: 10px 0px !important;
}

.cart.wishlist_table .additional-info-wrapper{
  display: flex;
  align-items: center;
  justify-content: space-around;
}

ul.shop_table.cart.wishlist_table.wishlist_view.responsive.mobile{
  display: grid;
  grid-template-columns: 2fr 50%;
  gap: 10px;
}

.hidden-title-form button i,
.wishlist-title a.show-title-form i,
.wishlist_manage_table tfoot a.create-new-wishlist i,
.wishlist_manage_table tfoot button.submit-wishlist-changes i,
.wishlist_table .add_to_cart.button i,
.wishlist_table .ask-an-estimate-button i,
.yith-wcwl-add-button>a i,
.yith-wcwl-wishlist-new button i,
.yith-wcwl-wishlist-search-form button.wishlist-search-button i{
  margin-right: 0px !important;
}

.wishlist_table tr td,
.wishlist_table tr th.product-checkbox,
.wishlist_table tr th.wishlist-delete{
  text-align: left !important;
}

/* Cart */
.wc-block-grid__product-title{
  font-size: 18px !important;
  color: #121212 !important;
  text-decoration: none !important;
}

a.wc-block-grid__product-link{
  text-decoration: none !important;
}

.wc-block-grid__product-price{
  color: var(--primary-theme-color) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

.wc-block-grid .wc-block-grid__product-onsale,
.wc-block-grid__product-image .wc-block-grid__product-onsale{
  top: 10px !important;
  right: 10px !important;
  left: auto !important;
  margin: 0 !important;
  line-height: 0 !important;
  background: #121212 !important;
  border-radius: 0 !important;
  padding: 14px 10px !important;
  min-height: 2em !important;
  color: #fff !important;
}

.wc-block-grid__products .wc-block-grid__product-image img{
  width: 100% !important;
}

/* CHECKOUT */
.wp-block-woocommerce-checkout-order-summary-block{
  border: 1px solid #dee2e6 !important;
  padding: 10px;
  box-shadow: 0px 0px 40px 0px rgb(0 0 0 / 9%);
}

/* MY ACCOUNT */
nav.woocommerce-MyAccount-navigation ul{
  list-style: none;
  padding: 0;
  margin-bottom: 0;
}

nav.woocommerce-MyAccount-navigation ul li{
  padding: 10px;
  margin-bottom: 15px;
  background: var(--primary-theme-color);
}

nav.woocommerce-MyAccount-navigation ul li:hover{
  background: #121212;
}

nav.woocommerce-MyAccount-navigation ul li a{
  text-decoration: none;
  color: #fff
}

/* CHECKOUT */
.woocommerce form .form-row label,
.woocommerce form .form-row,
span.woocommerce-input-wrapper,
span.password-input{
  width: 100%;
}

/* BUTTONS */
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce a.added_to_cart{
  background: var(--primary-theme-color);
  color: #fff;
  line-height: unset;
  border-radius: 7px !important;
}

.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover,
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce a.added_to_cart:hover{
  background: #121212;
  color: #fff;
}

.woocommerce a.added_to_cart{
  padding: .618em 1em;
  font-weight: 700;
  margin-top: 1em;
  border-radius: 0px;
}

/* SHOP & SINGLE PRODUCT */

.woocommerce ul.products li.product .onsale,
.woocommerce span.onsale{
  top: 5px;
  right: 5px;
  left: auto;
  margin: 0;
  line-height: 0;
  background: var(--primary-theme-color);
  border-radius: 5px;
  padding: 14px 10px !important;
  min-height: 2em !important;
}

.woocommerce span.onsale{
  left: 10px;
  right: auto;
}

h2.woocommerce-loop-product__title{
  font-size: 18px !important;
}

.woocommerce ul.products li.product .price,
.woocommerce div.product p.price,
.woocommerce div.product span.price{
  color: #000;
  display: block;
  margin-bottom: 0;
  font-size: 18px;
}

.woocommerce ul.products li.product .price ins,
.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins{
  text-decoration: none;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  text-align: center;
}

.woocommerce .quantity .qty{
  width: 9em;
  padding: 8px;
}

.woocommerce ul.products li.product .star-rating{
  font-size: 12px;
  margin: 0 auto 8px;
}

.woocommerce .woocommerce-ordering select,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea{
  padding: 12px;
  border: 1px solid #d3ced2;
  background: transparent;
}

.product .add_to_cart_button.added{
  display: none !important;
}

/* shop / related product thumbs — keep square aspect under Pro
   img { max-width:100% !important } (no height:auto). Related uses
   columns-5 so cells often shrink below 200px; fixed height:200px then
   squashes. Match live free squares with cover + aspect-ratio. */
.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img,
.related.products ul.products li.product a img {
  display: block;
  margin: 0 auto;
  margin-bottom: 0;
  width: 100%;
  max-width: 200px;
  height: auto !important;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  object-position: center;
  border-radius: 20px;
}

.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product{
  border: 1px solid var(--primary-theme-color);
  border-radius: 10px;
  padding: 10px;
  background-color: transparent;
  background-image: none;
}

ul.products a.button.product_type_simple.add_to_cart_button.ajax_add_to_cart,
a.added_to_cart.wc-forward{
  padding: 8px 28px;
}

ul.products h2.woocommerce-loop-product__title{
  color: var(--primary-theme-color);
  font-size: 22px !important;
}

/* shop page pagination  */
.woocommerce nav.woocommerce-pagination ul li span.current{
  padding: 12px 15px;
  background: var(--primary-theme-color);
  color: #121212;
  border-radius: 10px;
  font-weight: bold;
}

.woocommerce nav.woocommerce-pagination ul li a{
  display: block;
  margin: 2px 2px 2px 0;
  padding: 12px 15px;
  text-decoration: none;
  width: auto;
  color: #fff;
  background: #121212;
  transition: background .15s ease-in-out;
  font-weight: bold;
  border-radius: 10px;
}

.woocommerce nav.woocommerce-pagination ul li a:hover{
  background: var(--primary-theme-color);
  color: #121212;
}

.woocommerce nav.woocommerce-pagination ul,
.woocommerce nav.woocommerce-pagination ul li{
  border: none;
  float: none;
  overflow: unset;
}

.woocommerce nav.woocommerce-pagination{
  text-align: center;
  margin-bottom: 20px;
}

.header-search .searchform input[type="search"],
.search-box input#woocommerce-product-search-field-0{
  width: calc(100% - 35px);
  margin: 0;
  padding: 6px;
  background-color: transparent;
  border: none;
  outline: #0000;
  color: #fff;
  font-size: 14px;
}

.header-image-box {
  position: relative;
  /* height capped by beeskraal-parallax-hero.css */
  display: flex;
  align-items: center;
  background-position: center;
}

.header-image-box:before {
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  background: #00000061;
  z-index: 1;
}

.header-image-box h1,
.headerimgbox-meta span,
.crumb-box a,
.crumb-box,
.header-image-box p {
  position: relative;
  z-index: 1;
  color: #fff;
}

.header-image-box h1 {
  font-size: 65px;
}

.header-image-box h1,
.post-title a {
  word-wrap: break-word;
}

/* === FREE RESPONSIVE.CSS SHOP PARITY (from live free theme assets/css/responsive.css) === */
/* Restores product grid widths at breakpoints — was missing (@media count was 0). */

@media screen and (max-width : 767px) {
  .woocommerce ul.products[class*="columns-"] li.product,
  .woocommerce-page ul.products[class*="columns-"] li.product {
    width: 100% !important;
  }
  .wc-block-grid__products .wc-block-grid__product-image img{
    width: 100% !important;
  }
  .woocommerce a.added_to_cart {
    margin-left: 10px;
    border-radius: 0px;
  }
  ul.shop_table.cart.wishlist_table.wishlist_view.responsive.mobile{
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

@media screen and (min-width : 768px) and (max-width : 1023px) {
  .wc-block-grid .wc-block-grid__product {
    flex: 1 0 48% !important;
    max-width: 48% !important;
  }
  .wc-block-grid__products .wc-block-grid__product-image img{
    width: 100% !important;
  }
}

@media screen and (min-width : 768px) and (max-width : 1000px) {
  .woocommerce .quantity .qty {
    width: 4em !important;
  }
  .woocommerce ul.products li.product, .woocommerce-page ul.products li.product{
    width: 45%;
  }
}

@media screen and (min-width : 999px) and (max-width : 1200px){
  .woocommerce ul.products li.product, .woocommerce-page ul.products li.product 
  {
    width: 46%;
  }
}
