/*
Theme Name: VS Store
Theme URI: http://yourwebsite.com/vs-store
Author: Your Name
Author URI: http://yourwebsite.com
Description: A custom WordPress theme for the VS Store.
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Tags: custom-theme, minimalist
Text Domain: vs-store
*/


/* from hellp elementor */


html {
    line-height: 1.15; /* 1 */
    -webkit-text-size-adjust: 100%; /* 2 */
  }
  
  *,
  *::before,
  *::after {
    box-sizing: border-box; /* 3 */
  }
  
  /* Sections
   */
  body {
    margin: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    font-size: 1rem;
    font-weight: 300;
    line-height: 1.5;
    color: #333333;
    background-color: #fff;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  
  /**
   * Correct the font size and margin on `h1` elements within `section` and
   * `article` contexts in Chrome, Firefox, and Safari.
   */
  h1, h2, h3, h4, h5, h6 {
    margin-block-start: 0.5rem;
    margin-block-end: 1rem;
    font-family: inherit;
    font-weight: 500;
    line-height: 1.2;
    color: inherit;
  }
  
  h1 {
    font-size: 2.5rem;
  }
  
  h2 {
    font-size: 2rem;
  }
  
  h3 {
    font-size: 1.75rem;
  }
  
  h4 {
    font-size: 1.5rem;
  }
  
  h5 {
    font-size: 1.25rem;
  }
  
  h6 {
    font-size: 1rem;
  }
  
  p {
    margin-block-start: 0;
    margin-block-end: 0.9rem;
  }
  
  /* Grouping content
   */
  /**
   * 1. Add the correct box sizing in Firefox.
   * 2. Show the overflow in Edge and IE.
   */
  hr {
    box-sizing: content-box; /* 1 */
    height: 0; /* 1 */
    overflow: visible; /* 2 */
  }
  
  /**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
  pre {
    font-family: monospace, monospace; /* 1 */
    font-size: 1em; /* 2 */
    white-space: pre-wrap;
  }
  
  /* Text-level semantics
   */
  a {
    background-color: transparent;
    text-decoration: none;
    color: #CC3366;
  }
  a:hover, a:active {
    color: #333366;
  }
  a:not([href]):not([tabindex]) {
    color: inherit;
    text-decoration: none;
  }
  a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {
    color: inherit;
    text-decoration: none;
  }
  a:not([href]):not([tabindex]):focus {
    outline: 0;
  }
  
  /**
   * 1. Remove the bottom border in Chrome 57-
   * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
   */
  abbr[title] {
    border-block-end: none; /* 1 */
    -webkit-text-decoration: underline dotted;
            text-decoration: underline dotted; /* 2 */
  }
  
  /**
   * Add the correct font weight in Chrome, Edge, and Safari.
   
  b,
  strong {
    font-weight: bolder;
  }

*/
  
  /**
   * 1. Correct the inheritance and scaling of font size in all browsers.
   * 2. Correct the odd `em` font sizing in all browsers.
   */
  code,
  kbd,
  samp {
    font-family: monospace, monospace; /* 1 */
    font-size: 1em; /* 2 */
  }
  
  /**
   * Add the correct font size in all browsers.
   */
  small {
    font-size: 80%;
  }
  
  /**
   * Prevent `sub` and `sup` elements from affecting the line height in
   * all browsers.
   */
  sub,
  sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  
  sub {
    bottom: -0.25em;
  }
  
  sup {
    top: -0.5em;
  }
  
  /* Embedded content
   */
  /**
   * Remove the border on images inside links in IE 10.
   */
  img {
    border-style: none;
    height: auto;
    max-width: 100%;
  }
  
  /* Interactive
   */
  /*
   * Add the correct display in Edge, IE 10+, and Firefox.
   */
  details {
    display: block;
  }
  
  /*
   * Add the correct display in all browsers.
   */
  summary {
    display: list-item;
  }
  
  figcaption {
    font-size: 16px;
    color: #333333;
    line-height: 1.4;
    font-style: italic;
    font-weight: 400;
  }
  
  /* Misc
   */
  /**
   * Add the correct display in IE 10+.
   */
  template {
    display: none;
  }
  
  /**
   * Add the correct display in IE 10.
   */
  [hidden] {
    display: none;
  }
  
  /**
   * Form styling
   */
  label {
    display: inline-block;
    line-height: 1;
    vertical-align: middle;
  }
  
  /**
   * 1. Change the font styles in all browsers.
   * 2. Remove the margin in Firefox and Safari.
   */
  button,
  input,
  optgroup,
  select,
  textarea {
    font-family: inherit; /* 1 */
    font-size: 1rem; /* 1 */
    line-height: 1.5; /* 1 */
    margin: 0; /* 2 */
  }
  
  input[type=text],
  input[type=date],
  input[type=email],
  input[type=number],
  input[type=password],
  input[type=tel],
input[type=search],
  input[type=url],
  select,
  textarea {
    width: 100%;
    border: solid 1px #666666;
    border-radius: 3px;
    padding: 0.5rem 1rem;
    transition: all 0.3s;
  }
  input[type=text]:focus,
  input[type=date]:focus,
  input[type=email]:focus,
  input[type=number]:focus,
  input[type=password]:focus,
  input[type=search]:focus,
  input[type=tel]:focus,
  input[type=url]:focus,
  select:focus,
  textarea:focus {
    border-color: #333333;
  }

