/** Shopify CDN: Minification failed

Line 2372:3 Unexpected "{"

**/
/* ============ Base ============ */
:root {
  --red: #cc0100;
  --maroon: #7B0000;
  --dark: #121212;
  --text: #1a1a1a;
  --text-muted: #4a4a4a;
  --bg: #fff;
  --bg-cream: #fbfaf5;
  --card: #ffffff;
  --border: #A5A5A5;
  --radius-lg: 50px;
  --radius-md: 18px;
  --font: 'DM Sans', 'Helvetica Neue', Arial, sans-serif;
  --font-heading-family: 'DM Sans', 'Helvetica Neue', Arial, sans-serif;
  --red-1000: #7b0000;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  font-family: var(--font);
  font-size: 16px;
  line-height: 1.5;
  color: var(--text);
  background: var(--bg)!important;
}

ul,li{
  list-style-position: inside
}

/* ============ Headings ============ */
.h1, .h2, .h3, .h4 {
  font-family: var(--font);
  letter-spacing: 0;
}

.h1 {
  font-size: 90px;
  font-weight: 600;
  line-height: .95;
}

.h2 {
  font-size: 60px;
  font-weight: 600;
  line-height: 1;
}

.h3 {
  font-size: 42px;
  font-weight: 600;
  line-height: .95;
}

.h4 {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.6;
}
@media ( max-width:1200px){
  .h1 {
    font-size: 48px;
    font-weight: 600;
    line-height: .95;
  }
}
@media (max-width:900px){
  .h1 {
    font-size: 32px;
    font-weight: 600;
    line-height: .95;
  }

  .h2 {
    font-size: 28px;
    font-weight: 600;
    line-height: 1;
  }

  .h3 {
    font-size: 22px;
    font-weight: 600;
    line-height: .95;
  }

  .h4 {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.6;
  }
}

img {
  display: block;
  max-width: 100%;
}

a {
  color: inherit;
  text-decoration: none;
}

button {
  font-family: inherit;
  cursor: pointer;
  background: none;
  border: none;
  color: inherit;
}

/* Shopify helpers */
.card-form {
  display: contents;
}

.placeholder-svg {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.visually-hidden {
  position: absolute !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

/* ============ Buttons ============ */
.btn,
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 16px 36px;
  border-radius: 999px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  border: 1px solid transparent;
  transition: background .2s, color .2s, border-color .2s;
  letter-spacing:0;
}

.button:before,
.button:after{
  content:none;
}

.btn--red {
  background: var(--red);
  color: #fff;
}

.btn--red:hover {
  background: #7B0000;
}

.shopify-payment-button__button--unbranded{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 16px 36px;
  border-radius: 999px!important;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.6;
  border: 1px solid transparent;
  transition: background .2s, color .2s, border-color .2s;
  background: #CC0100;
}
.shopify-payment-button__button--unbranded:hover{
  background: #7B0000;
}
.product-card .shopify-payment-button__button--unbranded{
  background: none!important;
  color:#000;
  height:58px;
}

.pdp__info .shopify-payment-button__button--unbranded{
  height:70px;
  background: var(--red)
}

@media (max-width:700px){
  .pdp__info .shopify-payment-button__button--unbranded{
    height:61px;
  }
}

.pdp__info .shopify-payment-button:hover .shopify-payment-button__button--unbranded{
  background-color: var(--maroon);
}
.shopify-payment-button__button--unbranded:hover,
.shopify-payment-button__button--unbranded:hover:not([disabled]){
  background-color: var(--maroon);
}


.shopify-payment-button__button--unbranded:after{
  border-radius: 999px!important;
}

.product-card .shopify-payment-button__button--unbranded{
  background: none!important;
  color:
  #000;
}
.shopify-payment-button__button--unbranded:after{
  --color-button: #000;
  
  border-radius: 999px!important;
}
.shopify-payment-button .shopify-payment-button__button--unbranded:after{
  border:1px solid #A5A5A5;
}

.shopify-payment-button:hover .shopify-payment-button__button--unbranded:after{
  border:1px solid #515151;
}

.btn--outline-light {
  border-color: rgba(255, 255, 255, .5);
  color: #fff;
}

.btn--outline-light:hover {
  border-color: #fff;
}

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

.btn--outline:hover {
  background:#000;
  color:#fff;
  border-color: var(--text);
}

.btn--dark {
  background: var(--dark);
  color: #fff;
}

.btn--dark:hover {
  background: #333;
}

.btn--maroon {
  background: var(--maroon);
  color: #fff;
}

.btn--maroon:hover {
  background: #641011;
}

.btn--sm {
  padding: 12px 26px;
  font-size: 14px;
}

.btn__plus {
  font-size: 17px;
  font-weight: 400;
}

.btn[disabled] {
  opacity: .5;
  cursor: not-allowed;
}

/* ============ Hero ============ */
.hero {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  padding: 75px 70px;
  padding-top:0;
  background-color: #F3F3F3;
}

.hero__card {
  border-radius: 40px;
  overflow: hidden;
  min-height: 640px;
}

.hero__card--text {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 60px;
  background-color: #0d0605;
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 100% 100%, 100% auto;
  color: #fff;
}

.hero__rating {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 28px;
}

.stars {
  display: inline-flex;
  align-items: center;
  gap: 3px;
  color: var(--red);
}

.stars svg {
  width: 11px;
  height: 14px;
  flex-shrink: 0;
}

.hero__rating-text {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0;
  text-transform: uppercase;
}

.hero__title {
  margin-bottom: 24px;
  color:#fff;
}

.hero__desc {
  max-width: 537px;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing:0;
  color: rgba(255, 255, 255, .92);
  margin-bottom: 34px;
}

.hero__buttons {
  display: flex;
  gap: 16px;
}

.hero__card--image {
  display: grid;
  place-items: center;
}

.hero__card--image img,
.hero__card--image svg {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 375px){
  .hero__rating{
    gap:15px;
  }
}

/* ============ Benefits ============ */
.benefits {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  padding: 75px 70px 120px 70px;
  background-color: #F3F3F3;
}

.benefits__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  font-size: 24px;
  font-weight: 400;
  text-align: center;
  padding: 0px 16px;
}

