:root {
        --icon-heart: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'%3E%3Cpath d='M5.50781 3.80566C8.39055 2.48798 12.1676 2.90395 15.6396 6.51172L16 6.88574L16.3604 6.51172C19.8323 2.90401 23.6094 2.48838 26.4922 3.80664C29.4065 5.13939 31.5 8.28189 31.5 11.9844C31.5 15.7179 29.9627 18.5861 27.8223 20.9961C25.6648 23.4253 22.9356 25.349 20.5518 27.2266L20.5508 27.2275C19.7161 27.8869 18.9277 28.5007 18.1553 28.9521C17.3827 29.4037 16.6731 29.6631 16 29.6631C15.327 29.6631 14.6175 29.4028 13.8447 28.9512C13.0722 28.4997 12.2841 27.8864 11.4492 27.2285C9.06603 25.3492 6.3365 23.4255 4.17871 20.9961C2.03802 18.5858 0.5 15.7168 0.5 11.9824C0.500105 8.27928 2.59369 5.1378 5.50781 3.80566Z' stroke='%23CA002D'/%3E%3C/svg%3E");
        --icon-heart-filled: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32' fill='none'%3E%3Cpath d='M5.50781 3.80566C8.39055 2.48798 12.1676 2.90395 15.6396 6.51172L16 6.88574L16.3604 6.51172C19.8323 2.90401 23.6094 2.48838 26.4922 3.80664C29.4065 5.13939 31.5 8.28189 31.5 11.9844C31.5 15.7179 29.9627 18.5861 27.8223 20.9961C25.6648 23.4253 22.9356 25.349 20.5518 27.2266L20.5508 27.2275C19.7161 27.8869 18.9277 28.5007 18.1553 28.9521C17.3827 29.4037 16.6731 29.6631 16 29.6631C15.327 29.6631 14.6175 29.4028 13.8447 28.9512C13.0722 28.4997 12.2841 27.8864 11.4492 27.2285C9.06603 25.3492 6.3365 23.4255 4.17871 20.9961C2.03802 18.5858 0.5 15.7168 0.5 11.9824C0.500105 8.27928 2.59369 5.1378 5.50781 3.80566Z' stroke='%23CA002D' fill='%23CA002D' /%3E%3C/svg%3E");
    }
    p:empty {
     display: none;
    }
    .spec-list a{
         text-decoration: none; 
    }
    .accordion{
        border: 0.5px solid rgba(0, 0, 0, 0.2);   
    }
    
    .taste-profile{
        max-width: 100%;
    }
    .taste-profile__row{
            gap:8px;
        }
    .taste-profile__point{
        margin-bottom:0px;
    }

    .product-description p{
        margin-bottom: 21px;
    }
    .product-details .accordion{
        background: #fff;
    }
    .product-tile__title a{
        color: unset;
    }
    .purchase-controls__qty input:not([type=checkbox]):not([type=radio]):not([type=submit]){
        border: 1px solid transparent;
    }
        
      .product-meta__item.new,.product-meta__item.low {
        background: #000;
        color: #fff;
      }
      .product-tile__link{
        color: var(--link);
        text-transform: uppercase;
        line-height: 1;
      }
      .section-header, .reviews-summary__item-stars{
        color: var(--primary);
      }
      .reviews-summary__item-stars{
            white-space: nowrap;
      }

      .press-review__score{
        background: var(--review-score);
      }
      .section-header--icon-trophy:before {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='36' height='34' viewBox='0 0 36 34' fill='none'%3E%3Cpath d='M11.5 11.833H24.5V6.58301H11.5V11.833ZM17 20.6797L16.5762 20.6143C14.5352 20.3005 12.8524 19.4089 11.5068 17.9375C10.1667 16.472 9.5 14.751 9.5 12.75V5.66699C9.5 5.40118 9.58901 5.19661 9.77539 5.02051C9.96335 4.84299 10.1932 4.74932 10.499 4.75H25.5C25.8075 4.75 26.0385 4.8439 26.2266 5.02148C26.4128 5.19744 26.5006 5.40117 26.5 5.66504V12.75C26.5 14.751 25.8333 16.472 24.4932 17.9375C23.1476 19.4089 21.4648 20.3005 19.4238 20.6143L19 20.6797V27.417H22.5C22.8075 27.417 23.0385 27.5109 23.2266 27.6885C23.4128 27.8645 23.5006 28.0681 23.5 28.332V28.333C23.5 28.5988 23.411 28.8034 23.2246 28.9795C23.0367 29.157 22.8068 29.2507 22.501 29.25H13.5C13.1925 29.25 12.9615 29.1561 12.7734 28.9785C12.6104 28.8244 12.5228 28.649 12.5039 28.4307L12.5 28.335V28.333C12.5001 28.0673 12.589 27.8626 12.7754 27.6865C12.9633 27.5091 13.1933 27.4163 13.499 27.417H17V20.6797Z' fill='%23262517' stroke='%23262517'/%3E%3C/svg%3E");
      }  
      .nav__cart-btns .btn{
         padding: 12px 10px;
        font-weight: 700;
        border: 1px solid var(--primary-button);
      }
      #notify-me-form .btn--primary{
        padding: 12px 10px;
        border: 1px solid var(--primary-button);
        font-weight: 700;
      }
      .product .btn--soldout:hover {
            background: var(--disabled-button);
            color: var(--text-title-invert);
       }
      .product-pricing__prices small{
        color: var(--sale);
        text-transform: uppercase;
        font-size: 12px;
        margin-left: 10px;
      }
      .product-gallery__figure img {
         object-fit: cover;
        width: auto;
        height: auto;
        max-width: 100%;
        max-height: 100%;
       }
       .product-gallery__thumb-button{
            display: flex;
            justify-content: center;
            align-items: center;
            background: #fff;
       }
       .product-gallery__figure{
            background: #fff;
       }
       .product-gallery__thumb-button img{
            width: auto;
           /* height: auto;*/
       }
       .sale {
            background: var(--sale);
            color: #fff;
       }
       .product-gallery__awards li{
            margin-bottom: 0px;
       }
       .favorite-btn.ui-tooltip::after {
            top: 50%;
            right: calc(100% + var(--space-2xs));
            transform: translateY(-50%);
            color: var(--primary-d-1);
            text-transform: math-auto;
        }
        .product.wrap input:not([type=checkbox]):not([type=radio]):not([type=submit]), textarea{
            padding: 0px;
        }
       @media (min-width: 992px) {
            .wrap {
                padding-top: 130px;
            }
            .product-gallery__awards{
                gap: var(--space-xs);
            }
             .product-gallery__figure img {
                min-height: 420px;
            }
        }
        
        #modalRate .form-field input:not([type=checkbox]):not([type=radio]):not([type=submit]), #modalRate .form-field textarea, #notify-me-form .form-field input:not([type=checkbox]):not([type=radio]):not([type=submit]){
            height: 44px;
            padding: 0 12px;
            border-radius: 6px;
            border: 1px solid #262517;
            font-size: 14px;
            outline: none;
            transition: border 0.2s ease;
        }
        #modalRate .modal__container{
            background: #f5f5f5;
        }
        #modalRate .modal__container .btn--secondary{
            padding: var(--space-s);
            font-size: var(--text-s);    
        }
        #modalRate .modal__container .error-msg{
            color: var(--sale);    
        }
        #star{
            width: 24px!important;
            display: inline-flex;
        }
        .product-tile__title{
            display: -webkit-box;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            overflow: hidden;
            text-overflow: ellipsis;
        }
        .btn--soldout.notifyme {
            width: 100%!important;
        }
        .product-pricing-casenotes small{
           font-size: 70%;  
           color: var(--sale);
           text-transform: uppercase;
        }
        .product-recs .product-meta__list{
            justify-content: left;
        }
        
        .btn--primary{
            font-weight: 500; 
        }
        .accordion__summary{
            font-weight: 600; /*500 have issues rendering */
         
        }
        .reviews-summary__score{
            white-space: nowrap;
        }


        
        /* Add to cart changes*/
        .purchase-controls__cart-button .text{
            margin-right:10px;
        }
        .purchase-controls__cart-button{
          display:inline-flex;
            align-items:center;
            justify-content:center;
            position:relative;
      }

       .purchase-controls__cart-button .arrow{
            width:16px;
            height:16px;
            stroke:currentColor;
            stroke-width:2;
            fill:none;
            opacity:0;
            transform:translateX(-8px);
            transition:all .35s ease;
        }
        .purchase-controls__cart-button .text{
            transition:transform .35s ease;
            letter-spacing: 0.32px;
        }

        .purchase-controls__cart-button .cart-icon{
            transition:all .35s ease;
        }

        .purchase-controls__cart-button:hover .arrow{
            opacity:1;
            transform:translateX(0);
        }

        .purchase-controls__cart-button:hover .text{
            transform:translateX(12px);
        }

        .purchase-controls__cart-button:hover .cart-icon{
            opacity:0;
            transform:translateX(10px);
        }
        .product-info {
           font-size: 16px;  
        }
        .product-pricing__price,.product-pricing__price-new{
           font-size: 20px;
           font-weight: 600; 
        }
        .product-pricing__price span, .product-pricing__price-new span{
            font-size: 14px;
        }
        .purchase-controls__cart-button{
           font-size: 16px; 
        }
        .product-description div {
            font-size: 18px;
            margin-bottom: 21px;
        }
        .product-meta__score-label{
            font-size: 8px;
        }
        .product-recs__viewport .product-pricing__prices{
            font-size: 16px;
        }
        .spec-list__row.single{
            display: inline-block;   
            border-bottom: none;
            padding-bottom: 0px;
        }
        .spec-list__row.single .spec-list__label {
            border-bottom: 1px solid #d0d0d0;
            margin-bottom: 10px;
            padding-bottom: 5px;
        }
        
        .product-pricing, .product-description{
            margin-left: 20px;
        }
        .product-info__header, .product-meta{
            margin-left: 4px;
        }
        .spec-list__row:not(.single) {
           padding-bottom: 8px;
        }
        .taste-profile__name{
            flex: 0 0 155px;
            font-size: var(--text-s);
        }
        .product-meta__list, .product-meta__actions{
            gap: 10px;
        }
        .spec-list__value,.reviews-summary__item-text,.press-review__content p{
            font-size: var(--text-xs);
        }
        .press-review__title{
            font-size: var(--text-m);
        }
        .press-reviews__list{
            gap : 10px
        }
        li.press-review{
            margin-bottom: 0px;
        }
        .reviews-summary__list{
            gap: 8px;
        }
        .reviews-summary__item-title{
            font-size: var(--text-m);
        }
        .reviews-summary__item-meta{
            font-size: var(--text-2xs);
        }
        .reviews-summary__stars{
            white-space: nowrap;
        }

         @media (max-width: 992px) {
        .wrap {
            padding-top: 122px;
        }
        .product-meta__list, .product-meta__actions{
            justify-content: flex-start;
        }
        .press-review__content p,.reviews-summary__item-text{
            font-size: 16px;
        }
        .press-review__title,.reviews-summary__item-title{
            font-size: 18px;
        }
        .reviews-summary__item-meta{
            font-size: 14px;
        }
        .taste-profile__row{
            gap:8px;
        }
        .taste-profile__name{
            flex: 0 0 104px;
        }
         .reviews-summary__summary-meta{
            flex-direction: column;
        }
        .taste-profile__scale-start, .taste-profile__scale-end{
            font-size: 16px;
            min-width: 50px;
        }
         .product-gallery__figure img{
            object-fit: contain;
            width: 100%;
            height: 100%;
        }
        .purchase-controls__cart-button{
            padding: 10px 0px;
        }
        .purchase-controls__cart-button .arrow{
            display: none;
        }
        .purchase-controls__cart-button:hover .arrow{
            display: inline-block;
        }


    }