input[type=search] {
	border-color: var(--primary-color);
}
  
  /**
   * Show the overflow in IE.
   * 1. Show the overflow in Edge.
   */
  button,
  input { /* 1 */
    overflow: visible;
  }
  
  /**
   * Remove the inheritance of text transform in Edge, Firefox, and IE.
   * 1. Remove the inheritance of text transform in Firefox.
   */
  button,
  select { /* 1 */
    text-transform: none;
  }
  
  /**
   * Correct the inability to style clickable types in iOS and Safari.
   */
  button,
  [type=button],
  [type=reset],
  [type=submit] {
    width: auto;
    -webkit-appearance: button;
  }
  
  /**
   * Restore the focus styles unset by the previous rule.
   */
  button,
  [type=submit],
  [type=button] {
    display: inline-block;
    font-weight: 400;
    color: #CC3366;
    text-align: center;
    white-space: nowrap;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
    background-color: transparent;
    border: 1px solid #CC3366;
    padding: 0.5rem 1rem;
    font-size: 1rem;
    border-radius: 3px;
    transition: all 0.3s;
  }
  button:focus:not(:focus-visible),
  [type=submit]:focus:not(:focus-visible),
  [type=button]:focus:not(:focus-visible) {
    outline: none;
  }
  button:hover, button:focus,
  [type=submit]:hover,
  [type=submit]:focus,
  [type=button]:hover,
  [type=button]:focus {
    color: #ffffff;
    background-color: #CC3366;
    text-decoration: none;
  }
  button:not(:disabled),
  [type=submit]:not(:disabled),
  [type=button]:not(:disabled) {
    cursor: pointer;
  }
  
  /**
   * Correct the padding in Firefox.
   */
  fieldset {
    padding: 0.35em 0.75em 0.625em;
  }
  
  /**
   * 1. Correct the text wrapping in Edge and IE.
   * 2. Correct the color inheritance from `fieldset` elements in IE.
   * 3. Remove the padding so developers are not caught out when they zero out
   *    `fieldset` elements in all browsers.
   */
  legend {
    box-sizing: border-box; /* 1 */
    color: inherit; /* 2 */
    display: table; /* 1 */
    max-width: 100%; /* 1 */
    padding: 0; /* 3 */
    white-space: normal; /* 1 */
  }
  
  /**
   * Add the correct vertical alignment in Chrome, Firefox, and Opera.
   */
  progress {
    vertical-align: baseline;
  }
  
  /**
   * Remove the default vertical scrollbar in IE 10+.
   */
  textarea {
    overflow: auto;
    resize: vertical;
  }
  
  /**
   * 1. Add the correct box sizing in IE 10.
   * 2. Remove the padding in IE 10.
   */
  [type=checkbox],
  [type=radio] {
    box-sizing: border-box; /* 1 */
    padding: 0; /* 2 */
  }
  
  /**
   * Correct the cursor style of increment and decrement buttons in Chrome.
   */
  [type=number]::-webkit-inner-spin-button,
  [type=number]::-webkit-outer-spin-button {
    height: auto;
  }
  
  /**
   * 1. Correct the odd appearance in Chrome and Safari.
   * 2. Correct the outline style in Safari.
   */
  [type=search] {
    -webkit-appearance: textfield; /* 1 */
    outline-offset: -2px; /* 2 */
  }
  
  /**
   * Remove the inner padding in Chrome and Safari on macOS.
   */
  [type=search]::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  
  /**
   * 1. Correct the inability to style clickable types in iOS and Safari.
   * 2. Change font properties to `inherit` in Safari.
   */
  ::-webkit-file-upload-button {
    -webkit-appearance: button; /* 1 */
    font: inherit; /* 2 */
  }
  
  select {
    display: block;
  }
  
  /**
   * Table styling
   */
  table {
    background-color: transparent;
    width: 100%;
    margin-block-end: 15px;
    font-size: 0.9em;
    border-spacing: 0;
    border-collapse: collapse;
  }
  table th,
  table td {
    padding: 15px;
    line-height: 1.5;
    vertical-align: top;
    border: 1px solid rgba(128, 128, 128, 0.5019607843);
  }
  table th {
    font-weight: bold;
  }
  table thead th,
  table tfoot th {
    font-size: 1em;
  }
  table caption + thead tr:first-child th,
  table caption + thead tr:first-child td,
  table colgroup + thead tr:first-child th,
  table colgroup + thead tr:first-child td,
  table thead:first-child tr:first-child th,
  table thead:first-child tr:first-child td {
    border-block-start: 1px solid rgba(128, 128, 128, 0.5019607843);
  }
  table tbody > tr:nth-child(odd) > td,
  table tbody > tr:nth-child(odd) > th {
    background-color: rgba(128, 128, 128, 0.0705882353);
  }
  table tbody tr:hover > td,
  table tbody tr:hover > th {
    background-color: rgba(128, 128, 128, 0.1019607843);
  }
  table tbody + tbody {
    border-block-start: 2px solid rgba(128, 128, 128, 0.5019607843);
  }
  @media (max-width: 767px) {
    table table {
      font-size: 0.8em;
    }
    table table th,
    table table td {
      padding: 7px;
      line-height: 1.3;
    }
    table table th {
      font-weight: 400;
    }
  }
  
  /**
   * List styling
   */
  dl,
  dt,
  dd,
  ol,
  ul,
  li {
    margin-block-start: 0;
    margin-block-end: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
  }











  /* Oron styles */





:root {
    /* Light Gray Shades */
    --darkest-gary: #99AEBB;
    --dark-gray: #B3C3CE;
    --medium-gray: #CCD5DB;
    --light-gray: #E5E8ED;
    --lightest-gray: #f6f6f6;
    --background-gray: #f5f5f7;

    /* Other Colors */
    --darkest-primary: #131921;
    --dark-primary: #234C5F;
    --primary-color: #3A6E87;
		--lighter-primary: #95ABB6;
    --blue: #0096D7;
    --red: #B12705;
    --light-orange: #E3A04E;
	--orange: #EF972C;
	--dark-orange: #C95603;
    --yellow: #FFD812;
    --light-green: #45C089;
    --dark-green: #168342;
}



/* single vs-page1*/

.vs-boxed-page-wrapper {
	background-color:var(--background-gray); 
	padding: 30px 0px;
}
@media (max-width: 768px) {
	.vs-boxed-page-wrapper {
	padding: 10px 5px;
}
}

.vs-boxed-page {
	max-width:1140px;
	margin: 0px auto;
	border-radius:10px;
	padding: 30px 40px;
	background-color:white;
}

.vs-boxed-page h1{
	text-align:center;
	padding-bottom:20px;
	font-size:36px;
	font-weight:700;
}

.vs-boxed-page h2{
	font-size:24px;
	font-weight:500;
	text-decoration:underline;
}

.vs-boxed-page h3{
	font-size:20px;
	font-weight:500;
}

@media (max-width: 768px) {
	.vs-boxed-page {
		padding: 20px 20px;
	}
	.vs-boxed-page h1 {
		padding-bottom:10px;
	font-size:28px;
	}
}

/* simple page template*/
.vs-simple-page {
	padding:30px 0px 60px;
}

@media (max-width: 768px) {
	.vs-simple-page {
		padding:20px 10px 50px;
	}
}




/* store messages +buy2get10 */
.woocommerce-info, .woocommerce-message, .vs-message, .woocommerce-error {
	background-color:white;
    justify-content: center;
    align-items: center;
    text-align: center; 
    padding: 20px; 
	margin:0px auto;
	max-width:1140px;
		border-radius:10px;
}

.woocommerce-message, .vs-message {
padding:10px 10px;	
	margin-bottom:10px;
}

.woocommerce-message::before, .woocommerce-info::before {
	position:unset; padding-right: 10px
}

.woocommerce-error {
	border: 2px solid red;
}
.woocommerce-message {
		border: 2px solid #8fae1b;
}

.woocommerce-message {
    display: flex;
    align-items: center;
    justify-content: center;
}

.woocommerce-message .button {
    order: 2; 
    margin-left: 10px!important;
    border-radius: 50px!important;
    font-weight: 400!important;
    color: white!important;
    background-color: #8fae1b!important;
    transition: background-color 0.3s ease; /* Add transition for background color */
	    white-space: nowrap; /* Prevent text wrapping */

}

.woocommerce-message .button:hover {
    background-color: var(--orange)!important;
}

.woocommerce-message .woocommerce-message__content {
    order: 1;
}

.vs-message {
	border: 2px solid var(--blue);
}

.vs-message-wrapper, .woocommerce-notices-wrapper {
	padding:0px 5px;
}
/*removes the padding above only on the cart page*/
.woocommerce-cart .vs-message-wrapper, .woocommerce-cart .woocommerce-notices-wrapper {
	padding:0px;
}







/* section title*/

.section-title {
	display:flex;
	max-width:1140px;
	margin:0 auto;
	justify-content: space-between;
	align-items:center;
	padding: 20px 0px;
}

    .section-title h2 {
        margin: 0px;
			font-size: 24px;
			font-weight:600;
			color: var(--primary-color);
    }

.section-title .view-all {
	display: inline-block;
}

.section-title .view-all a {
	color: var(--primary-color);
	font-weight:600;
	padding:10px 30px;
	border:1px solid var(--primary-color);
	border-radius:9999px;
}

.section-title .view-all a:hover {
    background-color: var(--primary-color);
    color:white;
}

.section-title .SpectrumGradient2 {
	flex-grow:1;
	margin: 0px 20px;
	margin-bottom:-5px
}

@media (max-width: 768px) {
		.section-title {
        display: grid;
        grid-template-columns: 1fr auto 1fr;
        align-items: center;
        gap: 10px; 
    }
    
    .section-title h2 {
        grid-column: 1 / 2;
			font-size:16px;
    }
    
    .section-title .SpectrumGradient2 {
        grid-column: 1 / -1;
        order: 3;
    }
    
    .section-title .view-all {
        grid-column: 3 / 4;
    }
	.section-title .view-all a{
		float: right;
margin-right: 10px;
					font-size:14px;
	}
	
	.section-title .SpectrumGradient2 {
	margin: 0px;
}
}