.benefits__item + .benefits__item {
  border-left: 1px solid #c9c9c7;
}

.benefits__icon {
  display: block;
  width: 34px;
  height: 34px;
  color: var(--maroon);
  object-fit: contain;
}

.benefits__icon > svg {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/* ============ Sections ============ */
.section {
  padding: 50px 70px;
}

.section__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 80px;
}

.section__head .section__title {
  margin-bottom: 0;
}



.section__title {
  font-family: var(--font);
  font-size: clamp(32px, 4vw, 60px);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0;
  margin-bottom: 80px;
}

.section__title--center {
  text-align: center;
}

.section--cta {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-template-areas:
    "title cta"
    "grid  grid";
  align-items: center;
  column-gap: 24px;
  row-gap: 48px;
}

.section--cta .section__title {
  grid-area: title;
  margin-bottom: 0;
}

.section--cta .products-grid,
.section--cta product-recommendations {
  grid-area: grid;
}

.section--cta .section__cta {
  grid-area: cta;
  justify-self: end;
  align-self: center;
}

.section__cta:hover{
  background:initial;
  color:initial;
  border-color:#515151;
}

@media (max-width:1200px){
  .section{
    padding:36px;
  }
}

@media (max-width:900px){
  .section{
    padding:36px;
  }
  .section__title{
    margin-bottom:20px;
  }
}

@media (max-width:700px){
  .section{
    padding:60px 15px;
  }
  .section__title{
    margin-bottom:20px;
  }
}



/* ============ Category cards (goal / brand) ============ */
.cards-grid {
  display: grid;
  grid-template-columns: repeat(var(--cards-columns, 3), 1fr);
  gap: 20px;
}

.category-card {
  display: flex;
  flex-direction: column;
  background: var(--card);
  border: 1px solid #A5A5A5;
  border-radius: var(--radius-lg);
  padding: 10px 10px 40px 10px;
}
.category-card:hover{
  border: 1px solid #515151;
  transition:all 0.25s;
  transform: translateY(-10px);
}
.category-card__img {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 40px;
  aspect-ratio: 41/53;
}

.category-card__title {
  text-align: center;
  margin: 28px 0;
}


.category-card__bottom{
  padding:0px 30px;
}
.category-card__btn {
  width: 100%;
  font-size: 16px;
  line-height:1.6;
  padding: 16px 24px;
  margin-top: auto;
  font-weight:600;
}

@media (max-width:900px){
  .category-card__title{
    margin: 14px 0;
  }

  .category-card__btn{
    padding:8px 12px;
    text-align:center;
  }  
}

/* ============ Promo banner ============ */
.promo {
  padding: 120px 70px;
  background-color: #F3F3F3;
}

.promo__banner {
  min-height: 550px;
  display: flex;
  align-items: center;
  border-radius: 40px;
  background-color: #0c0403;
  background-repeat: no-repeat;
  background-position: center, right center, left center;
  background-size: cover;
  color: #fff;
  padding: 64px;
}

.promo__title {
  color:#fff;
  margin-bottom: 10px;
  text-transform: uppercase;
}

.promo__subtitle{
  font-style: italic;
  text-transform: capitalize;
  color:#fff;
  font-weight: 400;
  margin-bottom: 15px;
}

.promo__desc {
  font-size: 16px;
  font-weight: 300;
  text-transform: capitalize;
  line-height: 1.3;
  letter-spacing:0;
  color: #fff;
  margin: 0 0 30px;
  max-width: 192px;
}
@media (max-width:1200px){
  .promo{
    padding:36px;
  }
}
@media (max-width:700px){
  .promo {
    padding: 15px;
    background-color: #F3F3F3;
  }
}


/* ============ Products ============ */
.products-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

.product-card {
  display: flex;
  flex-direction: column;
  background: var(--card);
  border: 1px solid #A5A5A5;
  border-radius: 50px;
  padding: 10px 10px 30px 10px;
}
.product-card:hover{
  border: 1px solid #515151;
}
.product-card--active {
  border-color: #b9b9b7;
}

.product-card__media {
  display: grid;
  place-items: center;
  min-height: 300px;
  margin-bottom: 28px;
  border-radius: 40px;
  overflow: hidden;
}