/* =========================
   ROW (FLEX ONLY)
   ========================= */
/* Low / High */
/*
.taste-profile__scale-start,
.taste-profile__scale-end {
  width: 60px;
  text-align: center;
  margin: 0;
}
*/
/* =========================
   POINTS (CENTERED)
   ========================= */
.taste-profile__pointsv2 {
  width: 360px;
  display: flex;
  justify-content: space-between; /* 🔥 even dot spacing */
  align-items: center;
  list-style: none;
  padding: 4px;
  margin: 0 auto; /* centers between Low & High */
}

/* Each point */
.taste-profile__pointv2 {
  position: relative;
  margin-bottom: 0px;
}

/* BIG DOT */
.taste-profile__pointv2::before {
  content: "";
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: var(--neutral);
  display: block;
}

/* CONNECTOR (FIXED) */
.taste-profile__pointv2:not(:last-child)::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  transform: translateY(-50%);
  width: 60px; /* adjust for perfect spacing */
  height: 6px;

  background-image: radial-gradient(circle, var(--neutral) 1.8px, transparent 2px);
  background-size: 12px 6px;
  background-repeat: repeat-x;
}

/* ACTIVE */
.taste-profile__pointv2--active::before {
  background: var(--accent);
}

/* ABOVE ACTIVE */
.taste-profile__pointv2:has(~ .taste-profile__pointv2--active)::before {
  background: var(--accent-50);
}