/* blog page */ 
.blog-content {
    padding-bottom: 50px!important;
}

.blogpage-section {
	padding:20px 0px;
}

.wrapper70-30 {
    display: flex;
    gap: 20px;
}

.inner70 {
    flex: 0 0 calc(70% - 10px);
}

.inner30 {
    flex: 0 0 calc(30% - 10px);
}


@media (max-width: 768px) {
    .wrapper70-30 {
        flex-wrap: wrap;
    }
    
    .inner70, .inner30 {
        flex: 0 0 100%;
    }
}



















/* blog header */
.blog-page-wrapper {
    background-color: var(--lightest-gray);
	padding-top:30px
}

.blog-header {
    display: flex;
	    flex-wrap: wrap;
    max-width: 1140px;
    margin: 0 auto;
    background-color: var(--primary-color);
    height: 300px;
}

.blog-header .header-text {
    width: 60%;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center; 
    align-items: center;
}

.blog-header h1 {
    font-size: 28px;
    color: white;
}

.blog-header p {
    font-size: 20px;
    color: #ddd;
	padding: 0px 20px;
}

.blog-header .header-image {
    width: 40%;
    height: 100%;
    display: flex;
    justify-content: flex-end;
}

.blog-header .header-image img {
    object-fit: contain;
}

@media (max-width:768px) {
.blog-header .header-text,.blog-header .header-image {
	width: 100%
}
	.blog-header {height:auto;}
	.blog-page-wrapper {padding-top:0px;}
	
	.blog-header .header-text {padding:20px 10px 0px;}
	
	.blog-header .header-image {
		order: -1;
	}
	.blog-header p {
    font-size: 18px;
	padding: 0px 10px 20px;
}
	
}













.blog-category {
    width: 45%;
    background: white;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    padding: 20px;
}

.blog-category h2 {
    font-size: 1.5em;
    margin-bottom: 20px;
}

.blog-category ul {
    list-style: none;
    padding: 0;
}

.blog-category ul li {
    margin-bottom: 15px;
    font-size: 1em;
    color: #333;
    display: flex;
    align-items: center;
}

.blog-category ul li img {
    width: 50px;
    height: 50px;
    object-fit: cover;
    border-radius: 5px;
    margin-right: 15px;
}

.blog-category ul li a {
    text-decoration: none;
    color: #0073aa;
}

.blog-category ul li a:hover {
    text-decoration: underline;
}




/* blog menu */
.blog-menu-container {
    overflow-x: auto;
    white-space: nowrap;
    max-width: 1140px;
    margin: 0 auto;
	    background-color: white;

    -webkit-overflow-scrolling: touch; /* Enable smooth scrolling on mobile */
}

.blog-menu-container::-webkit-scrollbar {
    display: none; /* Hide scrollbar on WebKit browsers */
}

.blog-menu {
    display: flex;
    list-style: none;
    padding: 0px 20px;
    margin: 0 auto;
    justify-content: center;
    white-space: nowrap; /* Prevents wrapping */
}

.blog-menu li {
    display: inline-block;
    margin-right: 15px;
}

.blog-menu li a {
    text-decoration: none;
    color: var(--primary-color);
    padding: 10px 10px;
    display: block;
    font-weight: 600;
    line-height: 36px;
    position: relative; /* For positioning the pseudo-element */
}

.blog-menu li a::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 3px; /* Same height as the border */
    background-color: var(--primary-color);
    transform: scaleX(0);
    transform-origin: bottom right;
    transition: transform 0.3s ease-out;
}

.blog-menu li a:hover::before,
.blog-menu li.current-menu-item a::before {
    transform: scaleX(1);
    transform-origin: bottom left;
}

@media (max-width: 768px) {
    .blog-menu {
        justify-content: start;
    }
}










/* post archive- cards */
.cards-posts-list {
    display: flex;
    justify-content: space-between;
    list-style: none;
    padding: 0px;
    margin: 0;
    flex-wrap: wrap;
    gap: 10px; /* Set the gap between items */
}

.card-post-item {
    flex: 1 1 calc(33.333% - 20px); /* Adjust for 3 items per row and gap */
    background-color: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 5px;
    overflow: hidden;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
    text-align: center;
}

.best-area .card-post-item {
	flex: 1 1 calc(20% - 20px)!important;
}

.card-post-item .post-thumbnail {
    margin: 0;
    overflow: hidden;
}

.card-post-item .post-thumbnail img {
    width: 100%;
    height: auto;
    display: block;
}

.card-post-item .post-title {
    padding: 10px;
    font-size: 1em;
}

.card-post-item .post-title a {
    text-decoration: none;
    color: inherit;
}

@media (max-width: 768px) {
    .card-post-item {
        flex: 1 1 calc(50% - 10px); 
    }
	.best-area .card-post-item {
	flex: 0 1 calc(50% - 5px)!important;
}
}


.news-posts-list a{
	color:inherit;
}
.news-posts-list {
	list-style:none!important;
    padding-left: 0px!important;
}
.news-posts-list li{
	padding:0px 10px;
}
.news-posts-list h3{
	font-size:1rem;
	border-bottom: 1px solid #ccc;
	padding-bottom:10px;
}













/* best lists */
.best-list-products {
    margin: 20px 0;
}

.list-product {
    display: flex;
    border: 1px solid #ddd;
    padding: 15px;
    margin-bottom: 20px;
    align-items: flex-start;
}

.list-product-image {
    width: 250px;
    height: auto;
    margin-right: 20px;
    flex-shrink: 0; 
}

.list-product-info {
    display: flex;
    flex-direction: column;
    align-items: start;
    flex-grow: 1; /* Allow text to grow */
}

.list-product-info h2 {
    font-size: 20px !important;
    font-weight: 400 !important;
    margin: 0;
}

.list-product-description {
    line-height: 28px;
    margin: 15px 0px 15px;
}

.list-buy-now-button {
    display: inline-block;
    padding: 10px 20px;
    font-size: 16px;
    color: #fff;
    background-color: var(--primary-color);
    border-radius: 50px;
    transition: background-color 0.3s ease;
}

.list-buy-now-button:hover {
    color: #fff;
    background-color: var(--orange);
}

.list-coupon-text {
    display: block;
    margin-top: 10px;
    font-size: 14px;
    color: #555;
}

.list-star {color:var(--orange);}

@media (max-width: 768px) {
    .list-product {
        flex-direction: column;
			        align-items: center;

    }

    .list-product-image {
        margin-bottom: 20px;
    }

    .list-product-info {
        align-items: center;
    }

    .list-product-info h2 {
        text-align: center;
			text-decoration:underline;
    }
}


/* Remove all styles from WooCommerce cart table */

.woocommerce-cart h1 {
	text-align:center;
}

.woocommerce-cart .site-content {
	background-color:var(--lightest-gray);
}

.woocommerce-cart-form table.shop_table {
	background-color:white;
}

.woocommerce-cart-form table.shop_table th {
    border: none;
    background: none;
	border-bottom: 1px solid #ddd;
}

.woocommerce-cart-form table.shop_table td {
    border: none;
    background: none;
}

.woocommerce-cart-form table.shop_table tr:last-child td {
    border-bottom: none;
	padding-top:20px;
}

.woocommerce-cart-form table.shop_table {
	padding:20px;
}

.woocommerce-cart table.shop_table th,
.woocommerce-cart table.shop_table td {
    border-block-start: none !important;
}

 #content table.cart td.actions .input-text {
	width:150px;
}