.product-card__media img,
.product-card__media svg {
  max-height: 380px;
  object-fit: contain;
  border-radius:40px;
}

.product-card__title {
  font-size: 20px;
  line-height:1.6;
  font-weight: 400;
  margin-bottom: 12px;
  height: 2lh;
  text-overflow: ellipsis;
  text-transform: capitalize;
}
.product-card__bottom{
  padding:0px 20px;
}
.product-card__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 28px;
}

.product-card__price {
  font-size: 20px;
  line-height:1.6;
  font-weight: 600;
}

.qty {
  display: flex;
  align-items: center;
  gap: 14px;
  font-size: 16px;
}

.qty__btn {
  font-size: 18px;
  line-height: 1;
  padding: 4px;
  color: var(--text);
  transition: color .2s;
}

.qty__btn:hover {
  color: var(--red);
}

.qty__value {
  min-width: 16px;
  text-align: center;
  font-weight: 500;
  border: none;
  width: 30px;
  background: none;

}

/* Chrome, Safari, Edge, Opera */
input.qty__value::-webkit-outer-spin-button,
input.qty__value::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

/* Firefox */
input[type=number] {
  -moz-appearance: textfield;
}

.product-card__buy {
  width: 100%;
  margin-bottom: 10px;
  font-size: 14px;
  padding: 13px 24px;
}

.product-card__cart {
  width: 100%;
  font-size: 16px;
  padding: 14px 24px;
  margin-top:12px;
  text-transform: capitalize;
}
.product-card__cart:hover{
  background: var(--red-1000);
}

/* ============ Reviews ============ */
.reviews {
  padding: 120px 70px;
  background-color: #F3F3F3;
}

.reviews__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-bottom: 80px;
}

.reviews__grid > :nth-child(n+3) {
  display: none;
}

.review-card {
  background: var(--card);
  border-radius: 40px;
  padding: 40px 44px;
}

.stars--maroon {
  color: var(--maroon);
  gap: 2px;
}

.stars--maroon svg {
  width: 22px;
  height: 29px;
}

.review-card__text {
  margin: 20px 0 21px;
}

.review-card__author {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 20px;
  font-weight: 600;
  line-height:1.6;
}

.review-card__avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
}

.reviews__controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 36px;
}

.reviews__arrow {
  display: grid;
  place-items: center;
  width: 84px;
  height: 64px;
  border: 1px solid var(--border);
  border-radius: 999px;
  transition: border-color .2s;
}

.reviews__arrow:hover {
  border-color: var(--text);
}

.reviews__dots {
  display: flex;
  align-items: center;
  gap: 18px;
}

.reviews__dot {
  position: relative;
  width: 30px;
  height: 30px;
  border: 1px solid #b5b5b3;
  border-radius: 50%;
  transition: border-color .2s;
}

.reviews__dot--active {
  border-color: var(--maroon);
}

.reviews__dot--active::after {
  content: "";
  position: absolute;
  inset: 5px;
  border-radius: 50%;
  background: var(--maroon);
}

@media (max-width:1200px){
  .reviews{
    padding:36px;
  }
}
@media (max-width:900px){
  .reviews{
    padding:36px;
  }
}

@media (max-width:700px){
  .reviews{
    padding:60px 15px;
  }
  .reviews__dot{
    width:12px;
    height:12px;
  }
}

/* ============ FAQ ============ */
.faq {
  display: grid;
  grid-template-columns: 1fr 1.48fr;
  gap: 48px;
  padding: 120px 70px;
}

.faq__title {
  max-width: 505px;
  margin-bottom: 0;
}

.faq__item {
  border-bottom: 1px solid #d4d4d2;
}

.faq__item:first-child {
  border-top: 1px solid #d4d4d2;
}

.faq__question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 26px 4px;
  list-style: none;
  cursor: pointer;
  transition: color .2s;
}

.faq__question::-webkit-details-marker {
  display: none;
}

.faq__question:hover {
  color: var(--maroon);
}

.faq__chevron {
  flex-shrink: 0;
  transition: transform .25s;
}

.faq__item[open] .faq__question {
  color: var(--maroon);
}

.faq__item[open] .faq__chevron {
  transform: rotate(180deg);
}

.faq__answer {
  padding: 0 0px 30px 0px;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.6;
  color: var(--text-muted);
  letter-spacing:0;
}

@media(max-width:900px ){
  .faq__answer{
    font-size:16px;
  }
}

/* ============ Footer ============ */
.footer {
  background: var(--bg-cream);
}

.footer__social {
  display: flex;
  justify-content: center;
  gap: 28px;
  padding: 36px 20px;
}

.footer__social-link {
  display: grid;
  place-items: center;
  color: var(--dark);
  transition: color .2s;
}

.footer__social-link:hover {
  color: var(--red);
}

.footer__bottom {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  border-top: 1px solid #e3e2dd;
  padding: 48px 40px 32px;
}