/* CONNECTOR ABOVE ACTIVE */
.taste-profile__pointv2:has(~ .taste-profile__pointv2--active)::after {
  background-image: radial-gradient(circle, var(--accent-50) 1.8px, transparent 2px);
}

/* CONNECTOR AFTER ACTIVE */
.taste-profile__pointv2--active::after {
  background-image: radial-gradient(circle, var(--accent) 1.8px, transparent 2px);
}

/* =========================
   MOBILE
   ========================= */
@media (max-width: 480px) {
   .taste-profile__pointv2::before {
    width: 12px;
    height: 12px;
  } 

  .taste-profile__pointsv2 {
    width: 100%;
  }
    
  /* ONE DOT ONLY */
  .taste-profile__pointv2:not(:last-child)::after {
    width: 100%;
    background: radial-gradient(circle, var(--neutral) 2px, transparent 2px);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 6px 6px;
  }

  .taste-profile__pointv2:has(~ .taste-profile__pointv2--active)::after {
    background: radial-gradient(circle, var(--accent-50) 2px, transparent 2px);
  }

  .taste-profile__pointv2--active::after {
    background: radial-gradient(circle, var(--accent) 2px, transparent 2px);
  }

}

@media (max-width: 375px) {
    .taste-profile__pointv2:not(:last-child)::after{
        height: 0px;
    }
}    