.woocommerce-cart table.cart img {
	width:50px
}

.woocommerce .quantity .qty {
	border:1px solid #ddd;
}

@media (max-width: 768px) {
	.woocommerce table.shop_table_responsive tr:nth-child(2n) td, .woocommerce-page table.shop_table_responsive tr:nth-child(2n) td {
		background-color:unset;
	}
.woocommerce-cart table.shop_table tr:not(:last-child) {
    border-bottom: 1px solid #ddd;
    padding-bottom: 20px;
}
	.woocommerce-cart table.shop_table td.product-quantity {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
	
}


/* Remove all table borders and backgrounds from any table under .cart_totals */
.cart_totals table,
.cart_totals table th,
.cart_totals table td,
.cart_totals table tr {
    border: unset!important;
    background: unset!important;
}

.cart_totals {
	border:1px solid #ddd;
	border-radius:5px;
	padding:20px;
	background-color:white;
	margin-bottom:50px;
}

.cart_totals h2 {
	font-size:24px;
	padding-left:10px;
	padding-bottom:10px;
	 border-bottom: 1px solid #ddd;
}

.wc-proceed-to-checkout a {
	background-color:var(--primary-color)!important;
}
.wc-proceed-to-checkout a:hover {
	background-color:var(--dark-green)!important;
}




/* checkout */
.woocommerce-checkout .site-main, .woocommerce-cart .site-main{
	padding: 20px 0px;
} 

.woocommerce-checkout button#place_order {
    background-color: var(--primary-color);
    color: #ffffff; 
	width:200px;
	font-size:22px;
}

.woocommerce-checkout button#place_order:hover {
    background-color: var(--dark-green);
}

.woocommerce-checkout {background-color:var(--lightest-gray);}


/* Clear all table styles from WooCommerce checkout page */
.woocommerce-checkout table,
.woocommerce-checkout table th,
.woocommerce-checkout table td,
.woocommerce-checkout table tr {
    border: none !important;
    background: none !important;
    font-size: inherit !important;
    font-weight: normal !important;
}

.woocommerce-checkout h1 {
	text-align:center;
}

.woocommerce-checkout h3 {
	font-size:22px;
}


.woocommerce-checkout .col-1, .woocommerce-checkout .col-2, .woocommerce-checkout .woocommerce-info, #order_review {
	border:1px solid #ddd;
	background-color:white;
	padding:20px 30px 30px;
		border-radius: 10px;
	margin: 10px 0px;
}

#order_review_heading {text-align:center; padding-top:20px; font-size:32px;}



/* Remove all borders from input fields on the WooCommerce checkout page */
.woocommerce-checkout input,
.woocommerce-checkout select,
.woocommerce-checkout textarea, .select2-selection--single {
    border: 1px solid var(--medium-gray);
    box-shadow: none !important;
	background-color:var(--lightest-gray)!important;
	height:40px!important;
}

/* Change all input labels to red on the WooCommerce checkout page */
.woocommerce-checkout .col-1 label, .woocommerce-checkout .col-2 label {
    color: gray;
}
#ship-to-different-address span {
	color:#333333;
}

@media (max-width: 768px) {
	.woocommerce-checkout .col-1, .woocommerce-checkout .col-2, .woocommerce-checkout .woocommerce-info, #order_review {
		padding: 20px 10px 30px;
	}
}

/* Vertically center align the span inside its parent */
.select2-container--default .select2-selection--single .select2-selection__rendered {
    display: flex;
    align-items: center;
    height: 100%;
}

/* Vertically center align the input and span inside the label */
.woocommerce-checkout .woocommerce-form__label-for-checkbox {
    display: flex;
    align-items: center;
	gap:10px;
}

@media (min-width: 844px) {
.woocommerce .col2-set .col-1, .woocommerce .col2-set .col-2  {width:49%!important; }
}

/* Bold the text in the thead of #order_review */
#order_review thead th {
    font-weight: bold!important;
}


.woocommerce form.checkout_coupon, .woocommerce form.login, .woocommerce form.register {
	background-color:white;
	border-radius:10px;
		border:1px solid #ddd;
}

.woocommerce form.checkout_coupon, .woocommerce form.login, .woocommerce form.register {
	margin:20px 0px;
}




/* make sure tables stay insdie the container */

.product-description table {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; /* Enable smooth scrolling on iOS */
    border-collapse: collapse; /* Optional: if you want to collapse table borders */
}

.product-description table td,
.product-description table th {
    word-wrap: break-word; /* Optional: ensure long words break to fit within the cell */
}



/* brand archive alignment */


.term-brands .products .product-category h2 {
	display:none;
}
.term-brands .products .product-category img {
	max-width:100px;
	filter: invert(52%) sepia(11%) saturate(1000%) hue-rotate(160deg) brightness(80%) contrast(115%);
}

.term-brands ul.products li.product a {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
}

.term-brands ul.products li.product {
	height:120px;
}

/* post archive */


.archive-wrapper {
    background-color: var(--lightest-gray);
	padding-bottom:60px;
	padding-top:30px;
}

@media (max-width:768px) {
.archive-wrapper {
	padding-top:0px;
}	
} 


.archive .post-archive-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 20px;
    max-width: 1140px;
    margin: 0 auto;
    padding: 10px;
}

.archive .post-item {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 5px;
    overflow: hidden;
	padding-bottom:40px;
}

.archive .post-item:hover {
    border: 1px solid var(--lighter-primary);
}

.archive .post-thumbnail {
    width: 100%;
    height: 200px; 
    position: relative;
    overflow: hidden;
}

.archive .post-thumbnail img {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    object-fit: cover; 
}

.archive .post-content {
    padding: 20px 20px 0px;
}

.archive .post-title {
    font-size: 18px;
    margin: 0 0 10px;
}

.archive .post-date {
    font-size: 14px;
    color: #666;
}

.archive .post-item a {
    color: #1e1e1e !important;
}










/* single post */

.offer-area {
    display: flex;
    flex-wrap: wrap;
}

.product-offer {
    display: flex;
    align-items: center;
    margin:10px auto;
}

.single .single-product .product-price {
    font-size: 16px;
    color: #333;
    margin-right: 20px;
}
.coupon-code {
width:100%;
	text-align:center;
}

.buy-now-button {
    display: inline-block;
    padding: 10px 20px;
    font-size: 16px;
    color: #fff;
    background-color: var(--primary-color);
    border-radius: 50px;
    transition: background-color 0.3s ease;
margin-left:20px;	
}

.buy-now-button:hover {
    background-color: var(--orange);
	color: white;
}

.intro-wrapper {
	background-color:var(--lightest-gray);
	padding: 40px 0px;
}

.intro-section {
    display: flex;
    justify-content: space-between;
	max-width:1140px;
	margin: 0 auto;
	gap:50px;
}

.intro-left {
    flex: 1;
}

.intro-left h1 {
	font-size:28px;
	color: var(--primary-color);
	font-weight:600;
}

.intro-left p {
	letter-spacing:0.5px;
	line-height:32px;
}

.breadcrumbs {
    margin-bottom: 10px;
}

.acf-intro {
    margin-top: 10px;
}

.intro-right {
    flex: 0 0 500px;
}

.single .featured-image img {
    max-width: 100%;
    height: auto;
	border-radius:5px;
}

.content-sidebar-wrap {
    display: flex;
		max-width:1140px;
	margin: 0 auto;
	padding: 20px 0px;
}

.single .main-content {
    flex: 1;
    margin-right: 50px;
}

.single .main-content img {
	border-radius:5px;
	margin:5px 0px;
}