.footer__region {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.footer__region-label {
  font-size: 13px;
  color: #6f6f6d;
}

.footer__region-select {
  appearance: none;
  -webkit-appearance: none;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 14px 40px 14px 20px;
  border: 1px solid #b9b9b7;
  border-radius: 8px;
  font-size: 14px;
  font-family: inherit;
  color: var(--text);
  background: transparent url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%231a1a1a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 16px center;
  cursor: pointer;
  transition: border-color .2s;
}

.footer__region-select:hover {
  border-color: var(--text);
}

.footer__payments {
  display: flex;
  gap: 8px;
}

.footer__payments svg {
  width: 38px;
  height: 24px;
  border-radius: 3.5px;
}

.footer__legal {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 6px 10px;
  padding: 12px 20px 40px;
  font-size: 12px;
  color: #6f6f6d;
}

.footer__legal a:hover {
  text-decoration: underline;
}

.footer__dot {
  color: #9c9c9a;
}

/* ============ Breadcrumbs ============ */
.breadcrumbs {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  padding: 20px 0px 40px 0px;
  color: #6f6f6d;
}

.breadcrumbs__link {
  transition: color .2s;
}

.breadcrumbs__link:hover {
  color: var(--red);
}

.breadcrumbs__sep {
  color: #9c9c9a;
}

.breadcrumbs__current {
  color: var(--text-muted);
}

/* ============ PDP layout ============ */
.pdp {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 60px;
  align-items: start;
}
.pdp__restore{
  background:#f3f3f3;
  padding:0px 70px 140px;
}
.pdp__gallery .product__media-wrapper{
    width:100%!important;
    max-width:100%!important;
}
@media (max-width:1100px){
  .pdp__gallery .product__media-wrapper{
    padding:15px;
  }
}

@media (min-width:1100px){

  .product__media-list{
    border-radius:40px;
    overflow:hidden;
    --aspect-ratio:1.084;
  }
  .product__media-list .product__media{
    border-radius:40px;
    overflow:hidden;
    --aspect-ratio:1.084;
  }
  
}
@media (max-width:700px){
  .product-media-container.constrain-height.media-fit-contain{
    width:
  }
  .pdp__gallery{
    padding:15px;
  }
}


.pdp__gallery .product__media-list{
  padding:0!important;
}

.pdp__gallery .product__media-toggle:after{

}

@media (max-width:1200px){
  .pdp__restore{
    padding:36px;
  }
}

@media (max-width:700px){
  .pdp__restore{
    padding:15px;
  }
}
/* ---- Gallery ---- */
.pdp__gallery {
  position: sticky;
  top: 16px;
}

.gallery__main {
  border-radius: var(--radius-lg);
  overflow: hidden;
}

.gallery__main img,
.gallery__main svg {
  width: 100%;
  height: auto;
  aspect-ratio: 880 / 806;
  object-fit: cover;
}

.gallery__thumbs {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 18px;
  margin-top: 22px;
}

.gallery__thumb {
  padding: 0;
  border-radius: 18px;
  overflow: hidden;
  border: 2px solid transparent;
  transition: border-color .2s;
}

.gallery__thumb img {
  width: 100%;
  height: auto;
  aspect-ratio: 110 / 132;
  object-fit: cover;
}

.gallery__thumb:hover,
.gallery__thumb--active {
  border-color: var(--maroon);
}


.pdp__gallery.product--thumbnail_slider{
  padding-bottom:80px;
}

.pdp__gallery.product--thumbnail_slider .slider-mobile-gutter .slider-button{
  width:52px;
  height:52px;
  display:block;
  border-radius:100%;
  border:1px solid #a5a5a5;
  background:none;
  
}
.pdp__gallery.product--thumbnail_slider .slider-mobile-gutter .slider-button.slider-button--prev{
  position: absolute;
  bottom: -70px;
  left: 40%;
}
.pdp__gallery.product--thumbnail_slider .slider-mobile-gutter .slider-button.slider-button--next{
  position: absolute;
  bottom: 0;
  left: 55%;
  bottom:-70px
}

.pdp__gallery .product__media-icon, .thumbnail__badge{
  top:auto;
  left:auto;
  bottom:40px;
  right:40px;
  background:#000;
  width:70px;
  height:70px;
}

.pdp__gallery .global-media-settings:after{
  display:none;
}
.pdp__gallery .product-media-container,
.pdp__gallery .product-media-container .product__modal-opener{
  border-radius:40px;
}

@media (max-width:1200px){
  .pdp__gallery .product__media-icon, .thumbnail__badge{
    width:40px;
    height:40px;
  }
}
@media (max-width:900px){
  .pdp__gallery .product__media-icon, .thumbnail__badge{
    width:30px;
    height:30px;
  }
  .product__media-icon.motion-reduce.quick-add-hidden.product__media-icon--lightbox .svg-wrapper{
    width:16px;
    height:16px;
  }
}

@media (max-width:700px){

  .pdp__gallery.product--thumbnail_slider{
    padding:0;
  }
  .pdp__gallery.product--thumbnail_slider .slider-mobile-gutter .slider-button{
    display:none!important;
  }
  .pdp__gallery .slider.slider--mobile{
    scroll-padding-left:0;
  }
  .pdp__gallery .product__media-list .product__media-item{
    width:100%;
  }
}
/* ---- Info column ---- */
.pdp__badge {
  display: inline-block;
  align-self: flex-start;
  padding: 4px 16px;
  border: 1px solid var(--maroon);
  border-radius: 999px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing:0;
  text-transform: uppercase;
  color: var(--maroon);
  margin-bottom: 26px;
}

.pdp__info {
  display: flex;
  flex-direction: column;
  align-items: stretch;
}
.pdp__info .shopify-payment-button .shopify-payment-button__button--unbranded:after{
  border:none;
}

.pdp__title {
  margin-bottom: 26px;
  color:#110F10;
  text-transform: capitalize;
}

.pdp__price {
    font-size: 28px;
    font-weight: 600;
    margin-bottom: 42px;
    line-height: 0.95;
}

.pdp__price s {
  margin-left: 10px;
  font-size: 18px;
  color: var(--text-muted);
}

.pdp__features {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  list-style: none;
  margin-bottom: 26px;
  line-height:1.6;
}
@media (max-width:1200px){
  .pdp__features{
    flex-wrap:wrap;
    gap:8px;
  }
}
.pdp__feature {
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: 16px;
  font-weight: 600;
  padding-right: 45px;
  letter-spacing:0;
}

.pdp__feature + .pdp__feature {
  padding-left: 24px;
  border-left: 1px solid #cfcfcd;
}

.pdp__feature-icon {
  width: 24px;
  height: 24px;
  color: var(--red);
  flex-shrink: 0;
}

.pdp__rating {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 48px;
}
.pdp__rating .stars{
  color:#110F10;
}
@media(max-width:700px){
  .pdp__rating{
    flex-wrap:wrap;
    margin-bottom:15px;
  }
  .pdp__feature-icon {
    width: 16px;
    height: 16px;
  }
}

.pdp__rating-text {
  font-size: 14px;
  font-weight: 600;
}

/* ---- Variants ---- */
.pdp__variants {
  margin-bottom: 24px;
}

.pdp__variant-select {
  width: 100%;
  appearance: none;
  -webkit-appearance: none;
  padding: 14px 44px 14px 20px;
  border: 1px solid var(--border);
  border-radius: 999px;
  font-size: 15px;
  font-family: inherit;
  color: var(--text);
  background: #fff url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%231a1a1a' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 20px center;
  cursor: pointer;
}

/* ---- Buy controls ---- */
.pdp__buy {
  display: flex;
  align-items: stretch;
  gap: 20px;
  margin-bottom:20px;
}

.qty--pill {
  gap: 6px;
  padding: 12px 24px;
  border: 1px solid var(--border);
  border-radius: 999px;
  background: transparent;
}
.qty--pill:hover{
 border: 1px solid #515151;
}


.pdp__wish {
  flex-shrink: 0;
  display: grid;
  place-items: center;
  width: 70px;
  height: 70px;
  border: 1px solid var(--border);
  border-radius: 50%;
  color: var(--text);
  transition: color .2s, border-color .2s;
}

.pdp__wish:hover {
  color: var(--red);
  border-color: #515151;
}

.pdp__add {
  flex: 1;
  min-height: 70px;
}
.pdp__add:hover{
  background:var(--maroon);
}

.pdp__buy-now {
  width: 100%;
  min-height: 70px;
  margin-top: 20px;
}

.pdp__divider {
  display:block!important;
  border-top: 1px solid #cfcfcd;
  margin: 54px 0;
}

@media (max-width:700px){
  .pdp__wish{
    width:48px;
    height:48px;
  }
}

/* ---- Trust bar ---- */
.pdp__trust {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  background: #fff;
  border-radius: 999px;
  padding: 20px 12px;
  margin-bottom: 36px;
}

.pdp__trust-item {
  display: flex;
  flex-wrap:wrap;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-weight: 600;
  text-align: center;
  letter-spacing:0;
}

.pdp__trust-item + .pdp__trust-item {
  border-left: 1px solid #e3e2dd;
}

.pdp__trust-icon {
  width: 20px;
  height: 20px;
  color: var(--red);
  flex-shrink: 0;
}

@media (max-width:700px){
  .pdp__trust-icon{
    width: 16px;
    height: 16px;
  }
}

/* ---- Description ---- */
.pdp__desc {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  color: var(--text-muted);
  padding-bottom: 36px;
  letter-spacing:0;
}

.pdp__desc p {
  margin-bottom: 18px;
}

.pdp__desc ul {
  padding-left: 20px;
}

.pdp__desc li + li {
  margin-top: 4px;
}

/* ============ Accordion sections ============ */
.acc {
  border-top: 1px solid #cfcfcd;
}

.acc__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 30px 0;
  list-style: none;
  cursor: pointer;
}

