/** Shopify CDN: Minification failed

Line 3103:23 Expected ":"

**/
/* =========================================================
   SYNMAC PRO STORE UI
   ========================================================= */

.synmac-collection,
.synmac-product {
  color: var(--synmac-text, #111827);
  background: var(--synmac-bg, #fff);
  font-size: var(--synmac-product-body-size, 15px);
  line-height: 1.55;
}

.synmac-collection *,
.synmac-product * {
  box-sizing: border-box;
}


/* =========================================================
   BUTTONS
   ========================================================= */

.synmac-btn {
  position: relative;
  isolation: isolate;
  overflow: hidden;

  min-height: 46px;

  padding: 11px 20px;

  border: 1px solid transparent;
  border-radius: var(--synmac-button-radius, 5px);

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;

  text-decoration: none;

  font: inherit;
  font-size: 14px;
  font-weight: 800;
  letter-spacing: .01em;

  cursor: pointer;

  transition:
    transform .2s ease,
    box-shadow .2s ease,
    background .2s ease;
}

.synmac-btn:hover {
  transform: translateY(-1px);
}

.synmac-btn--primary {
  background: var(--synmac-accent, #0b2a6f);
  color: #fff;

  box-shadow:
    0 8px 20px rgba(11, 42, 111, .15);
}

.synmac-btn--secondary {
  background: #fff;
  color: var(--synmac-text);
  border-color: #d0d5dd;
}

.synmac-btn--large {
  min-height: 52px;
}


/* continuous premium light sweep */

.synmac-shine::after {
  content: "";

  position: absolute;
  z-index: 1;

  top: -70%;
  left: -80%;

  width: 40%;
  height: 240%;

  transform: rotate(18deg);

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(255,255,255,.72),
      transparent
    );

  animation: synmacShine 2.9s ease-in-out infinite;

  pointer-events: none;
}

.synmac-shine > * {
  position: relative;
  z-index: 2;
}

@keyframes synmacShine {

  0%,
  27% {
    left: -80%;
    opacity: 0;
  }

  36% {
    opacity: 1;
  }

  58% {
    left: 145%;
    opacity: .9;
  }

  59%,
  100% {
    left: 145%;
    opacity: 0;
  }

}


/* =========================================================
   RATINGS
   ========================================================= */

.synmac-rating {
  display: flex;
  align-items: center;
  gap: var(--synmac-rating-gap, 7px);
  color: var(--synmac-rating-text-color, #222222);
  font-size: var(--synmac-rating-text-size-d, 14px);
  font-weight: var(--synmac-rating-text-weight, 400);
  line-height: 1.25;
}

.synmac-rating__stars {
  --synmac-rating-percent: 0%;
  position: relative;
  display: inline-block;
  color: var(--synmac-rating-star-empty, #D1D5DB);
  font-family: Arial, Helvetica, sans-serif;
  font-size: var(--synmac-rating-star-size-d, 17px);
  line-height: 1;
  letter-spacing: var(--synmac-rating-star-spacing, 1px);
  white-space: nowrap;
}

.synmac-rating__stars::after {
  content: "★★★★★";
  position: absolute;
  inset: 0 auto 0 0;
  width: var(--synmac-rating-percent);
  overflow: hidden;
  color: var(--synmac-rating-star-color, #FFC400);
  white-space: nowrap;
}

.synmac-rating__count {
  color: var(--synmac-rating-text-color, #222222);
  white-space: nowrap;
}


/* =========================================================
   COLLECTION TOOLBAR
   ========================================================= */

.synmac-collection {
  padding-top: 30px;
  padding-bottom: 64px;
}

.synmac-collection__top {
  padding: 15px 0 24px;

  border-top: 1px solid #e5e7eb;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 25px;
}

.synmac-view-control,
.synmac-toolbar-right,
.synmac-toolbar-field {
  display: flex;
  align-items: center;
  gap: 12px;
}

.synmac-toolbar-right {
  gap: 28px;
}

.synmac-toolbar-label,
.synmac-toolbar-field > span,
.synmac-toolbar-field > label {
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .04em;

  white-space: nowrap;
}

.synmac-toolbar-field select {
  min-width: 118px;
  height: 44px;

  padding: 0 35px 0 13px;

  background: #fff;

  border: 1px solid #d5d9e0;
  border-radius: 3px;

  color: #111827;

  font: inherit;
  font-size: 13px;
}


/* view-as icons */

.synmac-view-buttons {
  display: flex;
  gap: 5px;
}

.synmac-view-btn {
  width: 31px;
  height: 31px;

  padding: 5px;

  background: #fff;

  border: 1px solid #b8bdc6;

  display: grid;
  grid-auto-flow: column;
  gap: 2px;

  cursor: pointer;
}

.synmac-view-btn i {
  display: block;

  width: 100%;

  background: #a1a7b0;
}

.synmac-view-btn.is-active {
  border-color: #111;
}

.synmac-view-btn.is-active i {
  background: #111;
}


/* =========================================================
   COLLECTION LAYOUT / SIDEBAR
   ========================================================= */

.synmac-collection__layout {
  display: grid;

  grid-template-columns:
    220px
    minmax(0, 1fr);

  gap: 30px;
}

.synmac-sidebar__group,
.synmac-filter-form {
  border-top: 1px solid #e5e7eb;
}

.synmac-sidebar__heading {
  padding: 15px 0;

  font-size: 14px;
  font-weight: 850;
}

.synmac-category-nav {
  display: grid;
  gap: 3px;

  padding-bottom: 20px;
}

.synmac-category-nav a {
  padding: 6px 0;

  color: #30343b;

  text-decoration: none;

  font-size: 13.5px;
}

.synmac-category-nav a:hover,
.synmac-category-nav a.is-current {
  color: var(--synmac-accent);

  font-weight: 750;
}


/* filters */

.synmac-filter {
  border-bottom: 1px solid #e5e7eb;
}

.synmac-filter > summary {
  padding: 14px 0;

  list-style: none;

  display: flex;
  justify-content: space-between;

  cursor: pointer;

  font-size: 13.5px;
  font-weight: 750;
}

.synmac-filter > summary::-webkit-details-marker {
  display: none;
}

.synmac-filter__body {
  padding-bottom: 14px;

  display: grid;
  gap: 8px;
}

.synmac-filter__option {
  display: flex;
  align-items: center;
  gap: 8px;

  font-size: 13px;

  cursor: pointer;
}

.synmac-filter__option small {
  color: #98a2b3;
}

.synmac-price-filter {
  display: grid;

  grid-template-columns:
    1fr
    1fr;

  gap: 8px;
}

.synmac-price-filter input {
  width: 100%;
  height: 40px;

  padding: 0 10px;

  border: 1px solid #d5d9e0;
}

.synmac-filter-apply {
  width: 100%;

  margin-top: 15px;
}

.synmac-filter-clear {
  display: block;

  margin-top: 10px;

  text-align: center;

  color: #4b5563;

  font-size: 12px;
}


/* =========================================================
   PRODUCT GRID
   ========================================================= */

.synmac-product-grid {
  --synmac-cols: 4;

  display: grid;

  grid-template-columns:
    repeat(
      var(--synmac-cols),
      minmax(0, 1fr)
    );

  gap: 24px 18px;
}


/* =========================================================
   PRODUCT CARD
   ========================================================= */

.synmac-card {
  min-width: 0;

  display: flex;
  flex-direction: column;

  overflow: hidden;

  background: var(--synmac-card-bg, #fff);

  border: 1px solid #e5e7eb;
  border-radius: var(--synmac-card-radius, 8px);

  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease;
}

.synmac-card:hover {
  transform: translateY(-4px);

  border-color: #cbd0d8;

  box-shadow:
    0 10px 30px
    rgba(15, 23, 42, .08);
}

.synmac-card__media {
  aspect-ratio: 1 / 1;

  display: block;

  overflow: hidden;

  background: #fff;
}

.synmac-card__image {
  width: 100%;
  height: 100%;

  padding: 10px;

  display: block;

  object-fit: contain;

  transition:
    transform .28s ease;
}

.synmac-card:hover .synmac-card__image {
  transform: scale(1.025);
}


.synmac-card__body {
  flex: 1;

  padding: 14px 12px 12px;

  display: flex;
  flex-direction: column;
}


.synmac-card__title {
  margin-bottom: 7px;

  color: var(--synmac-text);

  text-decoration: none;

  font-size: var(--synmac-card-title-size, 18px);
  font-weight: 850;
  line-height: 1.25;
}


.synmac-card__desc {
  min-height: 40px;

  margin: 9px 0 14px;

  color: #4f5661;

  font-size: 13.5px;
  line-height: 1.45;
}


.synmac-card__price {
  margin-top: auto;

  display: flex;
  align-items: center;
  gap: 8px;
}


.synmac-card__price .synmac-price {
  font-size: var(--synmac-card-price-size, 22px);
  font-weight: 900;
  line-height: 1;
}

.synmac-card__price s {
  color: #98a2b3;

  font-size: 12px;
}

.synmac-price--sale {
  color: #b42318;
}


/* buttons */

.synmac-card__actions {
  margin-top: 15px;

  display: grid;

  grid-template-columns:
    1fr
    48px;

  gap: 9px;
}

.synmac-card__actions .synmac-btn {
  min-height: 46px;

  padding-left: 8px;
  padding-right: 8px;
}

.synmac-icon-btn {
  position: relative;

  width: 48px;
  height: 46px;

  overflow: hidden;

  border: 0;
  border-radius: var(--synmac-button-radius, 5px);

  background: #181818;
  color: #fff;

  cursor: pointer;
}

.synmac-icon-btn svg {
  position: relative;
  z-index: 2;

  width: 23px;
  height: 23px;
}

.synmac-icon-btn:disabled,
.synmac-btn:disabled {
  opacity: .5;

  cursor: not-allowed;
}

.synmac-load-wrap {
  padding-top: 25px;

  text-align: center;
}

.synmac-pagination {
  padding-top: 28px;

  text-align: center;
}


/* =========================================================
   MAIN PRODUCT
   ========================================================= */

.synmac-product {
  padding-top: 42px;
  padding-bottom: 80px;
}


.synmac-product__grid {
  display: grid;

  grid-template-columns:
    minmax(0, 1.03fr)
    minmax(420px, .97fr);

  gap: clamp(42px, 6vw, 90px);

  align-items: start;
}


/* gallery */

.synmac-product__media {
  position: sticky;

  top: 110px;

  min-width: 0;
}

.synmac-product__main-media {
  width: 100%;

  aspect-ratio: 1 / 1;

  display: grid;
  place-items: center;

  overflow: hidden;

  background: #fff;
}

.synmac-product__main-image {
  width: 100%;
  height: 100%;

  padding: 16px;

  object-fit: contain;
}


.synmac-thumbs {
  padding-top: 14px;

  display: flex;
  justify-content: center;
  flex-wrap: wrap;

  gap: 9px;
}

.synmac-thumb {
  width: 65px;
  height: 65px;

  padding: 3px;

  background: #fff;

  border: 1px solid #e5e7eb;

  cursor: pointer;
}

.synmac-thumb.is-active {
  border-color: var(--synmac-accent);
}

.synmac-thumb img {
  width: 100%;
  height: 100%;

  object-fit: contain;
}


/* product info */

.synmac-product__vendor {
  margin-bottom: 8px;

  color: var(--synmac-muted);

  font-size: 14px;
  font-weight: 650;
}


.synmac-product__title {
  margin: 0 0 9px;

  color: var(--synmac-text);

  font-size:
    var(--synmac-product-title-size, 32px);

  font-weight: 900;

  line-height: 1.08;

  letter-spacing: -.02em;
}


.synmac-product__rating-link {
  margin-bottom: 16px;

  display: inline-block;

  color: inherit;

  text-decoration: none;
}


.synmac-product__price {
  margin: 5px 0 23px;

  display: flex;
  align-items: center;
  gap: 12px;
}


.synmac-product__price .synmac-price {
  font-size:
    var(--synmac-product-price-size, 27px);

  font-weight: 900;

  line-height: 1;
}

.synmac-product__price s {
  color: #98a2b3;

  font-size: 15px;
}


/* =========================================================
   HELPS TO
   ========================================================= */

.synmac-help {
  margin-bottom: 24px;

  padding-top: 19px;

  border-top: 1px solid #e5e7eb;
}

.synmac-help h2,
.synmac-section-heading h2 {
  margin: 0;

  font-size: 18px;
  font-weight: 900;
  line-height: 1.25;
}


.synmac-help__content {
  margin-top: 10px;

  color: #3f4650;

  font-size: 15px;
}

.synmac-help__content ul {
  margin: 0;

  padding-left: 20px;

  display: grid;
  gap: 10px;
}


.synmac-help__content strong {
  padding-bottom: 2px;

  color: var(--synmac-text);

  font-weight: 850;

  background-image:
    linear-gradient(
      var(--synmac-accent-2),
      var(--synmac-accent-2)
    );

  background-repeat: no-repeat;

  background-position:
    left 100%;

  background-size:
    0 2px;

  transition:
    background-size 1.15s cubic-bezier(.22,.8,.3,1);
}


.synmac-help__content strong.is-underlining {
  background-size:
    100% 2px;
}


/* =========================================================
   OPTIONS
   ========================================================= */

.synmac-option {
  margin: 0 0 20px;

  padding: 0;

  border: 0;
}

.synmac-option legend,
.synmac-option__label {
  margin-bottom: 8px;

  font-size: 13px;
  font-weight: 750;
}


.synmac-option__values {
  display: flex;
  flex-wrap: wrap;

  gap: 8px;
}


.synmac-pill {
  display: inline-flex;

  cursor: pointer;
}

.synmac-pill input {
  position: absolute;

  opacity: 0;

  pointer-events: none;
}


.synmac-pill span,
.synmac-pill.is-static {
  min-width: 72px;
  min-height: 43px;

  padding: 9px 14px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  background: #fff;

  border: 1px solid #d0d5dd;

  font-size: 13px;
  font-weight: 700;
}


.synmac-pill input:checked + span {
  color: var(--synmac-accent);

  border-color: var(--synmac-accent);

  box-shadow:
    inset 0 0 0 1px
    var(--synmac-accent);
}


/* =========================================================
   QUANTITY
   ========================================================= */

.synmac-qty-wrap label {
  margin-bottom: 8px;

  display: block;

  font-size: 13px;
  font-weight: 750;
}


.synmac-qty {
  width: 145px;
  height: 46px;

  overflow: hidden;

  display: grid;

  grid-template-columns:
    42px
    1fr
    42px;

  border: 1px solid #d0d5dd;
  border-radius: 4px;
}


.synmac-qty button,
.synmac-qty input {
  border: 0;

  background: #fff;

  text-align: center;

  font: inherit;
}


.synmac-qty button {
  font-size: 19px;

  cursor: pointer;
}

.synmac-qty input {
  width: 100%;
  min-width: 0;

  appearance: textfield;
}


.synmac-qty input::-webkit-inner-spin-button,
.synmac-qty input::-webkit-outer-spin-button {
  appearance: none;

  margin: 0;
}


/* =========================================================
   PRODUCT BUTTONS
   ========================================================= */

.synmac-buy-buttons {
  margin-top: 18px;
  margin-bottom: 28px;

  display: grid;

  grid-template-columns:
    1fr
    1fr;

  gap: 12px;
}


.synmac-dynamic-checkout,
.synmac-dynamic-checkout .shopify-payment-button {
  width: 100%;
}


.synmac-dynamic-checkout .shopify-payment-button__button {
  width: 100% !important;
  min-height: 52px !important;

  border-radius:
    var(--synmac-button-radius, 5px) !important;

  font-size: 14px !important;
  font-weight: 800 !important;
}


/* =========================================================
   OFFERS
   ========================================================= */

.synmac-offers {
  margin-top: 8px;

  padding-top: 22px;

  border-top: 1px solid #e5e7eb;
}

.synmac-section-heading {
  margin-bottom: 13px;

  display: flex;
  align-items: center;
  justify-content: space-between;
}

.synmac-section-heading > span {
  color: #667085;

  font-size: 11px;
  font-weight: 750;

  text-transform: uppercase;
}


.synmac-offer-list {
  display: grid;

  gap: 9px;
}

.synmac-offer-card {
  padding: 9px 10px;

  display: grid;

  grid-template-columns:
    64px
    minmax(0, 1fr)
    auto
    auto;

  gap: 12px;

  align-items: center;

  background: #fff;

  border: 1px solid #e3e6eb;
  border-radius: 8px;

  box-shadow:
    0 4px 14px
    rgba(15,23,42,.04);
}


.synmac-offer-card__image {
  width: 64px;
  height: 58px;
}

.synmac-offer-card__image img {
  width: 100%;
  height: 100%;

  object-fit: contain;
}


.synmac-offer-card__content {
  min-width: 0;

  display: grid;

  gap: 3px;
}

.synmac-offer-card__content strong {
  font-size: 13.5px;
  line-height: 1.3;
}

.synmac-offer-card__content span {
  color: #667085;

  font-size: 11.5px;
}


.synmac-offer-card__price {
  display: grid;

  text-align: right;
}

.synmac-offer-card__price s {
  color: #98a2b3;

  font-size: 11px;
}

.synmac-offer-card__price strong {
  font-size: 14px;
}


.synmac-offer-card__add {
  position: relative;

  min-height: 38px;

  padding: 0 12px;

  overflow: hidden;

  border: 0;
  border-radius: 4px;

  background: var(--synmac-accent);
  color: #fff;

  font-weight: 800;

  cursor: pointer;
}


/* =========================================================
   SYNMAC TRUST BADGES — RESPONSIVE CONTROL SYSTEM
   ========================================================= */

.synmac-badges {
  width: 100%;
  max-width: none;

  margin:
    var(--synmac-badge-top-desktop, 14px)
    0
    0;

  padding:
    0
    0
    var(--synmac-badge-bottom-desktop, 20px);

  display: grid;

  grid-template-columns:
    repeat(
      var(--synmac-badge-count, 4),
      minmax(0, 1fr)
    );

  column-gap:
    var(--synmac-badge-gap-desktop, 8px);

  row-gap: 0;

  align-items: center;

  border-bottom: 1px solid #e5e7eb;
}


.synmac-badge {
  min-width: 0;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  text-align: center;
}


.synmac-badge img {
  width:
    var(--synmac-badge-size-desktop, 92px);

  height:
    var(--synmac-badge-size-desktop, 92px);

  max-width: 100%;

  display: block;

  margin: 0 auto;

  object-fit: contain;
}


.synmac-badge span {
  display: block;

  margin-top: 6px;

  font-size: 10px;
  font-weight: 750;
  line-height: 1.2;
}


/* =========================================================
   ACCORDIONS
   ========================================================= */

.synmac-accordions {
  border-top: 1px solid #e5e7eb;
}

.synmac-accordion {
  border-bottom: 1px solid #e5e7eb;
}

.synmac-accordion > summary {
  padding: 17px 0;

  list-style: none;

  display: flex;
  align-items: center;
  justify-content: space-between;

  cursor: pointer;

  font-size: 15px;
  font-weight: 850;
}

.synmac-accordion > summary::-webkit-details-marker,
.synmac-faq > summary::-webkit-details-marker {
  display: none;
}

.synmac-accordion > summary span {
  transition:
    transform .2s ease;
}

.synmac-accordion[open] > summary span {
  transform:
    rotate(180deg);
}

.synmac-accordion__content {
  padding-bottom: 20px;

  color: #475467;

  font-size: 14px;
  line-height: 1.65;
}


/* =========================================================
   INGREDIENT TABS
   ========================================================= */

.synmac-tabs__nav {
  display: grid;

  grid-template-columns:
    1fr
    1fr;

  border:
    1px solid #e5e7eb;

  border-bottom:
    0;
}

.synmac-tabs__nav button {
  padding: 12px 8px;

  background: #fff;

  border: 0;
  border-bottom: 2px solid transparent;

  font: inherit;
  font-weight: 850;

  cursor: pointer;
}

.synmac-tabs__nav button.is-active {
  border-bottom-color:
    var(--synmac-accent);
}


.synmac-tab-panel {
  display: none;
}

.synmac-tab-panel.is-active {
  display: block;
}


/* ingredient table */

.synmac-ingredients {
  border: 1px solid #e5e7eb;
}


.synmac-ingredient-row {
  padding: 13px 14px;

  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    auto;

  align-items: center;

  gap: 20px;

  background: #fff;

  border-bottom:
    1px solid #edf0f3;

  transform-origin: center;

  transition:
    transform .18s ease,
    box-shadow .18s ease;
}

.synmac-ingredient-row:last-child {
  border-bottom: 0;
}


/* Nutrifactor style interaction but more premium */

.synmac-ingredient-row:hover {
  position: relative;

  z-index: 3;

  transform:
    scale(1.018);

  box-shadow:
    0 8px 22px
    rgba(15,23,42,.10);
}


.synmac-ingredient-row strong {
  color: var(--synmac-text);

  font-size: 13px;
}

.synmac-ingredient-row small {
  margin-top: 2px;

  display: block;

  color: #98a2b3;

  font-size: 11px;
}

.synmac-ingredient-row > span {
  color: var(--synmac-text);

  font-weight: 800;
}


/* =========================================================
   FAQ
   ========================================================= */

.synmac-faq {
  border-bottom:
    1px solid #edf0f3;
}

.synmac-faq:last-child {
  border-bottom: 0;
}

.synmac-faq > summary {
  padding: 13px 0;

  list-style: none;

  display: flex;
  justify-content: space-between;
  gap: 18px;

  cursor: pointer;

  color: var(--synmac-text);

  font-size: 13.5px;
  font-weight: 800;
}


/* =========================================================
   RELATED PRODUCTS
   ========================================================= */

.synmac-related {
  margin-top: 68px;

  padding-top: 28px;

  border-top:
    1px solid #e5e7eb;
}

.synmac-related > h2 {
  margin: 0 0 28px;

  text-align: center;

  text-transform: uppercase;

  letter-spacing: .04em;

  font-size: 16px;
  font-weight: 900;
}

.synmac-related__grid {
  display: grid;

  grid-template-columns:
    repeat(4, minmax(0,1fr));

  gap: 18px;
}


/* =========================================================
   STICKY BUY BAR — PROFESSIONAL CONTROLLED SYSTEM
   ========================================================= */

.synmac-sticky-cart {
  position: fixed;
  z-index: 50;

  left: 0;
  right: 0;
  bottom: 0;

  min-height: var(--synmac-sticky-height-d);

  padding:
    var(--synmac-sticky-pad-y-d)
    max(
      var(--synmac-sticky-pad-x-d),
      calc(
        (100vw - var(--synmac-sticky-content-max)) / 2
      )
    );

  display: grid;
  align-items: center;

  gap: var(--synmac-sticky-gap-d);

  background: var(--synmac-sticky-bg);

  border-top:
    var(--synmac-sticky-border-w)
    solid
    var(--synmac-sticky-border);

  box-shadow:
    0 -5px 18px
    rgba(0, 0, 0, var(--synmac-sticky-shadow));

  transform: translateY(110%);
  opacity: 0;

  pointer-events: none;

  transition:
    transform .28s cubic-bezier(.22,1,.36,1),
    opacity .28s ease;
}


.synmac-sticky-cart--simple {
  grid-template-columns:
    minmax(220px, 1fr)
    var(--synmac-sticky-qty-w)
    var(--synmac-sticky-btn-w);
}


.synmac-sticky-cart--variants {
  grid-template-columns:
    minmax(220px, 1fr)
    var(--synmac-sticky-variant-w)
    var(--synmac-sticky-qty-w)
    var(--synmac-sticky-btn-w);
}


.synmac-sticky-cart.is-visible {
  transform: translateY(0);
  opacity: 1;
  pointer-events: auto;
}


.synmac-sticky-cart__product {
  min-width: 0;

  display: flex;
  align-items: center;

  gap: 12px;
}


.synmac-sticky-cart__product img {
  flex: 0 0 auto;

  width: var(--synmac-sticky-image-d);
  height: var(--synmac-sticky-image-d);

  object-fit: contain;
}


.synmac-sticky-cart__product-copy {
  min-width: 0;
}


.synmac-sticky-cart__product strong,
.synmac-sticky-cart__product span {
  display: block;
}


.synmac-sticky-cart__product strong {
  overflow: hidden;

  color: var(--synmac-sticky-title-color);

  font-family: var(--synmac-heading-font);
  font-size: var(--synmac-sticky-title-size-d);
  font-weight: var(--synmac-sticky-title-weight);
  line-height: 1.25;

  white-space: nowrap;
  text-overflow: ellipsis;
}


.synmac-sticky-cart__product span {
  margin-top: 3px;

  color: var(--synmac-sticky-price-color);

  font-family: var(--synmac-body-font);
  font-size: var(--synmac-sticky-price-size-d);
  font-weight: var(--synmac-sticky-price-weight);
  line-height: 1.2;
}


/* Variant selector */

.synmac-sticky-cart__variant {
  width: 100%;
  height: var(--synmac-sticky-variant-h);

  min-width: 0;

  padding: 0 12px;

  border:
    1px solid
    var(--synmac-sticky-qty-border);

  border-radius: var(--synmac-sticky-qty-radius);

  background: #ffffff;
  color: var(--synmac-sticky-qty-color);

  font-family: var(--synmac-body-font);
  font-size: 13px;
  font-weight: 500;
}


/* Quantity */

.synmac-sticky-cart__qty {
  width: 100%;
  height: var(--synmac-sticky-qty-h);

  overflow: hidden;

  display: grid;

  grid-template-columns:
    var(--synmac-sticky-qty-cell)
    minmax(30px, 1fr)
    var(--synmac-sticky-qty-cell);

  background: var(--synmac-sticky-qty-bg);

  border:
    var(--synmac-sticky-qty-border-w)
    solid
    var(--synmac-sticky-qty-border);

  border-radius: var(--synmac-sticky-qty-radius);
}


.synmac-sticky-cart__qty button,
.synmac-sticky-cart__qty input {
  min-width: 0;

  padding: 0;

  border: 0;
  outline: 0;

  background: transparent;
  color: var(--synmac-sticky-qty-color);

  text-align: center;
}


.synmac-sticky-cart__qty button {
  height: 100%;

  font-family: var(--synmac-body-font);
  font-size: var(--synmac-sticky-qty-icon-size);
  font-weight: 400;
  line-height: 1;

  cursor: pointer;

  transition:
    background-color
    var(--synmac-sticky-qty-duration)
    ease;
}


.synmac-sticky-cart__qty button:hover {
  background: var(--synmac-sticky-qty-hover);
}


.synmac-sticky-cart__qty input {
  width: 100%;
  height: 100%;

  font-family: var(--synmac-body-font);
  font-size: var(--synmac-sticky-qty-size);
  font-weight: var(--synmac-sticky-qty-weight);

  appearance: textfield;
}


.synmac-sticky-cart__qty input::-webkit-inner-spin-button,
.synmac-sticky-cart__qty input::-webkit-outer-spin-button {
  appearance: none;
  margin: 0;
}


/* Sticky Add to Cart */

.synmac-sticky-cart__atc {
  position: relative;
  isolation: isolate;

  width: 100%;
  height: var(--synmac-sticky-btn-h);
  min-height: var(--synmac-sticky-btn-h);

  overflow: hidden;

  padding: 0 18px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border:
    var(--synmac-sticky-btn-border-w)
    solid
    var(--synmac-sticky-btn-border);

  border-radius: var(--synmac-sticky-btn-radius);

  background: var(--synmac-sticky-btn-bg);
  color: var(--synmac-sticky-btn-text);

  box-shadow: none;

  font-family: var(--synmac-button-font);
  font-size: var(--synmac-sticky-btn-size-d);
  font-weight: var(--synmac-sticky-btn-weight);
  line-height: 1;
  letter-spacing: var(--synmac-sticky-btn-letter);
  text-transform: var(--synmac-sticky-btn-transform);

  cursor: pointer;

  transition:
    background-color var(--synmac-sticky-btn-duration) ease,
    color var(--synmac-sticky-btn-duration) ease,
    border-color var(--synmac-sticky-btn-duration) ease,
    transform var(--synmac-sticky-btn-duration) ease;
}


.synmac-sticky-cart__atc:hover {
  background: var(--synmac-sticky-btn-hover-bg);
  color: var(--synmac-sticky-btn-hover-text);
  border-color: var(--synmac-sticky-btn-hover-border);

  transform:
    translateY(
      calc(var(--synmac-sticky-btn-lift) * -1)
    );
}


.synmac-sticky-cart__atc:disabled {
  opacity: .55;
  cursor: not-allowed;
}


.synmac-sticky-cart__atc:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 3px;
}


@media screen and (min-width: 990px) {

  .synmac-sticky-cart[data-show-desktop="false"] {
    display: none !important;
  }

}


/* =========================================================
   TOAST
   ========================================================= */

.synmac-toast {
  position: fixed;

  z-index: 100;

  right: 20px;
  bottom: 92px;

  padding: 11px 14px;

  background: #111827;
  color: #fff;

  border-radius: 6px;

  box-shadow:
    0 10px 30px
    rgba(0,0,0,.18);

  font-size: 13px;
  font-weight: 750;
}


/* =========================================================
   TABLET
   ========================================================= */

@media screen and (max-width: 989px) {

  .synmac-collection__top {
    align-items: flex-start;
    flex-direction: column;
  }

  .synmac-toolbar-right {
    width: 100%;

    justify-content: space-between;
  }

  .synmac-collection__layout {
    grid-template-columns: 1fr;
  }

  .synmac-sidebar {
    display: none;
  }

  .synmac-product-grid {
    --synmac-cols: 2 !important;

    gap: 14px;
  }


  .synmac-product {
    padding-top: 24px;
  }

  .synmac-product__grid {
    grid-template-columns: 1fr;

    gap: 26px;
  }

  .synmac-product__media {
    position: static;
  }

  .synmac-related__grid {
    grid-template-columns:
      repeat(2, minmax(0,1fr));
  }


    .synmac-sticky-cart {
    min-height: var(--synmac-sticky-height-m);

    padding:
      var(--synmac-sticky-pad-y-m)
      var(--synmac-sticky-pad-x-m);

    grid-template-columns:
      minmax(0, 1fr)
      var(--synmac-sticky-btn-w-m);

    gap: var(--synmac-sticky-gap-m);
  }


  .synmac-sticky-cart[data-show-mobile="false"] {
    display: none !important;
  }


  .synmac-sticky-cart__variant,
  .synmac-sticky-cart__qty {
    display: none;
  }


  .synmac-sticky-cart__product img {
    width: var(--synmac-sticky-image-m);
    height: var(--synmac-sticky-image-m);
  }


  .synmac-sticky-cart__product strong {
    font-size: var(--synmac-sticky-title-size-m);
  }


  .synmac-sticky-cart__product span {
    font-size: var(--synmac-sticky-price-size-m);
  }


  .synmac-sticky-cart__atc {
    height: var(--synmac-sticky-btn-h-m);
    min-height: var(--synmac-sticky-btn-h-m);

    font-size: var(--synmac-sticky-btn-size-m);
  }

}


/* =========================================================
   MOBILE
   ========================================================= */

@media screen and (max-width: 749px) {

  .synmac-rating {
    font-size: var(--synmac-rating-text-size-m, 12px);
  }

  .synmac-rating__stars {
    font-size: var(--synmac-rating-star-size-m, 14px);
  }

  .synmac-collection {
    padding-top: 15px;
    padding-bottom: 40px;
  }


  .synmac-view-control {
    display: none;
  }


  .synmac-toolbar-right {
    display: grid;

    grid-template-columns:
      1fr
      1fr;

    gap: 10px;
  }


  .synmac-toolbar-field {
    display: grid;

    gap: 6px;
  }


  .synmac-toolbar-field select {
    width: 100%;
    min-width: 0;
  }


  .synmac-card__body {
    padding:
      11px 10px;
  }

  .synmac-card__title {
    font-size: 15px;
  }

  .synmac-card__desc {
    min-height: 0;

    font-size: 12px;
  }

  .synmac-card__price .synmac-price {
    font-size: 18px;
  }

  .synmac-card__actions {
    grid-template-columns:
      1fr
      44px;
  }

  .synmac-icon-btn {
    width: 44px;
  }


  .synmac-product__title {
    font-size:
      min(
        var(--synmac-product-title-size, 32px),
        27px
      );
  }


  .synmac-product__price .synmac-price {
    font-size: 24px;
  }


  .synmac-buy-buttons {
    grid-template-columns: 1fr;
  }


  .synmac-badges {
  width: 100%;

  grid-template-columns:
    repeat(
      var(--synmac-badge-count, 4),
      minmax(0, 1fr)
    ) !important;

  column-gap:
    var(--synmac-badge-gap-mobile, 4px) !important;

  row-gap: 0 !important;

  margin-top:
    var(--synmac-badge-top-mobile, 12px);

  padding-bottom:
    var(--synmac-badge-bottom-mobile, 16px);
}


.synmac-badge img {
  width:
    var(--synmac-badge-size-mobile, 70px);

  height:
    var(--synmac-badge-size-mobile, 70px);

  max-width: 100%;
}


  .synmac-offer-card {
    grid-template-columns:
      54px
      minmax(0,1fr)
      auto;
  }

  .synmac-offer-card__price {
    grid-column:
      2 / 3;

    text-align: left;
  }

  .synmac-offer-card__add {
    grid-column:
      3 / 4;

    grid-row:
      1 / 3;
  }

}


/* accessibility */

@media (prefers-reduced-motion: reduce) {

  .synmac-shine::after {
    animation: none;
  }

  .synmac-card,
  .synmac-card__image,
  .synmac-sticky-cart {
    transition: none;
  }

}
/* =========================================================
   SYNMAC PRODUCT PRO — ADVANCED THEME EDITOR CONTROLS
   ========================================================= */


/* ---------- GENERAL TYPOGRAPHY ---------- */

.synmac-product {
  font-family: var(--synmac-body-font);
  font-size: var(--synmac-product-body-size);
  font-weight: var(--synmac-product-body-weight);

  color: var(--synmac-text);
  background: var(--synmac-bg);
}


.synmac-product__vendor {
  font-family: var(--synmac-body-font);
  font-weight: var(--synmac-product-body-weight);

  color: var(--synmac-muted);
}


.synmac-product__title {
  font-family: var(--synmac-heading-font);

  font-size:
    var(--synmac-product-title-size) !important;

  font-weight:
    var(--synmac-product-title-weight) !important;
}


.synmac-product__price .synmac-price {
  font-family: var(--synmac-heading-font);

  font-size:
    var(--synmac-product-price-size) !important;

  font-weight:
    var(--synmac-product-price-weight) !important;
}


.synmac-help__content {
  font-family: var(--synmac-body-font);

  font-size:
    var(--synmac-product-body-size);

  font-weight:
    var(--synmac-product-body-weight);
}


.synmac-help h2,
.synmac-section-heading h2 {
  font-family:
    var(--synmac-heading-font);

  font-size:
    var(--synmac-help-heading-size) !important;

  font-weight:
    var(--synmac-accordion-heading-weight) !important;
}



/* =========================================================
   BUTTON TYPOGRAPHY
   ========================================================= */

.synmac-product .synmac-btn,
.synmac-product .shopify-payment-button__button--unbranded {

  font-family:
    var(--synmac-button-font) !important;

  font-size:
    var(--synmac-button-text-size) !important;

  font-weight:
    var(--synmac-button-text-weight) !important;

  letter-spacing: 0 !important;

  text-transform: none !important;
}



/* =========================================================
   COMMON BUTTON HEIGHT
   ========================================================= */

.synmac-product .synmac-btn--large,
.synmac-product .shopify-payment-button,
.synmac-product .shopify-payment-button__button,
.synmac-product .shopify-payment-button__button--unbranded {

  min-height:
    var(--synmac-button-height) !important;

  height:
    var(--synmac-button-height) !important;
}



/* =========================================================
   ADD TO CART — FILLED STYLE
   ========================================================= */

.synmac-product[data-primary-style="fill"]
.synmac-btn--primary {

  background:
    var(--synmac-primary-bg) !important;

  color:
    var(--synmac-primary-text) !important;

  border:
    var(--synmac-primary-border-width)
    solid
    var(--synmac-primary-border) !important;

  border-radius:
    var(--synmac-primary-radius) !important;

  box-shadow: none !important;
}



/* =========================================================
   ADD TO CART — OUTLINE STYLE
   ========================================================= */

.synmac-product[data-primary-style="outline"]
.synmac-btn--primary {

  background:
    transparent !important;

  color:
    var(--synmac-primary-text) !important;

  border:
    var(--synmac-primary-border-width)
    solid
    var(--synmac-primary-border) !important;

  border-radius:
    var(--synmac-primary-radius) !important;

  box-shadow:
    none !important;
}



/* =========================================================
   FIX SHOPIFY BUY IT NOW DOUBLE / PILL OUTLINE
   ========================================================= */

.synmac-product
.shopify-payment-button__button--unbranded {

  position: relative !important;

  overflow: hidden !important;

  padding:
    0 20px !important;

  margin: 0 !important;

  outline:
    none !important;

  box-shadow:
    none !important;

  appearance:
    none !important;

  -webkit-appearance:
    none !important;

  transition:
    background-color .2s ease,
    color .2s ease,
    border-color .2s ease,
    transform .2s ease !important;
}


/* THIS REMOVES THE UGLY REFRESH INNER PILL OUTLINE */

.synmac-product
.shopify-payment-button__button--unbranded::after {

  content:
    none !important;

  display:
    none !important;

  border:
    0 !important;

  box-shadow:
    none !important;

  outline:
    0 !important;
}



/* =========================================================
   BUY IT NOW — FILLED
   ========================================================= */

.synmac-product[data-buy-style="fill"]
.shopify-payment-button__button--unbranded {

  background:
    var(--synmac-buy-bg) !important;

  color:
    var(--synmac-buy-text) !important;

  border:
    var(--synmac-buy-border-width)
    solid
    var(--synmac-buy-border) !important;

  border-radius:
    var(--synmac-buy-radius) !important;
}



/* =========================================================
   BUY IT NOW — OUTLINE
   ========================================================= */

.synmac-product[data-buy-style="outline"]
.shopify-payment-button__button--unbranded {

  background:
    transparent !important;

  color:
    var(--synmac-buy-text) !important;

  border:
    var(--synmac-buy-border-width)
    solid
    var(--synmac-buy-border) !important;

  border-radius:
    var(--synmac-buy-radius) !important;

  box-shadow:
    none !important;
}



/* =========================================================
   REMOVE REFRESH FOCUS RING
   KEEP ACCESSIBLE KEYBOARD FOCUS
   ========================================================= */

.synmac-product
.shopify-payment-button__button--unbranded:focus {

  box-shadow:
    none !important;

  outline:
    none !important;
}


.synmac-product
.shopify-payment-button__button--unbranded:focus-visible {

  outline:
    2px solid
    var(--synmac-underline) !important;

  outline-offset:
    3px !important;
}



/* =========================================================
   BUTTON HOVER
   ========================================================= */

.synmac-product
.synmac-btn:hover,

.synmac-product
.shopify-payment-button__button--unbranded:hover {

  transform:
    translateY(-1px);
}



/* =========================================================
   ADD TO CART SHINE SPEED
   ========================================================= */

.synmac-product
.synmac-shine::after {

  animation-duration:
    var(--synmac-shine-duration) !important;
}


.synmac-product[data-primary-shine="false"]
.synmac-shine::after {

  display:
    none !important;
}



/* =========================================================
   BUY IT NOW SHINE
   ========================================================= */

.synmac-product
.shopify-payment-button__button--unbranded::before {

  content: "";

  position:
    absolute;

  z-index: 1;

  top:
    -80%;

  left:
    -70%;

  width:
    35%;

  height:
    260%;

  display:
    none;

  pointer-events:
    none;

  transform:
    rotate(18deg);

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(255,255,255,.65),
      transparent
    );
}


.synmac-product[data-buy-shine="true"]
.shopify-payment-button__button--unbranded::before {

  display:
    block;

  animation:
    synmacBuyShine
    var(--synmac-shine-duration)
    ease-in-out
    infinite;
}


@keyframes synmacBuyShine {

  0%,
  28% {

    left: -70%;

    opacity: 0;
  }

  36% {

    opacity: 1;
  }

  58% {

    left: 145%;

    opacity: .8;
  }

  59%,
  100% {

    left: 145%;

    opacity: 0;
  }

}



/* =========================================================
   ACCORDION SEPARATOR LINES
   ========================================================= */

.synmac-accordions {

  border-top:
    var(--synmac-accordion-line-width)
    solid
    var(--synmac-accordion-line) !important;
}


.synmac-accordion {

  border-bottom:
    var(--synmac-accordion-line-width)
    solid
    var(--synmac-accordion-line) !important;
}


.synmac-faq {

  border-bottom:
    var(--synmac-accordion-line-width)
    solid
    var(--synmac-accordion-line) !important;
}



/* =========================================================
   ACCORDION TYPOGRAPHY
   ========================================================= */

.synmac-accordion > summary {

  padding:
    var(--synmac-accordion-padding)
    0 !important;

  font-family:
    var(--synmac-heading-font);

  font-size:
    var(--synmac-accordion-heading-size) !important;

  font-weight:
    var(--synmac-accordion-heading-weight) !important;

  color:
    var(--synmac-text);

  line-height:
    1.25;
}


.synmac-accordion__content {

  font-family:
    var(--synmac-body-font);

  font-size:
    var(--synmac-accordion-body-size) !important;

  font-weight:
    var(--synmac-product-body-weight);

  color:
    var(--synmac-muted);
}



/* =========================================================
   REMOVE OLD UGLY "V" SPAN ICON
   ========================================================= */

.synmac-accordion > summary > span {

  display:
    none !important;
}



/* =========================================================
   COMMON CUSTOM ICON
   ========================================================= */

.synmac-accordion > summary::after {

  flex:
    0 0 auto;

  margin-left:
    20px;

  color:
    var(--synmac-text);

  transition:
    transform .22s ease;

  transform-origin:
    center;
}



/* =========================================================
   ICON 1 — THIN NUTRIFACTOR CHEVRON
   ========================================================= */

.synmac-product[data-accordion-icon="chevron_thin"]
.synmac-accordion > summary::after {

  content: "";

  width:
    var(--synmac-accordion-icon-size);

  height:
    var(--synmac-accordion-icon-size);

  border-right:
    var(--synmac-accordion-icon-stroke)
    solid
    currentColor;

  border-bottom:
    var(--synmac-accordion-icon-stroke)
    solid
    currentColor;

  transform:
    rotate(45deg)
    translate(-1px,-1px);
}


.synmac-product[data-accordion-icon="chevron_thin"]
.synmac-accordion[open] > summary::after {

  transform:
    rotate(225deg)
    translate(-1px,-1px);
}



/* =========================================================
   ICON 2 — BOLD CHEVRON
   ========================================================= */

.synmac-product[data-accordion-icon="chevron_bold"]
.synmac-accordion > summary::after {

  content: "";

  width:
    var(--synmac-accordion-icon-size);

  height:
    var(--synmac-accordion-icon-size);

  border-right:
    calc(
      var(--synmac-accordion-icon-stroke) + 1px
    )
    solid
    currentColor;

  border-bottom:
    calc(
      var(--synmac-accordion-icon-stroke) + 1px
    )
    solid
    currentColor;

  transform:
    rotate(45deg)
    translate(-1px,-1px);
}


.synmac-product[data-accordion-icon="chevron_bold"]
.synmac-accordion[open] > summary::after {

  transform:
    rotate(225deg)
    translate(-1px,-1px);
}



/* =========================================================
   ICON 3 — PLUS / MINUS
   ========================================================= */

.synmac-product[data-accordion-icon="plus"]
.synmac-accordion > summary::after {

  content: "+";

  font-size:
    calc(
      var(--synmac-accordion-icon-size) + 6px
    );

  font-weight:
    400;

  line-height:
    1;
}


.synmac-product[data-accordion-icon="plus"]
.synmac-accordion[open] > summary::after {

  content: "−";
}



/* =========================================================
   ICON 4 — ARROW
   ========================================================= */

.synmac-product[data-accordion-icon="arrow"]
.synmac-accordion > summary::after {

  content: "↓";

  font-size:
    calc(
      var(--synmac-accordion-icon-size) + 5px
    );

  font-weight:
    400;

  line-height:
    1;
}


.synmac-product[data-accordion-icon="arrow"]
.synmac-accordion[open] > summary::after {

  content: "↑";
}



/* =========================================================
   ICON 5 — MINIMAL V
   ========================================================= */

.synmac-product[data-accordion-icon="minimal"]
.synmac-accordion > summary::after {

  content: "⌄";

  font-size:
    calc(
      var(--synmac-accordion-icon-size) + 6px
    );

  line-height:
    .7;
}


.synmac-product[data-accordion-icon="minimal"]
.synmac-accordion[open] > summary::after {

  content: "⌃";
}



/* =========================================================
   RATING COLORS RESPECT PRODUCT SCHEME
   ========================================================= */




/* =========================================================
   MOBILE
   ========================================================= */

@media screen and (max-width: 749px) {

  .synmac-product
  .synmac-buy-buttons {

    grid-template-columns:
      1fr !important;
  }


  .synmac-product
  .synmac-product__title {

    font-size:
      min(
        var(--synmac-product-title-size),
        30px
      ) !important;
  }

}
/* =========================================================
   SYNMAC HELPS TO - FINAL SEQUENTIAL UNDERLINE
   Uses Theme Editor "Underline accent" color
   ========================================================= */

.synmac-help__content li strong {
  position: relative;
  display: inline-block;
  padding-bottom: 2px;

  /* remove old background underline */
  background-image: none !important;
}


/* Actual animated underline */

.synmac-help__content li strong::after {
  content: "";

  position: absolute;
  left: 0;
  bottom: 0;

  width: 100%;
  height: 2px;

  /* Takes color from Synmac Product Pro → Underline accent */
  background-color: var(--synmac-accent-2);

  transform: scaleX(0);
  transform-origin: left center;

  animation: synmacHelpLine 6s ease-in-out infinite;
}


/* First highlighted phrase */

.synmac-help__content li:nth-child(1) strong::after {
  animation-delay: 0s;
}


/* Second highlighted phrase */

.synmac-help__content li:nth-child(2) strong::after {
  animation-delay: 2s;
}


/* Third highlighted phrase */

.synmac-help__content li:nth-child(3) strong::after {
  animation-delay: 4s;
}


@keyframes synmacHelpLine {

  0% {
    transform: scaleX(0);
    transform-origin: left center;
  }

  8% {
    transform: scaleX(1);
    transform-origin: left center;
  }

  24% {
    transform: scaleX(1);
    transform-origin: left center;
  }

  30% {
    transform: scaleX(0);
    transform-origin: right center;
  }

  100% {
    transform: scaleX(0);
  }

}
/* =========================================================
   SYNMAC INGREDIENT TABLE — PREMIUM TAB + TYPOGRAPHY FIX
   ========================================================= */


/* ---------- TAB BOX ---------- */

.synmac-tabs__nav {
  position: relative;

  display: grid;
  grid-template-columns: 1fr 1fr;

  background: #ffffff;

  border: 1px solid #e3e5e8;
  border-bottom: 1px solid #e3e5e8;

  overflow: hidden;
}


/* Ingredients / Instructions text */

.synmac-tabs__nav button {
  position: relative;

  min-height: 56px;
  padding: 14px 18px;

  border: 0 !important;
  border-bottom: 0 !important;

  background: transparent;

  color: var(--synmac-text, #111111);

  font-size: 17px;
  font-weight: 700;
  line-height: 1.2;

  cursor: pointer;

  transition:
    color .25s ease,
    opacity .25s ease;
}


.synmac-tabs__nav button:not(.is-active) {
  color: #3f4248;
}


/* ---------- MOVING UNDERLINE ---------- */

.synmac-tabs__nav::after {
  content: "";

  position: absolute;

  left: 0;
  bottom: 0;

  width: 50%;
  height: 2px;

  background: var(--synmac-underline-color, var(--synmac-accent-2));

  transform: translateX(0);

  transition:
    transform .38s cubic-bezier(.22, .8, .28, 1);
}


/* When Instructions is selected */

.synmac-tabs__nav:has(
  button:nth-child(2).is-active
)::after {
  transform: translateX(100%);
}


/* ---------- INGREDIENT TABLE ---------- */

.synmac-ingredients {
  border: 1px solid #e3e5e8;
  border-top: 0;

  background: #ffffff;
}


.synmac-ingredient-row {
  min-height: 66px;

  padding: 17px 26px;

  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;

  align-items: center;
  gap: 24px;

  background: #ffffff;

  border-bottom: 1px solid #eceef1;

  transition:
    transform .22s ease,
    box-shadow .22s ease,
    background-color .22s ease;
}


.synmac-ingredient-row:last-child {
  border-bottom: 0;
}


/* Ingredient name — smaller than tabs */

.synmac-ingredient-row strong {
  display: block;

  color: var(--synmac-text, #202124);

  font-size: 15px !important;
  font-weight: 550 !important;
  line-height: 1.4;
}


/* Ingredient amount */

.synmac-ingredient-row > span {
  color: var(--synmac-text, #202124);

  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.4;

  white-space: nowrap;
}


/* Optional small note under ingredient */

.synmac-ingredient-row small {
  display: block;

  margin-top: 3px;

  color: #777d87;

  font-size: 12px;
  font-weight: 400;
  line-height: 1.35;The sun shines bright in the clear blue sky.Birds fly high and sing sweet songs all day.A gentle wind moves soft green grass below.
}


/* Nutrifactor-style hover, but smoother */

.synmac-ingredient-row:hover {
  position: relative;
  z-index: 2;

  background: #ffffff;

  transform: scale(1.012);

  box-shadow:
    0 5px 16px rgba(15, 23, 42, .09);
}
/* =========================================================
   SYNMAC FAQ — STATIC CLEAN STYLE
   ========================================================= */

.synmac-faq {
  padding: 20px 0 22px;
  border-bottom: 1px solid #e5e7eb;
}

.synmac-faq:last-child {
  border-bottom: 0;
}


/* FAQ QUESTION */

.synmac-faq__question {
  margin: 0 0 12px;

  color: var(--synmac-text, #111111);

  font-size: 17px;
  font-weight: 700;
  line-height: 1.35;
}


/* FAQ ANSWER */

.synmac-faq__answer {
  color: #3f4650;

  font-size: 15px;
  font-weight: 400;
  line-height: 1.65;
}


/* Shopify rich text extra spacing fix */

.synmac-faq__answer p {
  margin: 0;
}

.synmac-faq__answer p + p {
  margin-top: 8px;
}
/* =========================================================
   SYNMAC INSTRUCTIONS PANEL — MATCH INGREDIENTS TABLE
   ========================================================= */

.synmac-tab-panel[data-synmac-panel="instructions"] {
  width: 100% !important;

  /* same table outline as Ingredients */
  border: 1px solid #e3e5e8 !important;
  border-top: 0 !important;

  background: #ffffff;

  /* comfortable inner spacing */
  padding: 22px 26px !important;

  box-sizing: border-box;

  /* 2 ingredient rows × approx 66px */
  min-height: 132px;

  color: var(--synmac-text, #202124);

  font-size: 15px;
  font-weight: 400;
  line-height: 1.65;
}


/* Shopify rich-text unwanted spacing remove */

.synmac-tab-panel[data-synmac-panel="instructions"] p {
  margin-top: 0;
  margin-bottom: 10px;
}

.synmac-tab-panel[data-synmac-panel="instructions"] p:last-child {
  margin-bottom: 0;
}


/* Lists inside Instructions */

.synmac-tab-panel[data-synmac-panel="instructions"] ul,
.synmac-tab-panel[data-synmac-panel="instructions"] ol {
  margin: 0;
  padding-left: 20px;
}


/* MOBILE */

@media screen and (max-width: 749px) {

  .synmac-tab-panel[data-synmac-panel="instructions"] {
    padding: 18px 16px !important;
    min-height: 120px;

    font-size: 14px;
    line-height: 1.6;
  }

}
/* =========================================================
   SYNMAC QUANTITY + PACK SIZE — FINAL RESPONSIVE SYSTEM
   ========================================================= */


/* Main row */

.synmac-purchase-row {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: flex-start !important;

  gap: var(--synmac-purchase-fields-gap, 12px) !important;

  margin: 0 0 18px !important;
}


/* Field labels */

.synmac-purchase-field {
  flex: 0 0 auto;
}


.synmac-purchase-field label,
.synmac-purchase-field__label {
  display: block;

  margin: 0 0 8px;

  color: var(--synmac-text, #111827);

  font-size: 13px;
  font-weight: 700;
  line-height: 1.25;
}


/* =========================================================
   QUANTITY
   ========================================================= */

.synmac-qty-wrap {
  width: var(--synmac-qty-width-desktop, 130px) !important;
}


.synmac-qty {
  width: 100% !important;
  height: var(--synmac-purchase-field-height, 46px) !important;

  display: grid !important;

  grid-template-columns:
    38px
    minmax(32px, 1fr)
    38px !important;

  overflow: hidden;

  background: #ffffff;

  border: 1px solid #d0d5dd;
  border-radius: 5px;
}


/* Minus + plus */

.synmac-qty button {
  width: 100%;

  border: 0;

  background: transparent;

  color: var(--synmac-text, #111827);

  font-size: 19px;
  font-weight: 500;
  line-height: 1;

  cursor: pointer;

  transition:
    background-color .18s ease,
    color .18s ease;
}


.synmac-qty button:hover {
  background: #f5f6f8;
}


/* Number */

.synmac-qty input {
  width: 100%;
  min-width: 0;

  padding: 0;

  border: 0;
  outline: 0;

  background: transparent;

  color: var(--synmac-text, #111827);

  text-align: center;

  font: inherit;
  font-size: 14px;
  font-weight: 600;

  appearance: textfield;
}


.synmac-qty input::-webkit-inner-spin-button,
.synmac-qty input::-webkit-outer-spin-button {
  appearance: none;
  margin: 0;
}


/* =========================================================
   PACK SIZE
   ========================================================= */

.synmac-pack-size {
  width: var(--synmac-pack-width-desktop, 135px) !important;
}


.synmac-pack-size__box {
  width: 100%;
  height: var(--synmac-purchase-field-height, 46px);

  padding: 0 14px;

  display: flex;
  align-items: center;
  justify-content: center;

  gap: 4px;

  background: #ffffff;

  border: 1px solid #d0d5dd;
  border-radius: 5px;

  color: var(--synmac-text, #111827);
}


.synmac-pack-size__box strong {
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
}


.synmac-pack-size__box span {
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
}


/* subtle hover */

.synmac-pack-size__box {
  transition:
    border-color .2s ease,
    box-shadow .2s ease;
}


.synmac-pack-size__box:hover {
  border-color: #aeb5c0;

  box-shadow:
    0 3px 10px
    rgba(15, 23, 42, .05);
}


/* =========================================================
   MOBILE
   ========================================================= */

@media screen and (max-width: 749px) {

  .synmac-purchase-row {
    display: flex !important;
    flex-wrap: nowrap !important;

    align-items: flex-end !important;

    gap: var(--synmac-purchase-fields-gap, 10px) !important;

    width: 100%;
  }


  .synmac-qty-wrap {
    width: var(--synmac-qty-width-mobile, 120px) !important;
  }


  .synmac-pack-size {
    width: var(--synmac-pack-width-mobile, 120px) !important;
  }


  .synmac-qty {
    grid-template-columns:
      34px
      minmax(28px, 1fr)
      34px !important;
  }


  .synmac-pack-size__box {
    padding-left: 10px;
    padding-right: 10px;
  }

}
/* =========================================================
   SYNMAC INGREDIENT GROUPS + SHOW MORE
   ========================================================= */


/* each ingredient + optional heading acts as one item */

.synmac-ingredient-item {
  background: #ffffff;
  border-bottom: 1px solid #eceef1;
}


.synmac-ingredient-item:last-child {
  border-bottom: 0;
}


/* old row border is now handled by the item */

.synmac-ingredient-item .synmac-ingredient-row {
  border-bottom: 0 !important;
}


/* hidden ingredients */

.synmac-ingredient-item.is-extra {
  display: none;
}


/* reveal all */

.synmac-ingredients.is-expanded
.synmac-ingredient-item.is-extra {
  display: block;
}


/* =========================================================
   SERVING / GROUP HEADING
   ========================================================= */

.synmac-ingredient-group-heading {
  width: 100%;

  padding: 16px 26px 7px;

  background: #ffffff;

  color: var(--synmac-text, #202124);

  text-align:
    var(--synmac-ingredient-group-heading-align, center);

  font-size:
    var(--synmac-ingredient-group-heading-size, 15px);

  font-weight:
    var(--synmac-ingredient-group-heading-weight, 500);

  line-height: 1.45;
}


/* =========================================================
   SHOW MORE / SHOW LESS
   ========================================================= */

.synmac-ingredients-toggle-wrap {
  width: 100%;

  display: flex;
  justify-content: center;

  padding-top: 13px;
}


.synmac-ingredients-toggle {
  padding: 4px 2px;

  border: 0;

  background: transparent;

  color: var(--synmac-text, #202124);

  font-family: inherit;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;

  cursor: pointer;
}


.synmac-ingredients-toggle span {
  position: relative;

  display: inline-block;

  padding-bottom: 4px;
}


/* underline */

.synmac-ingredients-toggle span::after {
  content: "";

  position: absolute;

  left: 0;
  bottom: 0;

  width: 100%;
  height: 2px;

  background:
    var(--synmac-accent-2, currentColor);

  transform: scaleX(0);
  transform-origin: left center;

  transition:
    transform .38s cubic-bezier(.22, .8, .28, 1);
}


/* mouse hover underline animation */

.synmac-ingredients-toggle:hover span::after,
.synmac-ingredients-toggle:focus-visible span::after {
  transform: scaleX(1);
}


/* MOBILE */

@media screen and (max-width: 749px) {

  .synmac-ingredient-group-heading {
    padding:
      14px
      16px
      6px;
  }

  .synmac-ingredients-toggle-wrap {
    padding-top: 11px;
  }

}
/* =========================================================
   SYNMAC PRODUCT DETAILS — SHOW MORE / LESS
   ========================================================= */

.synmac-product-details__body {
  position: relative;
  overflow: hidden;
}


/* 1 visible line */

.synmac-product-details.has-read-more:not(.is-expanded)
[data-preview-lines="1"].synmac-product-details__body,
.synmac-product-details.has-read-more:not(.is-expanded)[data-preview-lines="1"]
.synmac-product-details__body {
  max-height: 1.65em;
}


/* 2 visible lines */

.synmac-product-details.has-read-more:not(.is-expanded)[data-preview-lines="2"]
.synmac-product-details__body {
  max-height: 3.3em;
}


/* 3 visible lines */

.synmac-product-details.has-read-more:not(.is-expanded)[data-preview-lines="3"]
.synmac-product-details__body {
  max-height: 4.95em;
}


/* 4 visible lines */

.synmac-product-details.has-read-more:not(.is-expanded)[data-preview-lines="4"]
.synmac-product-details__body {
  max-height: 6.6em;
}


/* Expanded */

.synmac-product-details.is-expanded
.synmac-product-details__body {
  max-height: none !important;
  overflow: visible;
}


/* Show More container */

.synmac-product-details__toggle-wrap {
  display: flex;
  justify-content: center;

  width: 100%;

  padding-top: 12px;
}


/* Button */

.synmac-product-details__toggle {
  padding: 4px 2px;

  border: 0;
  outline: 0;

  background: transparent;

  color: var(--synmac-text, #111827);

  font-family: inherit;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.2;

  cursor: pointer;
}


.synmac-product-details__toggle span {
  position: relative;

  display: inline-block;

  padding-bottom: 4px;
}


/* Animated underline */

.synmac-product-details__toggle span::after {
  content: "";

  position: absolute;

  left: 0;
  bottom: 0;

  width: 100%;
  height: 2px;

  background:
    var(--synmac-accent-2, currentColor);

  transform: scaleX(0);
  transform-origin: left center;

  transition:
    transform .35s cubic-bezier(.22, .8, .28, 1);
}


.synmac-product-details__toggle:hover span::after,
.synmac-product-details__toggle:focus-visible span::after {
  transform: scaleX(1);
}


/* If description is already short */

.synmac-product-details.no-overflow
.synmac-product-details__toggle-wrap {
  display: none;
}
/* =========================================================
   DORAN APP PLACEMENT — SYNMAC PRODUCT PRO
   ========================================================= */
.synmac-motivation-app {
  margin-top: var(--synmac-motivation-gap-top, 14px);
  margin-bottom: var(--synmac-motivation-gap-bottom, 14px);
}

.synmac-motivation-app > * {
  max-width: 100%;
}

.synmac-question-intro {
  margin: 0 0 14px;
  color: inherit;
}

.synmac-question-intro > :first-child {
  margin-top: 0;
}

.synmac-question-intro > :last-child {
  margin-bottom: 0;
}

.synmac-app-slot-note {
  padding: 12px 14px;
  border: 1px dashed #cbd5e1;
  border-radius: 8px;
  background: #f8fafc;
  color: #475569;
  font-size: 13px;
  line-height: 1.55;
}