.single .main-content h2 {
	font-size:26px;
	padding-top:12px;
	text-decoration:underline;
}

.single .main-content h3 {
	font-size:22px;
	font-weight:500;
}

.single .main-content p, .main-content ul, .intro-left p {
	font-weight:300;
}

.single .post-content {
    margin-bottom: 50px;
}

.single .sidebar {
    flex: 0 0 350px;
}

.toc-container {
    position: sticky;
    top: 30px;
    padding: 25px 35px;
    border: 1px solid #e0e0e0;
    border-radius: 5px;
	margin-top:20px;
}

.toc-container h3 {
    padding-bottom: 20px;
    font-size: 1.2em;
	font-weight:600;
	border-bottom: 1px solid #e0e0e0;
}

.toc-container ul {
    list-style: none;
    padding: 10px 0px;
    margin: 0;
}

.toc-container li {
    margin-bottom: 15px;
}

.toc-container a {
    text-decoration: none;
    color: black;
}

.toc-container a:hover {
    text-decoration: underline;
}

/* Responsive Styles */
@media (max-width: 768px) {
	.intro-wrapper {
	padding: 0px;
}
	.single .featured-image img {
		border-radius:0px;
	}
	
    .intro-section {
        flex-direction: column-reverse;
			gap:0px;
    }

    .intro-left {
        padding: 0px 20px 30px;
    }
	
	.intro-left h1 {
		font-size:24;
	}

    .intro-right {
        flex: 1;
    }

    .content-sidebar-wrap {
        flex-direction: column-reverse;
			padding:0px 20px;
    }

   .single  .main-content {
        margin-right: 0;
    }
	
	.single .main-content h2{
		font-size:22px;
	}
	
	.single .main-content h3{
		font-size:20px;
	}

   .single  .sidebar {
        flex: 1;
        margin-bottom: 30px;
    }

    .toc-container {
        position: relative;
			margin:10px;
	
     }
}


/* fix  "woo block hand-packed products in mobile to be 50% instead on 100% */ 

.wp-block-handpicked-products {
	border: 1px solid #E5E8ED;
	border-radius: 10px;
	padding: 10px;
	margin-top:15px;
}

.wc-block-handpicked-products .wc-block-grid__product-image {
	max-width: 150px;
	margin: 0 auto;
}

.wc-block-handpicked-products .wp-block-button__link {
	font-size:16px;
}



@media (max-width: 480px) {
  .wc-block-grid.has-2-columns .wc-block-grid__products {
        display:flex!important;
    }
	 .wc-block-grid.has-2-columns .wc-block-grid__product {
        flex: 1 0 50%!important;
	}
}









/* product Archive, search, shop page */

.woocommerce-shop .site-content,  .tax-product_cat .site-content, .search-page-container, .vs-single-product {
	padding-top:10px;
}

.content-area {
	max-width:1140px;
	margin:0 auto;
	padding:0px 0px 70px;
}

.tax-product_cat h1, .woocommerce-shop h1, .search-page-container h1 {
	text-align:center;
	color:var(--primary-color);
	font-weight:600;
	padding: 20px 10px;
}

ul.products {
	display: flex;
    flex-wrap: wrap; 
}

ul.products li.product:nth-child(4n){
	margin-right:0px!important;
}


.search-page-container .search-form 
{
	padding-bottom:20px;
}


@media (max-width: 768px) {
 ul.products li.product, .woocommerce-shop {
        flex: 0 1 calc(50% - 10px)!important;
    }
	
    ul.products li.product:nth-child(2n) {
        margin-right: 0!important;
    }
	
	.tax-product_cat h1, .woocommerce-shop h1, .search-page-container h1, .woocommerce-shop h1 {
	font-size:28px;
}
	.content-area {
	padding:0px 10px 50px;
}	
}


/* product loop */

.woocommerce .products li {
	background-color:#f6f6f6;
	border: 1px solid #EDEDED;
}


.products li:hover {
	background-color:#E3E3E3;
}

ul.products li.product {
	margin:0 10px 10px 0!important;
	flex: 0 1 calc(25% - 10px);
}

ul.products li.product img {
	padding-top:30px;
}

.products a {
	color:#1E1E1E;
}

.products h2 {
	border-top: 1px solid #EDEDED;
	padding:20px 10px 10px!important;
}

ul.products li.product .price, .woocommerce .products .star-rating {
	margin:0px 10px 10px!important;
}

ul.products li.product .price {
	margin:0px 10px 20px!important;
}

/* labels display on archives */
.products .custom-label {
    position: absolute;
    top: 5px;
    right: 5px;
}






/* Top Bar Styles */
.top-bar-wrapper {
	background-color: var(--primary-color);
}

.top-bar {
	color:white;
    display: flex;
    justify-content: space-between;
    font-size: 14px;
	padding:12px 0px;
	max-width:1140px;
	margin:0 auto;
}

.top-bar-wrapper a{color:white;}

/* Site Message Bar */
.site-message {
    background-color: var(--dark-primary);
    color: white;
    padding: 0.5em 0;
	font-size:14px;
	font-weight:600;
	display:flex;
	align-items:center;
	justify-content:center;
	letter-spacing:1px;
}

.site-message a {
	color:white
}
.site-message a:hover {
	color:white;
}

@media (max-width: 768px)
{
	.top-bar {
		font-size:12px;
		padding:10px 10px;
	}
	.site-message {
		letter-spacing: 0.5px;
	}
}

/* Header Styles */
header {
    position: relative;
    z-index: 1001;
	background-color:white
}

.top-navigation button {
	padding:0px;
}

.top-navigation {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 15px 0;
    max-width: 1140px;
    margin: 0 auto;
    position: relative; /* Added to position .site-branding absolutely */
}

.site-branding {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

.site-logo {
    width: 200px;
    display: block;
}

.main-navigation {
    display: flex;
    align-items: center;
}

#slide-menu-toggle {
    background: none;
    border: none;
    font-size: 1.5em;
    cursor: pointer;
    color: var(--primary-color);
}



.search-container {
    align-items: center;
    margin-left: auto;
}

#search-toggle {
    background: none;
    border: none;
    font-size: 1.5em;
    cursor: pointer;
    color: var(--primary-color);
}

#search-toggle:hover, #slide-menu-toggle:hover, .cart-link:hover {
    color: var(--darker-primary);
}

.cart-container {
    display: flex;
    align-items: center;
    padding: 0 20px;
}

.cart-link {
    font-size: 1.5em;
    color: var(--primary-color);
    text-decoration: none;
    position: relative;
}


.cart-count {
    background-color: #e74c3c;
    color: #fff;
    border-radius: 50%;
    padding: 3px;
    font-size: 12px;
    position: absolute;
    top: -5px;
    right: -8px;
    min-width: 17px; /* Ensure it has a minimum width */
    height: 17px; /* Ensure it has a fixed height */
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1; /* Ensure text is centered vertically */
}

@media (max-width: 768px) {
    .site-logo {
        width: 140px;
    }
    .top-navigation {
        padding: 15px 10px;
    }
    .cart-container {
        padding: 0px 10px;
    }
    #slide-menu-toggle, #search-toggle, .cart-link {
        font-size: 16px;
    }
	.top-navigation button {
	padding:0px 10px;
}
}







/* Horizontal Scroll Menu */
.horizontal-scroll-menu-wrapper {
	background-color: var(--lightest-gray);
	    border-bottom: 1px solid #ccc;
}


.horizontal-scroll-menu {
	max-width:1140px;
	margin: 0 auto;
    overflow-x: auto;
    white-space: nowrap;
    padding: 5px 0;
    width: 100%;
    -ms-overflow-style: none;  /* Internet Explorer 10+ */
    scrollbar-width: none;  /* Firefox */
}