.acc__head::-webkit-details-marker {
  display: none;
}

.acc:hover .acc__title {
  color:var(--maroon);
}

.acc__chevron {
  flex-shrink: 0;
  transition: transform .25s;
}

.acc[open] .acc__chevron {
  transform: rotate(180deg);
}

.acc__body {
  padding-bottom: 44px;
}

.acc__text {
  font-size: 15px;
  font-weight: 300;
  line-height: 1.7;
  color: var(--text-muted);
  margin-bottom:30px;
}

.acc__text p {
  margin-bottom: 20px;
}

/* ---- Pro tip callout ---- */
.pro-tip {
  border: 1.5px solid var(--maroon);
  border-radius: 40px;
  padding: 30px;
  margin-bottom: 28px;
}

.pro-tip__label {
  font-size: 16px;
  font-weight: 600;
  color: var(--maroon);
  margin-bottom: 6px;
}

.pro-tip__text {
  font-size: 15px;
  font-weight: 300;
  line-height: 1.65;
  color: var(--text-muted);
}

/* ---- User manual card ---- */
.manual-card {
  background: #fff;
  border-radius: 24px;
  padding: 30px;
  margin-top: 28px;
}

.manual-card__title {
  color: var(--maroon);
  font-size: 16px;
  font-weight: 600;
  margin-bottom: 10px;
}

