.elementor-705 .elementor-element.elementor-element-d6ce01b{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-705 .elementor-element.elementor-element-68596c2{width:100%;max-width:100%;padding:0px 0px 0px 0px;}.elementor-705 .elementor-element.elementor-element-68596c2.elementor-element{--align-self:center;}.elementor-705 .elementor-element.elementor-element-2578d8a{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:2%;--padding-bottom:5%;--padding-left:0%;--padding-right:0%;}.elementor-705 .elementor-element.elementor-element-4dbce2d{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-705 .elementor-element.elementor-element-cda544e .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:24px;font-weight:600;color:#6827D1;}.elementor-widget-divider{--divider-color:var( --e-global-color-secondary );}.elementor-widget-divider .elementor-divider__text{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-divider.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon{color:var( --e-global-color-secondary );border-color:var( --e-global-color-secondary );}.elementor-widget-divider.elementor-view-framed .elementor-icon, .elementor-widget-divider.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-secondary );}.elementor-705 .elementor-element.elementor-element-6ef0316{--divider-border-style:solid;--divider-color:#DDDDDD;--divider-border-width:1px;}.elementor-705 .elementor-element.elementor-element-6ef0316 .elementor-divider-separator{width:77%;margin:0 auto;margin-left:0;}.elementor-705 .elementor-element.elementor-element-6ef0316 .elementor-divider{text-align:left;padding-block-start:2px;padding-block-end:2px;}.elementor-widget-loop-grid .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-loop-grid .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-loop-grid .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-705 .elementor-element.elementor-element-72b20c0{--grid-columns:1;--grid-row-gap:15px;--grid-column-gap:0px;}.elementor-705 .elementor-element.elementor-element-30a208b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-705 .elementor-element.elementor-element-51a1f18 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:24px;font-weight:600;color:var( --e-global-color-secondary );}.elementor-705 .elementor-element.elementor-element-7f975be{--e-filter-direction:row;--e-filter-white-space:nowrap;--e-filter-justify-content:flex-start;--e-filter-item-width:initial;--e-filter-item-flex-grow:0;--e-filter-wrap:nowrap;--e-filter-overflow-x:scroll;--e-filter-normal-text-color:var( --e-global-color-accent );--e-filter-hover-text-color:var( --e-global-color-3162c9a );--e-filter-active-text-color:var( --e-global-color-3162c9a );--e-filter-item-border-radius:10px 10px 10px 10px;}.elementor-705 .elementor-element.elementor-element-7f975be .e-filter-item:not( [aria-pressed=true] ):not( :hover ){background-color:var( --e-global-color-3162c9a );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-accent );}.elementor-705 .elementor-element.elementor-element-7f975be .e-filter-item:hover:not( [aria-pressed=true] ){background-color:var( --e-global-color-accent );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-accent );}.elementor-705 .elementor-element.elementor-element-7f975be .e-filter-item[aria-pressed="true"]{background-color:var( --e-global-color-accent );border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-accent );}.elementor-705 .elementor-element.elementor-element-ef9b243{margin:22px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-705 .elementor-element.elementor-element-ef9b243 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-size:24px;font-weight:600;color:var( --e-global-color-secondary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-705 .elementor-element.elementor-element-f08deb9{margin:-14px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;font-family:"Roboto", Sans-serif;font-size:14px;font-weight:400;}.elementor-705 .elementor-element.elementor-element-185c034{--grid-columns:3;}@media(min-width:768px){.elementor-705 .elementor-element.elementor-element-2578d8a{--content-width:1340px;}.elementor-705 .elementor-element.elementor-element-4dbce2d{--width:25%;}.elementor-705 .elementor-element.elementor-element-30a208b{--width:75%;}}@media(max-width:1024px){.elementor-705 .elementor-element.elementor-element-72b20c0{--grid-columns:2;}.elementor-705 .elementor-element.elementor-element-185c034{--grid-columns:2;}}@media(max-width:767px){.elementor-705 .elementor-element.elementor-element-72b20c0{--grid-columns:1;}.elementor-705 .elementor-element.elementor-element-30a208b{--margin-top:20px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:10px;--padding-right:10px;}.elementor-705 .elementor-element.elementor-element-51a1f18{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-705 .elementor-element.elementor-element-7f975be{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-705 .elementor-element.elementor-element-ef9b243{margin:5px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-705 .elementor-element.elementor-element-f08deb9{margin:-14px 0px calc(var(--kit-widget-spacing, 0px) + -14px) 0px;padding:0px 0px 0px 0px;}.elementor-705 .elementor-element.elementor-element-185c034{--grid-columns:2;--grid-column-gap:9px;}.elementor-705 .elementor-element.elementor-element-185c034 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}}/* Start custom CSS for html, class: .elementor-element-68596c2 */:root{   
  --marquee-height: 60px;      /* bar height */   
  --marquee-radius: 0px;       /* no rounding */   
  --marquee-bg: #3C1361;       /* dark purple */   
  --marquee-text: #ffffff;        
  --marquee-icon-bg: #ffffff;  /* circle stays white */     
  --marquee-icon-fg: #3C1361;  /* checkmark becomes purple */   
  --marquee-gap: 70px;            
  --marquee-speed: 28s;           
  --edge-fade: 120px;  
  --marquee-distance: 100%;    /* JS will override with exact px width */
}  

.feature-marquee{   
  background: var(--marquee-bg);   
  border-radius: var(--marquee-radius);
  height: var(--marquee-height);   
  display: flex;   
  align-items: center;   
  padding-inline: 16px;   
  width: 100%;   
  margin: 0;
}  

.feature-marquee__mask{   
  position: relative;   
  overflow: hidden;   
  width: 100%;   
  height: 100%;
  -webkit-mask-image: linear-gradient(     
    to right, transparent 0, #000 var(--edge-fade),
    #000 calc(100% - var(--edge-fade)), transparent 100%
  );   
  mask-image: linear-gradient(     
    to right, transparent 0, #000 var(--edge-fade),
    #000 calc(100% - var(--edge-fade)), transparent 100%
  ); 
}  

.feature-marquee__track{   
  display: flex;   
  gap: var(--marquee-gap);   
  align-items: center;   
  white-space: nowrap;   
  width: max-content;   
  animation: marquee-left var(--marquee-speed) linear infinite;   
  will-change: transform;    
  padding-top: 15px; 
}  

.feature-marquee:hover .feature-marquee__track{   
  animation-play-state: paused; 
}  

/* Each item */ 
.feature-item{   
  display: inline-flex;   
  align-items: center;   
  gap: 10px;   
  color: var(--marquee-text);   
  font-weight: 600;   
  line-height: 1; 
}  

.fi__icon{   
  display: inline-grid;   
  place-items: center;   
  width: 28px;   
  height: 28px;   
  border-radius: 999px;   
  background: var(--marquee-icon-bg);
  color: var(--marquee-icon-fg) !important;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI",
               Roboto, "Helvetica Neue", Arial, "Noto Sans",
               "Liberation Sans", sans-serif !important;
}

.fi__icon svg,
.fi__icon i {
  color: var(--marquee-icon-fg) !important;
  fill: var(--marquee-icon-fg) !important;
}

/* Animation: slide exactly one pattern-width left */
@keyframes marquee-left{   
  from { transform: translateX(0); }   
  to   { transform: translateX(calc(-1 * var(--marquee-distance))); } 
}  

/* Reduced motion */ 
@media (prefers-reduced-motion: reduce){   
  .feature-marquee__track{ animation: none; } 
}  

/* Mobile tweaks */ 
@media (max-width: 768px){   
  :root{     
    --marquee-height: 46px;     
    --marquee-gap: 46px;     
    --edge-fade: 60px;   
  }   
  .fi__icon{ width: 24px; height: 24px; font-size: 14px; }   
  .feature-item{ font-size: 14px; }   
  .feature-marquee__track{ padding-top: 10px; } 
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-72b20c0 *//*
 * Custom CSS to force the Loop Grid (elementor-element-72b20c0)
 * to always display in a single vertical column, overriding all
 * responsive settings (mobile, tablet, desktop).
 */

/* 1. Target the main grid container and force it to have only one column */
.elementor-element-72b20c0 .elementor-loop-container.elementor-grid {
    /* Overrides grid-template-columns to always be 1fr (one column) */
    grid-template-columns: 1fr !important;
    /* Ensures the row gap setting is preserved but the columns are removed */
    display: grid !important;
}

/* 2. Ensure each individual loop item takes the full width and behaves like a block */
.elementor-element-72b20c0 .elementor-loop-container > .e-loop-item {
    width: 100% !important;
    display: block !important;
}/* End custom CSS */
/* Start custom CSS for taxonomy-filter, class: .elementor-element-7f975be *//* ===============================
   FIXED FULL-WIDTH FILTER SCROLLBAR (SHOWS ON MOBILE)
================================ */
.elementor-widget-taxonomy-filter .e-filter {
  display: flex !important;
  flex-wrap: nowrap;
  align-items: center;
  gap: 0.6rem;
  overflow-x: auto !important;
  overflow-y: hidden;
  padding: 0.5rem 0.25rem;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  scrollbar-color: #6827d1 #e5e5e5;
  width: 100%;
  max-width: 100%;
  white-space: nowrap;
}

/* Prevent shrinking */
.elementor-widget-taxonomy-filter .e-filter-item {
  flex: 0 0 auto;
}

/* ===== Scrollbar Styling ===== */
.elementor-widget-taxonomy-filter .e-filter::-webkit-scrollbar {
  height: 10px !important;  /* now stays visible on mobile */
}

.elementor-widget-taxonomy-filter .e-filter::-webkit-scrollbar-track {
  background: #e5e5e5;
  border-radius: 10px;
}

.elementor-widget-taxonomy-filter .e-filter::-webkit-scrollbar-thumb {
  background: #666;
  border-radius: 10px;
  border: 2px solid #e5e5e5;
}

.elementor-widget-taxonomy-filter .e-filter::-webkit-scrollbar-thumb:hover {
  background: #444;
}

.elementor-widget-taxonomy-filter .e-filter::-webkit-scrollbar-corner {
  background: transparent;
}
.elementor-widget-taxonomy-filter .e-filter {
  overscroll-behavior-x: contain;
}
.elementor-widget-taxonomy-filter .e-filter {
  padding-bottom: 14px; /* makes the scrollbar fully appear */
}/* End custom CSS */
/* Start custom CSS for loop-grid, class: .elementor-element-185c034 *//* ===== LabGradePeptides: Product archive grid fixes (CLEAN) ===== */



/* 1) Make the Loop Grid use a real CSS Grid that cannot overflow */

.elementor-widget-loop-grid .elementor-loop-container {

  display: grid !important;

  grid-template-columns: repeat(3, minmax(0, 1fr));  /* Desktop: 3-wide (adjust if you want 4) */

  gap: 24px; /* Column/row gap */

  align-items: stretch;

}



/* Tablet breakpoint: 2 columns */

@media (max-width: 1024px) {

  .elementor-widget-loop-grid .elementor-loop-container {

    grid-template-columns: repeat(2, minmax(0, 1fr));

  }

}



/* Mobile breakpoint: keep 2 columns */

@media (max-width: 767px) {

  .elementor-widget-loop-grid .elementor-loop-container {

    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 16px;

  }

}



/* 2) Prevent any child from forcing overflow */

.elementor-widget-loop-grid .elementor-loop-container * {

  max-width: 100%;

  box-sizing: border-box;

}



/* 3) Kill min-widths inside the Loop Item */

.elementor-widget-loop-grid .e-loop-item,

.elementor-widget-loop-grid .e-loop-item .e-con,

.elementor-widget-loop-grid .e-loop-item .elementor-widget,

.elementor-widget-loop-grid .e-loop-item .product,

.elementor-widget-loop-grid .e-loop-item .woocommerce-LoopProduct-link {

  min-width: 0 !important;

  width: 100%;

}



/* 4) Images should never expand the card */

.elementor-widget-loop-grid .e-loop-item img {

  display: block;

  width: 100%;

  height: auto;

}



/* 5) Just in case: block any stray horizontal scrolling on the page */

html, body {

  overflow-x: hidden;

}





/* ========================================================= */

/* MOBILE-ONLY TWEAKS (≤ 767px)                              */

/* ========================================================= */

@media (max-width: 767px) {



  /* --- 10mg / 30mg pills on ONE line --- */

  .elementor-widget-loop-grid .wclvac-pills {

    display: flex !important;

    flex-wrap: nowrap !important;

    justify-content: space-between;

    align-items: stretch;

    gap: 1px;

    margin-bottom: 0;

  }



  .elementor-widget-loop-grid .wclvac-pill {

    flex: 1 1 0 !important;        /* each takes half the width */

    text-align: center;

    white-space: nowrap !important;

    font-size: 12px !important;

    padding: 6px 6px !important;   /* tight so they fit */

    border-radius: 10px !important;

  }



  /* --- Remove qty .elementor-705 .elementor-element.elementor-element-185c034 inside LOOP GRID cards --- */



  /* Hide the entire quantity block + anything inside it */

  .elementor-widget-loop-grid .woocommerce-variation-add-to-cart .quantity,

  .elementor-widget-loop-grid .woocommerce-variation-add-to-cart .quantity * {

    display: none !important;

    visibility: hidden !important;

    width: 0 !important;

    padding: 0 !important;

    margin: 0 !important;

  }



  /* Just in case: also hide any qty inputs directly */

  .elementor-widget-loop-grid .input-text.qty,

  .elementor-widget-loop-grid .qty,

  .elementor-widget-loop-grid .wclvac-qty {

    display: none !important;

    visibility: hidden !important;

    width: 0 !important;

    padding: 0 !important;

    margin: 0 !important;

  }



  /* --- Make Add to Cart full row & perfectly centered --- */

  .elementor-widget-loop-grid .woocommerce-variation-add-to-cart.variations_button {

    display: flex !important;

    width: 100%;

    padding: 0 !important;

    margin: 0 !important;

    gap: 0 !important;

  }



  .elementor-widget-loop-grid .woocommerce-variation-add-to-cart .single_add_to_cart_button {

    flex: 1 1 100% !important;

    max-width: 100% !important;

    width: 100% !important;

    height: 36px;

    margin: 0 !important;

    padding: 0 8px !important;

    display: flex;

    align-items: center;

    justify-content: center;

    font-size: 13px;

    font-weight: 700;

    white-space: nowrap;

  }



  .elementor-widget-loop-grid 

  .woocommerce-variation-add-to-cart .single_add_to_cart_button .elementor-button-content-wrapper {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 4px;

  }



  .elementor-widget-loop-grid 

  .woocommerce-variation-add-to-cart .single_add_to_cart_button svg {

    width: 14px;

    height: 14px;

  }

}/* End custom CSS */