.horizontal-scroll-menu::-webkit-scrollbar {
    display: none;  /* Safari and Chrome */
}

.horizontal-scroll-menu ul {
    display: inline-flex;
    padding: 0;
    margin: 0;
    list-style: none;
    width: 100%;
    justify-content: space-between;
}

.horizontal-scroll-menu li {
    display: inline-block;
	padding:0px 10px;
}

.horizontal-scroll-menu a {
    text-decoration: none;
    color: #333;
    padding: 5px 0px;
    display: inline-block;
}

.horizontal-scroll-menu a:hover {
    color: var(--primary-color);
}

@media (max-width: 768px) {
	.horizontal-scroll-menu li {font-size:14px;
	}
}

/* Slide Menu */
#slide-menu {
    list-style: none;
    margin: 0;
    padding: 50px 20px;
    position: fixed;
    top: 0;
    left: -300px;
    width: 300px;
    height: 100%;
    background-color: #333;
    display: flex;
    flex-direction: column;
    transition: left 0.3s ease;
    z-index: 1003; 
	overflow-y: auto;
}

#slide-menu.open {
    left: 0;
}


body.menu-open {
    overflow: hidden;/* Prevent body from scrolling when the menu is open */
}

#slide-menu li {
    margin: 1em 0;
    position: relative;

}

#slide-menu ul {
	list-style:none;
	padding:0px; 
}

#slide-menu a {
    text-decoration: none;
    color: #d3d3d3;
    font-size: 1.2em;
}
#slide-menu a:hover {
    text-decoration: none;
    color: white;
    font-size: 1.2em;
}

#slide-menu .menu-item-has-children > a {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

#slide-menu .menu-item-has-children > a .chevron {
    margin-left: auto;
    font-size: 0.8em;
    transition: transform 0.3s ease;
}

#slide-menu .sub-menu {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height 0.3s ease, opacity 0.3s ease;
    list-style: none;
    padding: 10;
    margin: 0.5em 0 0;
    width: 100%;
}

#slide-menu .sub-menu li {
    margin: 0;
	padding: 5px 20px
}

#slide-menu .menu-item-has-children.open > .sub-menu {
    max-height: 500px; /* Adjust as necessary */
    opacity: 1;
}

#slide-menu .menu-item-has-children.open > a .chevron {
    transform: rotate(180deg);
}

#menu-close {
    background: none;
    border: none;
    font-size: 1.5em;
    cursor: pointer;
    color: #fff;
}

/* Search Bar */
#search-bar {
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: max-height 0.5s ease, opacity 0.5s ease;
    background: #fff;
    border-bottom: 1px solid #ccc;
    padding: 0 1em;
    box-sizing: border-box;
    width: 100%;
    display: none;
}

#search-bar.active {
    max-height: 100px; 
    opacity: 1;
    padding: 10px; 
    display: block;
	
}

.search-form {
    display: flex;
    justify-content: center;
    width: 100%;
}
.search-form label {
}

.search-submit {
background: var(--primary-color);
border: none;
cursor: pointer;
color: white;
}

.search-submit:hover {
background: var(--orange);
border: none;
cursor: pointer;
color: white;
}

/* Overlay */
#overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0, 0, 0, 0.5);
display: none;
z-index: 1002;
}

#overlay.active {
display: block;
}













/*cart adjustments*/
.product-subtotal {
	display:none;
}
@media (max-width:768px) {
	.product-subtotal {
	display:none!important;
}
}

/* Global styles */
a { color: var(--blue); }
.boxed-container {
	max-width:1140px;
	margin:0 auto;
	padding:0px 10px;
}



/* Clear padding from menu on small screens */
@media (max-width: 575px) {
    .site-header:not(.dynamic-header) {
        padding-inline-start: 0 !important;
        padding-inline-end: 0 !important;
    }
}


/* Prevent zoom on input focus on mobile devices */
input[type="text"],
input[type="search"],
input[type="tel"],
input[type="url"],
input[type="email"],
input[type="number"],
input[type="password"],
textarea {
    font-size: 16px;
}





/* global elements */
.rank-math-breadcrumb, .rank-math-breadcrumb a{
	color: var(--primary-color);
	font-size:14px;
}







/* Single product styles */
.single-product h1 {
	font-size: 22px;
	font-weight: 600;
	padding-bottom:5px;
}

.single-product .product-main-content-wrapper h2 {
	font-size: 22px;
	font-weight: 600;
	line-height: 28px;
	text-decoration:underline;
}

.single-product .product-main-content-wrapper h3 {
	font-size: 20px;
	font-weight: 500;
	line-height: 28px;
}

.price {
    color: unset !important;
    font-weight: 700;
}

.woocommerce-variation {
	padding-bottom: 10px;
}

.product-image {
	padding:20px 0px;
}

@media (max-width: 768px) {
	.product-image {
	width:80%;
	margin: 0 auto;
		padding:5px 0px;
}
	.single-product h1 {
margin-top:0px;
}
}

.product-image img, .woocommerce ul.products li.product a img {
	mix-blend-mode:darken!important;
}

.product-brand {
	text-transform: uppercase;
	font-weight:400;
	font-size:0.9em;
}

.product-brand a{
	text-decoration:underline;
}

.woocommerce div.product form.cart .variations {
    margin-bottom: 20px;
}