.manual-card__text {
  font-size: 15px;
  font-weight: 300;
  line-height: 1.65;
  color: var(--text-muted);
  margin-bottom: 20px;
}

.manual-card__link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-size: 15px;
  font-weight: 600;
  color: var(--maroon);
  transition: color .2s;
}

.manual-card__link:hover {
  color: var(--red);
}

/* ---- How it works steps ---- */
.steps {
  list-style: none;
}

.steps__item {
  position: relative;
  display: flex;
  align-items: flex-start;
  gap: 24px;
}

.steps__item + .steps__item {
  margin-top: 34px;
}

.steps__item + .steps__item::before {
  content: "↓";
  position: absolute;
  left: 24px;
  top: -30px;
  font-size: 15px;
  color: var(--maroon);
}

.steps__num {
  flex-shrink: 0;
  display: grid;
  place-items: center;
  width: 62px;
  height: 62px;
  border: 1px solid var(--maroon);
  border-radius: 50%;
  font-size: 15px;
  color: var(--maroon);
}

.steps__title {
  font-size: 20px;
  letter-spacing: 0;
  font-weight: 600;
  margin-bottom: 4px;
  line-height: 1.6;
}

.steps__text {
  font-size: 16px;
  font-weight: 400;
  letter-spacing:0;
  color: var(--text-muted);
}

/* ---- Key benefits ---- */
.benefit-list {
  list-style: none;
}

.benefit-list__item {
  display: flex;
  align-items: center;
  gap: 22px;
}

.benefit-list__item + .benefit-list__item {
  margin-top: 30px;
}

.benefit-list__icon {
  flex-shrink: 0;
  display: grid;
  place-items: center;
  width: 62px;
  height: 62px;
  background: #fff;
  border-radius: 50%;
  color: var(--maroon);
}
.benefit-list__icon img{
  width:24px;
  height:auto;
  max-height:24px;
}

.benefit-list__title {
  font-size: 20px;
  font-weight: 600;
  margin: 4px 0 4px;
  letter-spacing:0;
}

.benefit-list__text {
  font-size: 16px;
  letter-spacing:0;
  font-weight: 300;
  color: var(--text-muted);
}

/* ---- Product specs ---- */
.specs {
  width: 100%;
  border-collapse: collapse;
  font-size: 15px;
}

.specs th {
  text-align: left;
  font-weight: 600;
  padding: 0 0 16px;
}

.specs td {
  padding: 13px 0;
  border-top: 1px solid #dcdcda;
  font-weight: 300;
  color: var(--text-muted);
}

.specs th:first-child,
.specs td:first-child {
  width: 44%;
  padding-right: 24px;
}

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

/* ---- PDP FAQ ---- */
.pdp-faq {
  border-top: 1px solid #dcdcda;
}

.pdp-faq__item {
  border-bottom: 1px solid #dcdcda;
}

.pdp-faq__item:first-child {
  border-top: none;
}

.pdp-faq__question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 20px 2px;
  font-size: 16px;
  font-weight: 600;
  list-style: none;
  cursor: pointer;
  transition: color .2s;
}

.pdp-faq__question::-webkit-details-marker {
  display: none;
}

.pdp-faq__question:hover {
  color: var(--maroon);
}

.pdp-faq__plus {
  position: relative;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
}

.pdp-faq__plus::before,
.pdp-faq__plus::after {
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;
  background: currentColor;
  transition: transform .25s;
}

.pdp-faq__plus::before {
  width: 16px;
  height: 1.6px;
}

.pdp-faq__plus::after {
  width: 1.6px;
  height: 16px;
}

.pdp-faq__item[open] .pdp-faq__plus::after {
  transform: rotate(90deg);
}

.pdp-faq__answer {
  padding: 0 40px 24px 2px;
  font-size: 15px;
  font-weight: 300;
  line-height: 1.65;
  color: var(--text-muted);
}

/* ---- PDP reviews ---- */
.pdp-review {
  background: #fff;
  border-radius: 24px;
  padding: 32px 36px;
}

.pdp-review + .pdp-review {
  margin-top: 22px;
}

.pdp-review__text {
  font-size: 17px;
  font-weight: 300;
  line-height: 1.55;
  margin: 16px 0 24px;
}

.pdp-review__author {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: 15px;
  font-weight: 500;
}

.pdp-review__avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
}

/* ============ You may also like ============ */
.also-like {
  background: #fff;
}

.also-like__inner {
  
}

.also-like__head {
  margin-bottom: 64px;
}

.also-like__title {
  font-size: clamp(38px, 3.4vw, 56px);
  font-weight: 500;
  line-height: 1.1;
}

.also-like__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}