/* Style the WooCommerce Add to Cart button only if it's a child of .add-to-cart */
.add-to-cart .button,
.add-to-cart a.button,
.add-to-cart button.button,
.add-to-cart input.button {
    background-color: var(--orange) !important;
    color: #fff;
    border: none;
    padding: 14px 28px;
    font-size: 16px;
    text-transform: uppercase;
    border-radius: 4px;
    transition: background-color 0.3s ease;
    height: 44px;
    line-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.add-to-cart .button:hover,
.add-to-cart a.button:hover,
.add-to-cart button.button:hover,
.add-to-cart input.button:hover {
    background-color: var(--light-orange) !important;
}

/* Match the border of the quantity input and align its height */
.add-to-cart .quantity input.qty {
    border: 1px solid var(--light-gray);
    border-radius: 4px;
    padding: 0 5px;
    height: 44px;
    line-height: 44px;
    text-align: center;
    box-sizing: border-box;
}

/* end add to cart */

.woocommerce div.product div.images {
    width: 98% !important;
}

.product-description, .product-highlights, .product-in-the-box, .product-specs {
    background-color: #ffffff !important;
    width: 100%;
    padding: 30px 40px;
    box-sizing: border-box;
    margin-top: 20px;
	border-radius:8px;
}

.vs-single-product {
    background-color: #f5f5f7;
}

.product-main {
    display: flex;
    flex-wrap: wrap;
}

.product-left {
    width: 50%;
    box-sizing: border-box;
    padding: 30px 20px;
}

.product-right {
  width: 50%;
    box-sizing: border-box;  
	padding: 40px;
	border-radius:8px;
	border: 1px solid #dedede;
}

.product-right .label, .product-right .value {
    background-color:unset;
}

.product-right .variations {
	background-color:#f5f5f7;
	border-radius:12px;
}

@media (max-width: 768px) {
    .product-left,
    .product-right {
        width: 100%;
    }
	 .product-left {
        padding:0px;;
    }
	 .product-right {
        padding:30px 15px;
    }
	.product-description, .product-highlights, .product-in-the-box, .product-specs {
    padding: 30px 15px;
}
}


.product-right {
    background-color: white;
}

.offer-messages .discontinued, .offer-messages .preorder {
    line-height: 1.5em;
	text-decoration:underline;
}

.offer-messages div {
    margin: 15px 0px;
}

.product-title {
    margin-bottom: 10px;
}

.product-price p {
    margin-bottom: 0px;
}

.promo-offer {
	background-color:#f5f5f7;
    padding: 10px 20px;
    border-radius: 12px;
    margin: 10px 0px;
}

/* Clear fix for post content images */
.product-description img {
    display: block;
    clear: both !important;
    margin: 20px auto;
    max-width: 100%;
    height: auto;
}

/* Upsells */
.upsell-products {
    margin-top: 20px;
}

.upsell-products h3 {
    font-size: 1.1em;
    margin-bottom: 15px;
}

.upsell-products-list {
    list-style: none;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.upsell-product-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.upsell-product-thumbnail img {
    width: 60px;
    height: auto;
    margin-right: 10px;
}

.upsell-product-info {
    flex-grow: 1;
    text-align: left;
}

.upsell-product-title {
    display: block;
		color: #545454!important;
	font-weight:300;

}

.upsell-product-price {
    color: #545454!important;
	font-weight:300;
}

.upsell-add-to-cart {
    background-color: #f6f6f6!important;
	border: 1px solid #E0E0E0!important;
    color: #fff;
    padding: 5px 10px;
    text-align: center;
    text-decoration: none;
    border-radius: 3px;
    white-space: nowrap;
	font-weight:600!important;
	font-size:14px!important;
}

@media (max-width:768px) {
	.upsell-add-to-cart {
		font-size:12px!important;
	}
}

.upsell-add-to-cart:hover {
    background-color: var(--primary-color)!important;
	color:white!important;
}

.upsell-product-link {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: inherit;
}

/* General styling for swatches */
.swatch-wrapper {
    display: inline-block;
    margin: 5px;
    border: 1px solid #ccc;
    border-radius: 50%;
    overflow: hidden;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    vertical-align: middle;
}

.swatch-wrapper .swatch-anchor {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: #f4f4f4;
    text-decoration: none;
    border: none;
}

.swatch-wrapper .swatch-anchor:hover {
    border: 1px solid #0071a1;
}

.swatch-wrapper .swatch-anchor.selected {
    border: 1px solid #0071a1;
}

.swatch-wrapper img {border-radius:50px;}

/* Swatches gradient */
.swatch-wrapper .swatch-anchor {
    background: linear-gradient(120deg, #f4f4f4 0%, rgba(0, 0, 0, 0) 50%);
}

/* Adjust Highlights and In the Box sections */
.highlights-content,
.in-the-box-content {
    display: flex;
    align-items: center;
}

.highlights-text,
.in-the-box-text {
    flex: 1;
    text-align: left;
}

.highlights-image,
.in-the-box-image {
    max-width: 400px !important;
    width: 100%;
    height: auto;
    margin-left: auto;
    margin-right: auto;
}

.product-highlights h2,
.product-in-the-box h2 {
    margin-bottom: 10px;
}

@media (max-width: 768px) {
    .highlights-content,
    .in-the-box-content {
        flex-wrap: wrap;
    }
    .highlights-image,
    .in-the-box-image {
        max-width: 100% !important;
        margin-left: 0;
        margin-top: 20px;
        margin-right: 0;
        float: none;
    }
    .highlights-text,
    .in-the-box-text {
        order: 1;
        width: 100%;
    }
    .highlights-image-container,
    .in-the-box-image-container {
        order: 2;
        width: 100% !important;
        text-align: center;
    }
}

/* Styling for the custom label */
.custom-label {
    background-color: var(--primary-color);
    color: #fff;
    padding: 4px 25px;
    border-radius: 25px;
    display: inline-block;
    font-size: 0.9em;
}

/* Ensure the brand and label are aligned correctly */
.product-brand-label {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
}

/* Specs table */

.product-specs table {
    max-width: 468px;
    border-collapse: collapse;
    margin-bottom: 20px;
}

.product-specs th,
.product-specs td {
    padding: 10px;
    text-align: left;
}

.product-specs td {
    border-bottom: 1px solid #ddd;
}

.product-specs tr:last-child td {
    border-bottom: none;
}







/*
 * SITE FOOTER
 *  */

.site-footer {
    background-color: var(--primary-color);
    color: white;
    padding: 30px 0 20px;
    max-width: 100%!important;
}

.footer-content {
    max-width: 1140px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.site-footer a:hover {
	color:var(--orange);
}

.footer-left {
    flex-basis: 40%;
	padding-top:10px;
}

.footer-logo img {
    max-width: 120px;
    margin-bottom: 5px;
}

.footer-description {
    font-size: 14px;
    line-height: 32px;
		font-weight:300;
}

.footer-menu {
    display: flex;
    flex-basis: 50%;
}

.footer-column {
    flex-basis: 33%;
	line-height:32px;
}

.footer-column h4 {
    font-size: 16px;
    margin-bottom: 5px;
	font-weight:600;
}

.footer-column ul {
    list-style: none;
    padding: 0;
}

.footer-column ul li {
}

.footer-column ul li a {
    color: white;
    text-decoration: none;
    font-size: 14px;
	font-weight:300;
}

.footer-bottom {
    max-width: 1140px;
    margin: 0px auto;
    padding-top: 20px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.footer-bottom p {
    font-size: 14px;
}

.footer-bottom ul{
	list-style: none;
	display:flex;
	 justify-content: center;
	padding:0px;
}

.footer-links li {
    margin: 0px 10px;
}

.footer-links li a {
    color: white;
    text-decoration: none;
    font-size: 14px;
}

@media (max-width: 768px) {
    .footer-left, .footer-menu {
        flex-basis: 100%;
    }
	.footer-bottom {
		display:block;
	}
	.footer-content {
		padding:0px 10px;
	}
}




/*Brand Filters*/
.brand-filter-form {    float: left;
    width: 180px;
    background-color: #ffffff !important;
    }

.term-brands .brand-filter-form {
	display:none; /*hide on 'brands' archive */
}











/* General styling for the select dropdown */
.brand-filter-form,
.woocommerce-ordering {
    position: relative; /* Position relative for the container */
    display: inline-block; /* Inline block for the container */
    width: 100%;
    max-width: 48%; /* Maximum width */
}

.brand-filter-form select,
.woocommerce-ordering select {
    appearance: none; /* Remove default styling */
    -webkit-appearance: none; /* Remove default styling for Safari */
    -moz-appearance: none; /* Remove default styling for Firefox */
    background-color: white; /* Background color */
    border: 1px solid #ccc; /* Border style */
    border-radius: 4px; /* Rounded corners */
    padding: 10px; /* Padding inside the select box */
    width: 100%; /* Full width */
    font-size: 16px; /* Font size */
    cursor: pointer; /* Pointer cursor */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* Slight shadow */
    padding-right: 40px; /* Add space for the chevron */
	color:black;
}

/* Remove default arrow */
.brand-filter-form select::-ms-expand,
.woocommerce-ordering select::-ms-expand {
    display: none; /* For Internet Explorer */
}

/* Style the dropdown chevron */
.brand-filter-form::after,
.woocommerce-ordering::after {
    content: '\2304'; /* Unicode character for chevron (⌄) */
    position: absolute; /* Position it absolutely */
    right: 15px; /* Position from the right */
    top: 40%; /* Center vertically */
    transform: translateY(-50%); /* Center vertically */
    font-size: 20px; /* Adjust size to match the example */
    color: #333; /* Adjust color to match the example */
    pointer-events: none; /* Allow clicks to pass through */
}

/* Ensure the chevron is visible */
.brand-filter-form select,
.woocommerce-ordering select {
    padding-right: 40px; /* Add space for the chevron */
}

/* Hover and focus styles */
.brand-filter-form select:hover,
.brand-filter-form select:focus,
.woocommerce-ordering select:hover,
.woocommerce-ordering select:focus {
    border-color: #aaa; /* Darker border on hover */
    outline: none; /* Remove default focus outline */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); /* Slightly stronger shadow on focus */
}




/*homepage*/
    .homepage-section {
			padding-top: 30px;
    }


.title-wrapper {
background-color:var(--primary-color);
	padding-top: 20px;
}

.tagline {color:white;
font-weight:200;
	letter-spacing:1px;
	font-size:18px;
	
}

    .home-title {
      max-width:1140px;
			margin: 0 auto;
			padding:20px;
    }


   .homepage-content h1 {
        font-size: 40px;
        margin: 0;
		 color:white;
			font-weight:200;
			padding: 20px 0px 10px 0px;
			letter-spacing:0.8px;
    }

    .homepage-content h1 span {
			font-weight:800;
			  white-space: nowrap;
    }

.products-wrapper {
	background-color: var(--lighter-primary);
	padding: 10px 10px;
	margin-bottom:20px;
}

.featured-products {
	      max-width:1140px;
			margin: 0 auto;
}


.featured-products .products-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 2px;
    justify-content: center;
}


.featured-products .product {
    text-align: center;
    padding: 40px 0px;
}

.featured-products .product:hover {
	border-radius: 20px;
	outline: 1px solid var(--primary-color);
	
}

.featured-products .product h2 {
	font-size:18px;
	font-weight:800;
	color:white;
}


    .homepage-content h3 {
        font-size:16px;
			font-weight:500;
			color:black;
			margin-bottom:10px;
    }
    .homepage-content .price {
        font-size:16px;
			font-weight:400;
			color:black;
			margin-bottom:10px;
    }


.homepage-content .categories-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}




@media screen and (max-width: 768px) {
    .homepage-content .categories-grid {
        grid-template-columns: 1fr;
    
			}
	.featured-products .products-grid {
    grid-template-columns: repeat(2, 1fr);  
}
	.title-wrapper {padding-top: 10px;}
		   .homepage-content h1 {
        font-size: 28px;
			padding: 10px 0px 10px 0px;
			letter-spacing:0.8px;
    }

    .homepage-content h1 span {
			font-weight:800;
			        font-size: 40px;

			  white-space: nowrap;
    }
	.featured-products .product {
    padding: 20px 0px;
}
	}





/*brand cards*/
.brand-cards {
	max-width:1140px;
	margin:0 auto;
   display: grid;
    grid-template-columns: repeat(3, 1fr); 
    gap: 20px; 
}

.brand-card {
    position: relative;
    width: 100%;
    overflow: hidden;
    border-radius: 5px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

@media (max-width: 768px) {
	.brand-cards {
    grid-template-columns: repeat(1, 1fr);
		gap:0px;
		background-color:var(--lightest-gray);
}
	.brand-card {
		border-radius:0px;
	}
}

.brand-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.brand-card-content {
    position: absolute;
    top: 20px;
    left: 20px;
    right: 20px;
    color: white;
    text-align: left;
}

.brand-card h2 {
    font-size: 30px;
    margin: 0 0 10px;
	text-transform:uppercase;
	font-weight:700;
}

.brand-card p {
    font-size: 16px;
    margin: 0 0 20px;
}

.brand-card-button {
    display: inline-block;
    padding: 10px 20px;
    background-color: white;
    color: var(--primary-color);
    text-decoration: none;
    border-radius: 9999px; /* Pill-shaped border radius */
    font-weight: bold;
    text-align: center;
}

 







.latest-products-warapper {
	background-color: var(--lightest-gray);
	padding:30px 0px;
}

.latest-products-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr); 
    gap: 20px; 
    justify-content: center;
}

@media (max-width: 768px) {
	.latest-products-grid {
    grid-template-columns: repeat(2, 1fr);
}
}

.latest-products-grid .product {
    text-align: center;
    transition: transform 0.3s ease;
}







.brands-wrapper {
	background-color:var(--lightest-gray);
	padding:30px 0px 60px;
}

.our-brands .brands-subcategories-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 10px;
}