.also-like__grid > :nth-child(n+4) {
  display: none;
}

.also-like__card {
}

.also-like__card .product-card__media {
  
}

.also-like__card .product-card__media img,
.also-like__card .product-card__media svg {
  
}

.also-like__card .product-card__title {
  
}

.also-like__controls {
  display: flex;
  justify-content: center;
  gap: 24px;
  margin-top: 64px;
}

.also-like__arrow {
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  border: 1px solid var(--border);
  border-radius: 50%;
  transition: border-color .2s;
}

.also-like__arrow:hover {
  border-color: var(--text);
}
@media (max-width:700px){
  .also-like__controls{
    margin-top:24px;
  }
}
/* ============ Timeline (What to expect) ============ */
.timeline {
  display: grid;
  grid-template-columns: 1fr 1.05fr;
  gap: 80px;
  align-items: stretch;
  padding: 120px 70px;
}

.timeline__content {
  display: flex;
  flex-direction: column;
  max-width: 830px;
}

.timeline__title {
  margin-bottom: 24px;
}

.timeline__desc {
  font-size: 15px;
  font-weight: 300;
  line-height: 1.65;
  color: var(--text-muted);
}

.timeline__list {
  margin-top: auto;
  padding-top: 48px;
}

.timeline__item {
  border-top: 1px solid #dcdcda;
}

.timeline__item--static .timeline__item-head {
  cursor: default;
  color: var(--text);
}



.timeline__item:last-child {
  border-bottom: 1px solid #dcdcda;
}

.timeline__item-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 22px 0;
  color: #b5b5b3;
  list-style: none;
  cursor: pointer;
  transition: color .2s;
}

.timeline__item-head::-webkit-details-marker {
  display: none;
}
.timeline__item:hover,
.timeline__item[open] .timeline__item-head {
  color: var(--maroon);
}

.timeline__item-plus {
  position: relative;
  flex-shrink: 0;
  width: 14px;
  height: 14px;
}

.timeline__item-plus::before,
.timeline__item-plus::after {
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;
  background: currentColor;
  transition: transform .25s;
}

.timeline__item-plus::before {
  width: 14px;
  height: 1.4px;
}

.timeline__item-plus::after {
  width: 1.4px;
  height: 14px;
}

.timeline__item[open] .timeline__item-plus::after {
  transform: rotate(90deg);
}

.timeline__item-body {
  padding-bottom: 26px;
}

.timeline__checklist {
  list-style: none;
}

.timeline__checklist li {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  font-size: 15px;
  font-weight: 400;
}

.timeline__checklist li + li {
  margin-top: 14px;
}

.timeline__check {
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  margin-top: 2px;
  color: var(--maroon);
}

.timeline__media {
  border-radius: var(--radius-lg);
  overflow: hidden;
}

.timeline__media img,
.timeline__media svg {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width:900px){
  
}

@media (max-width:700px){
  .timeline{
    padding:36px;        
    grid-template-columns: 1fr;
  }
  .timeline{
    padding:60px 15px; 
    gap:40px;
  }
}

/* ============ Wellness steps ============ */
.wellness-steps {
  background-color: #F3F3F3;
  padding: 120px 70px;
}

.wellness-steps__title {
  margin-bottom: 64px;
}

.wellness-step {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 90px;
  align-items: center;
}

.wellness-step + .wellness-step {
  margin-top: 64px;
}

.wellness-step__media {
  border-radius: var(--radius-lg);
  overflow: hidden;
  aspect-ratio: 880 / 607;
}

.wellness-step__media img,
.wellness-step__media svg {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.wellness-step__num {
  display: block;
  font-size: 15px;
  font-weight: 600;
  color: var(--red);
  margin-bottom: 18px;
}

.wellness-step__title {
  margin-bottom: 16px;
}

.wellness-step__text {
  max-width: 636px;
  letter-spacing: 0;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  color: var(--text-muted);
}

.wellness-steps__trigger {
  display: none;
}

@media (min-width: 1101px) {
  [data-wellness-steps].is-enhanced .wellness-steps__stage {
    position: sticky;
    top:20%;
    display: grid;
  }

  [data-wellness-steps].is-enhanced .wellness-step {
    grid-area: 1 / 1;
    margin-top: 0;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.6s ease;
  }

  [data-wellness-steps].is-enhanced .wellness-step--active {
    opacity: 1;
    pointer-events: auto;
  }

  [data-wellness-steps].is-enhanced .wellness-steps__trigger {
    display: block;
    height: 60vh;
  }
}
@media (max-width:1200px){
.wellness-steps{
    padding:36px
  }
}

@media (max-width:900px){
  .wellness-steps__title{
    margin-bottom:36px;
  }
}
@media (max-width:700px){
  .wellness-steps{
    padding:60px 15px
  }
  .wellness-step{
    grid-template-columns:1fr;
    gap:36px;
  }
}


/* ============ Benefits grid ============ */
.benefit-grid {
  padding: 120px 70px;
  background:#fff;
}

.benefit-grid__title {
  margin-bottom: 80px;
}

.benefit-grid__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 140px 40px;
  max-width:1600px;
  margin:0 auto;
}