@media (max-width: 768px) {
	.our-brands .brands-subcategories-grid {
    grid-template-columns: repeat(2, 1fr);
}
}

.our-brands .subcategory {
    display: flex;
    justify-content: center;
    align-items: center;
	border: 1px solid var(--medium-gray);
	border-radius:10px;
	height: 150px;
}


.our-brands .subcategory img {
    width: 100px;
	filter: invert(52%) sepia(11%) saturate(1000%) hue-rotate(160deg) brightness(80%) contrast(115%);
}
	






/* latest reviews grid for homepage and blogpage */

.latest-reviews-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px; 
    padding-left:0px;
}

@media (max-width: 768px) {
.latest-reviews-grid {
    grid-template-columns: repeat(1, 1fr);
}
}

.review-post {
    display: flex;
    border: 1px solid #ddd;
    border-radius: 10px;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
    background-color: #fff;
    padding: 20px;
}

.review-post a {
    color: inherit;
    display: flex;
    align-items: center;
}

.review-post-thumbnail {
    flex-shrink: 0;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
    margin-right: 20px;
}

.review-post-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.review-post-meta {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

.review-post-meta h2 {
    font-size: 16px;
    margin: 0 0 10px;
}

.review-post-score {
    display: flex;
    align-items: center;
    font-size: 16px;
    color: #ff9800;
    margin: 0 0 10px;
}

.review-post-score .stars {
    display: flex;
    margin-left: 5px;
}

.review-post-score .star {
    font-size: 14px;
    margin-right: 1px;
}

.review-post-date {
    font-size: 14px;
    color: #999;
}








/* remove extra paddings on /sale/ page */
.page-id-2531 .vs-simple-page {padding: 20px 0px 50px;}









/*cart*/
.woocommerce-cart {background-color:var(--lightest-gray);}


.woocommerce-cart-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
			align-items: flex-start;
}
 .woocommerce-cart-totals {
    flex: 1 1 40%; 
    box-sizing: border-box; 
}

.woocommerce-cart-content {
    flex: 2 1 60%; 
    box-sizing: border-box; 
}

.woocommerce-cart-form table.shop_table {
    width: 100%; /* Ensure the cart table takes full width */
}







/* lists fix */
.custom-single-post li {
	padding-bottom:10px;

}










/*Spectrum gradient*/
.SpectrumGradient
{
    height:10px;
    width:100%;
    top:0px;left:0px;
    background: linear-gradient(130deg, #FC7818, #E8D638, #3AFD36);
    background-size: 200% 200%;

    -webkit-animation: Animation 5s ease infinite;
    -moz-animation: Animation 5s ease infinite;
    animation: Animation 5.5s ease infinite;
}

@-webkit-keyframes Animation {
    0%{background-position:10% 0%}
    50%{background-position:91% 100%}
    100%{background-position:10% 0%}
}
@-moz-keyframes Animation {
    0%{background-position:10% 0%}
    50%{background-position:91% 100%}
    100%{background-position:10% 0%}
}
@keyframes Animation { 
    0%{background-position:10% 0%}
    50%{background-position:91% 100%}
    100%{background-position:10% 0%}
}

.SpectrumGradient2{
	height:3px;
    background: linear-gradient(130deg, #FC7818, #E8D638, #3AFD36);
    background-size: 100% 100%;opacity: .8;}
@media screen and (max-width:500px){
.post-content .wp-block-image, .post-content figure, .post-content figure.alignright, .post-content figure.alignleft {width:100%; max-width:100% !important;float:none !important;margin:15px 0 10px 0;}
}