.benefit-grid__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.benefit-grid__icon {
  display: block;
  width: 36px;
  height: 36px;
  color: var(--maroon);
  object-fit: contain;
  margin-bottom: 20px;
}

.benefit-grid__icon > svg {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.benefit-grid__item-title {
  margin-bottom: 12px;
}

.benefit-grid__item-text {
  max-width: 380px;
  font-size: 15px;
  font-weight: 300;
  line-height: 1.6;
  color: var(--text-muted);
}

@media(max-width:1200px){
  .benefit-grid{
    padding:36px;
  }
   .benefit-grid__list{
    gap: 80px 36px;
  }
}
@media(max-width:700px){
  .benefit-grid__title{
    margin-bottom:20px;
  }
  .benefit-grid{
    padding:15px;
  }
  .benefit-grid__list{
    grid-template-columns:1fr;
    gap: 36px;
  }
}


/* ============ Responsive ============ */
@media (max-width: 1500px) {
 .pdp__feature {
    padding-right: 8px;
  }
}

@media (max-width: 1200px) {
  .products-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .faq{
    padding:36px;
  }
  .pdp__feature {
    padding-right: 0px;
    width:100%;
  }
  .pdp__features{
    gap:4px;
  }
  .pdp__feature + .pdp__feature {
    padding-left: 0;
    border: none;
  }
  .pdp__trust {
    grid-template-columns: 1fr;
    gap: 14px;
    border-radius: 24px;
    padding: 20px;
  }
  .cards-grid:has(> :nth-child(4))  {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 1100px) {
  .pdp {
    gap: 48px;
  }

  .pdp__gallery {
    position: static;
  }

  .also-like__grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .also-like__grid > :nth-child(n+4) {
    display: block;
  }

  .also-like__grid > :nth-child(n+3) {
    display: none;
  }
}

@media (max-width: 900px) {

  .hero {
    grid-template-columns: 1fr;
    padding:36px 36px ;
  }

  .hero__card {
    min-height: 480px;
  }

  .hero__card--text {
    padding: 48px 32px;
  }

  .benefits {
    grid-template-columns: repeat(2, 1fr);
    gap: 48px 0;
  }

  .benefits__item:nth-child(odd) {
    border-left: none;
  }

  .section--cta {
    grid-template-columns: 1fr;
    grid-template-areas:
      "title"
      "grid"
      "cta";
    row-gap: 24px;
  }

  .section--cta .section__cta {
    justify-self: center;
    width:100%;
  }
  

  .reviews__grid {
    grid-template-columns: 1fr;
    margin-bottom:40px;
  }

  .reviews__grid > :nth-child(n+2) {
    display: none;
  }

  .faq {
    grid-template-columns: 1fr;
    gap: 32px;
    padding:36px;
  }

  .promo__banner {
    min-height: 460px;
    padding: 20px;
  }
  
}

@media (max-width: 768px) {
  .pdp {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 700px) {
  .hero,
  .faq {
    padding:60px 15px ;
  }
   {
    padding:36px;
  }

  .cards-grid,
  .cards-grid:has(> :nth-child(4)) {
    grid-template-columns: 1fr;
  }

  .reviews__grid {
    margin-bottom:20px;
  }

  .gallery__thumbs {
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
  }

  .pdp__buy {
    flex-wrap: wrap;
  }

  .pdp__add {
    flex-basis: 100%;
    order: 3;
    min-height:50px;
  }

  .pdp__trust {
    grid-template-columns: 1fr;
    gap: 14px;
    border-radius: 24px;
    padding: 20px;
  }

  .pdp__trust-item + .pdp__trust-item {
    border-left: none;
  }

  

  .also-like__inner {
    padding: 64px 20px 56px;
  }

  .also-like__grid {
    grid-template-columns: 1fr;
  }

  .also-like__grid > :nth-child(n+2) {
    display: none;
  }

  .also-like__head {
    margin-bottom: 40px;
  }
}

@media (max-width: 600px) {
  .products-grid {
    grid-template-columns: 1fr;
  }

  .benefits {
    grid-template-columns: 1fr;
    padding:60px 15px;
  }

  .benefits__item {
    border-left: none !important;
  }

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

  .hero__buttons {
    flex-direction: column;
    align-items: flex-start;

  }
  .hero__buttons *{
    width:100%;
  }

  .footer__bottom {
    flex-direction: column;
    align-items: flex-start;
    padding: 40px 24px 24px;
  }

  .reviews__controls {
    gap: 16px;
  }

  .reviews__arrow {
    width: 64px;
    height: 48px;
  }
}

/* ============ Placeholder icons ============ */
/* Shopify's onboarding placeholder graphics (placeholder_svg_tag) are inline
   SVGs that don't respect object-fit and can render with their own internal
   aspect ratio, so forcing them to width:100%/height:100% of a non-square
   image slot (product/category cards, hero, gallery) visibly distorts them.
   Give them a fixed, square footprint instead of stretching them to fill
   the slot. Specificity/order here is deliberate so this wins over the
   earlier img/svg sizing rules for real photos. */
svg.placeholder-svg {
  width: 96px;
  height: 96px;
  max-width: 40%;
  max-height: 40%;
  margin: auto;
  object-fit: contain;
}

/* COLLECTION PAGE */
.collection.page-width{
  max-width:100%;
}