/* Product pages use Ecwid's live catalog, gallery and purchase controls. */
body.once-product-page .hero,
body.once-product-page .how-section,
body.once-product-page .about-section,
body.once-product-page .cta-section,
body.once-product-page .ecwid-category-nav {
  display: none !important;
}

body.once-product-page .shop-section {
  padding: 24px 6.5vw 88px;
  background: var(--bg, #f8f5f1);
  min-height: 65vh;
}

body.once-product-page #my-store-142707003 {
  --once-detail-border: #d6d0c8;
  --once-detail-muted: #65615a;
  max-width: 1180px;
  margin-inline: auto;
  color: var(--ink, #111);
}

body.once-product-page #my-store-142707003 .product-details {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  align-items: start;
  column-gap: clamp(32px, 6vw, 88px);
  row-gap: 36px;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
}

body.once-product-page #my-store-142707003 .product-details__gallery {
  grid-column: 1;
  grid-row: 1;
  float: none !important;
  width: 100% !important;
  max-width: 448px !important;
  min-width: 0 !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

/* Native aspect spacers and carousel transforms retain their zoom behavior. */
body.once-product-page #my-store-142707003 .details-gallery__images-zoom {
  display: none !important;
}

body.once-product-page #my-store-142707003 .details-gallery__picture {
  object-fit: contain !important;
  object-position: center !important;
  border-radius: 0 !important;
}

body.once-product-page #my-store-142707003 .product-details__sidebar {
  grid-column: 2;
  grid-row: 1;
  float: none !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 20px 0 0 !important;
  text-align: left !important;
}

body.once-product-page #my-store-142707003 .once-product-kicker {
  margin: 0 0 14px;
  color: var(--once-detail-muted);
  font: 500 11px/1.5 'DM Sans', Arial, sans-serif;
  letter-spacing: .13em;
  text-transform: uppercase;
}

body.once-product-page #my-store-142707003 .product-details__sidebar h1,
body.once-product-page #my-store-142707003 .product-details__sidebar .product-details__product-title {
  margin: 0 0 22px !important;
  color: var(--ink, #111) !important;
  font-family: 'Manrope', Arial, sans-serif !important;
  font-size: clamp(34px, 3.6vw, 48px) !important;
  font-weight: 500 !important;
  line-height: 1.13 !important;
  letter-spacing: -.05em !important;
  text-align: left !important;
  text-transform: none !important;
  overflow-wrap: anywhere;
}

body.once-product-page #my-store-142707003 .product-details__product-price {
  margin: 0 0 18px !important;
  text-align: left !important;
}

body.once-product-page #my-store-142707003 .product-details__product-price .details-product-price__value {
  color: var(--ink, #111) !important;
  font: 400 26px/1.3 'DM Sans', Arial, sans-serif !important;
  letter-spacing: -.025em !important;
}

body.once-product-page #my-store-142707003 .once-product-summary {
  margin: 0 0 28px;
  max-width: 42ch;
  color: var(--once-detail-muted);
  font: 400 16px/1.65 'DM Sans', Arial, sans-serif;
}

body.once-product-page #my-store-142707003 .product-details__product-options {
  margin: 24px 0 !important;
}

body.once-product-page #my-store-142707003 .product-details__action-panel {
  margin: 24px 0 0 !important;
  padding: 0 !important;
}

body.once-product-page #my-store-142707003 .product-details__action-panel .product-details-module__content--indented {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.once-product-page #my-store-142707003 .product-details__action-panel .details-product-purchase__add-section {
  display: grid !important;
  grid-template-columns: 166px minmax(0, 1fr) !important;
  align-items: start;
  gap: 12px;
  float: none !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.once-product-page #my-store-142707003 .product-details__action-panel .details-product-purchase__controls,
body.once-product-page #my-store-142707003 .product-details__action-panel .details-product-purchase__bag-controls,
body.once-product-page #my-store-142707003 .product-details__action-panel .details-product-purchase__add-buttons,
body.once-product-page #my-store-142707003 .product-details__action-panel .details-product-purchase__buttons-in-add-section {
  float: none !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.once-product-page #my-store-142707003 .details-product-purchase__place {
  display: none !important;
}

body.once-product-page #my-store-142707003 .details-product-purchase__qty {
  margin: 0 !important;
  text-align: left !important;
}

body.once-product-page #my-store-142707003 .details-product-purchase__qty label {
  margin: 0 0 8px !important;
  color: var(--once-detail-muted) !important;
  font: 400 13px/1.5 'DM Sans', Arial, sans-serif !important;
}

body.once-product-page #my-store-142707003 .once-detail-stepper {
  display: inline-flex !important;
  float: none !important;
  align-items: stretch;
  min-height: 50px;
  width: auto !important;
  max-width: 190px !important;
  border: 1px solid var(--once-detail-border);
  background: transparent;
}

body.once-product-page #my-store-142707003 .once-detail-stepper > label,
body.once-product-page #my-store-142707003 .once-detail-stepper > .details-product-purchase__qty-label {
  display: none !important;
}

body.once-product-page #my-store-142707003 .once-detail-stepper .form-control {
  flex: 1 1 auto;
  min-width: 48px !important;
  width: 68px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.once-product-page #my-store-142707003 .once-detail-stepper input {
  width: 100% !important;
  min-width: 48px !important;
  min-height: 48px !important;
  padding: 8px 3px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--ink, #111) !important;
  font: 400 16px/1.4 'DM Sans', Arial, sans-serif !important;
  text-align: center !important;
  box-shadow: none !important;
  appearance: textfield;
  -moz-appearance: textfield;
}

body.once-product-page #my-store-142707003 .once-detail-stepper input::-webkit-inner-spin-button,
body.once-product-page #my-store-142707003 .once-detail-stepper input::-webkit-outer-spin-button {
  margin: 0;
  -webkit-appearance: none;
}

body.once-product-page #my-store-142707003 .once-detail-minus,
body.once-product-page #my-store-142707003 .once-detail-plus {
  flex: 0 0 48px;
  min-width: 48px;
  min-height: 48px;
  border: 0;
  border-radius: 0;
  padding: 0;
  background: transparent;
  color: var(--ink, #111);
  font: 400 23px/1 'DM Sans', Arial, sans-serif;
  cursor: pointer;
}

body.once-product-page #my-store-142707003 .details-product-purchase__add-to-bag,
body.once-product-page #my-store-142707003 .details-product-purchase__add-more,
body.once-product-page #my-store-142707003 .details-product-purchase__checkout {
  width: 100% !important;
  max-width: none !important;
  margin: 0 0 10px !important;
}

body.once-product-page #my-store-142707003 .details-product-purchase__add-to-bag button,
body.once-product-page #my-store-142707003 .details-product-purchase__add-more button,
body.once-product-page #my-store-142707003 .details-product-purchase__checkout button,
body.once-product-page .once-mobile-purchase button {
  width: 100% !important;
  min-height: 54px !important;
  padding: 14px 20px !important;
  border: 1px solid var(--ink, #111) !important;
  border-radius: 0 !important;
  background: var(--ink, #111) !important;
  color: #fff !important;
  box-shadow: none !important;
  font: 500 13px/1.4 'DM Sans', Arial, sans-serif !important;
  letter-spacing: .075em !important;
  text-transform: uppercase !important;
  cursor: pointer;
}

body.once-product-page #my-store-142707003 .details-product-purchase__add-more button,
body.once-product-page #my-store-142707003 .details-product-purchase__checkout button {
  background: transparent !important;
  color: var(--ink, #111) !important;
}

body.once-product-page #my-store-142707003 .product-details__action-panel .form-control__button-text {
  color: inherit !important;
  font: inherit !important;
  letter-spacing: inherit !important;
}

body.once-product-page #my-store-142707003 .once-detail-stepper button:focus-visible,
body.once-product-page #my-store-142707003 .once-detail-stepper input:focus-visible,
body.once-product-page #my-store-142707003 .product-details__action-panel button:focus-visible,
body.once-product-page #my-store-142707003 .once-product-sections summary:focus-visible,
body.once-product-page .once-mobile-purchase button:focus-visible {
  outline: 2px solid var(--ink, #111) !important;
  outline-offset: 4px;
}

body.once-product-page #my-store-142707003 .product-details__description {
  display: block !important;
  grid-column: 1 / -1;
  grid-row: auto;
  float: none !important;
  min-width: 0 !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.once-product-page #my-store-142707003 .product-details > .clearboth {
  display: none !important;
}

body.once-product-page #my-store-142707003 .once-product-details-enhanced .product-details__general-info,
body.once-product-page #my-store-142707003 .once-product-details-enhanced .product-details__btn-more,
body.once-product-page #my-store-142707003 .once-product-details-enhanced .product-details-module__btn-more,
body.once-product-page #my-store-142707003 .once-product-details-enhanced .product-details__description > .product-details__product-title {
  display: none !important;
}

body.once-product-page #my-store-142707003 .once-product-sections {
  border-top: 1px solid var(--once-detail-border);
  margin: 0;
  padding: 0;
}

body.once-product-page #my-store-142707003 .once-product-sections details {
  border-bottom: 1px solid var(--once-detail-border);
  padding: 0;
}

body.once-product-page #my-store-142707003 .once-product-sections summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 64px;
  padding: 18px 0;
  color: var(--ink, #111);
  font: 500 16px/1.5 'DM Sans', Arial, sans-serif;
  cursor: pointer;
  list-style: none;
}

body.once-product-page #my-store-142707003 .once-product-sections summary::-webkit-details-marker {
  display: none;
}

body.once-product-page #my-store-142707003 .once-product-sections summary::marker {
  content: '' !important;
}

body.once-product-page #my-store-142707003 .once-product-sections summary::before {
  content: none !important;
  display: none !important;
}

body.once-product-page #my-store-142707003 .once-product-sections summary::after {
  content: '+' !important;
  position: static !important;
  display: block !important;
  flex: 0 0 24px;
  width: 24px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  transform: none !important;
  text-align: center;
  font-size: 24px;
  font-weight: 400;
}

body.once-product-page #my-store-142707003 .once-product-sections details[open] > summary::after {
  content: '−' !important;
}

body.once-product-page #my-store-142707003 .once-product-sections details > :not(summary) {
  max-width: 72ch;
  margin: 0 0 22px;
  color: var(--once-detail-muted);
  font: 400 15px/1.75 'DM Sans', Arial, sans-serif;
}

body.once-product-page #my-store-142707003 .once-product-sections p:last-child {
  margin-bottom: 0;
}

body.once-product-page #my-store-142707003 .once-product-sections a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.once-mobile-purchase {
  display: none;
}

.once-mobile-purchase[hidden] {
  display: none !important;
}

@media (max-width: 760px) {
  body.once-product-page .shop-section {
    padding: 12px 6vw 48px;
  }

  body.once-product-page #my-store-142707003 .product-details {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 24px;
  }

  body.once-product-page #my-store-142707003 .product-details__gallery {
    grid-column: 1;
    grid-row: 1;
    max-width: 380px !important;
  }

  body.once-product-page #my-store-142707003 .product-details__sidebar {
    grid-column: 1;
    grid-row: 2;
    padding-top: 4px !important;
  }

  body.once-product-page #my-store-142707003 .product-details__description {
    grid-column: 1;
    grid-row: auto;
  }

  body.once-product-page #my-store-142707003 .product-details__sidebar h1,
  body.once-product-page #my-store-142707003 .product-details__sidebar .product-details__product-title {
    font-size: 32px !important;
    margin-bottom: 16px !important;
  }

  body.once-product-page #my-store-142707003 .once-product-kicker {
    font-size: 10px;
    margin-bottom: 10px;
  }

  body.once-product-page #my-store-142707003 .once-product-summary {
    margin-bottom: 22px;
    font-size: 15px;
  }

  body.once-product-page #my-store-142707003 .product-details__product-price .details-product-price__value {
    font-size: 24px !important;
  }

  body.once-product-page #my-store-142707003 .product-details__action-panel {
    margin-top: 20px !important;
  }

  body.once-product-page #my-store-142707003 .product-details__action-panel .details-product-purchase__add-section {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.once-product-page #my-store-142707003 .once-detail-stepper {
    justify-self: start;
  }

  body.once-product-page .once-mobile-purchase:not([hidden]) {
    display: grid;
    grid-template-columns: minmax(90px, auto) minmax(0, 1fr);
    align-items: center;
    column-gap: 18px;
    position: fixed;
    z-index: 35;
    inset: auto 0 0;
    padding: 12px max(18px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(18px, env(safe-area-inset-left));
    border-top: 1px solid #d6d0c8;
    background: var(--bg, #f8f5f1);
    box-shadow: 0 -4px 20px rgb(17 17 17 / 4%);
  }

  body.once-product-page .once-mobile-purchase-price {
    color: var(--ink, #111);
    font: 500 19px/1.4 'DM Sans', Arial, sans-serif;
    white-space: nowrap;
  }

  body.once-product-page .once-mobile-purchase button {
    min-height: 50px !important;
    padding-inline: 14px !important;
    font-size: 12px !important;
  }

  body.once-product-page {
    padding-bottom: calc(82px + env(safe-area-inset-bottom));
  }

  body.once-product-page .toast {
    bottom: calc(100px + env(safe-area-inset-bottom));
  }
}

@media (prefers-reduced-motion: no-preference) and (hover: hover) {
  body.once-product-page #my-store-142707003 .once-detail-stepper button:hover:not(:disabled) {
    background: rgb(17 17 17 / 5%);
  }

  body.once-product-page #my-store-142707003 .details-product-purchase__add-to-bag button:hover:not(:disabled),
  body.once-product-page .once-mobile-purchase button:hover:not(:disabled) {
    background: #333 !important;
  }
}

/* Coffee information remains part of the product page, below its purchase area. */
body.once-product-page #my-store-142707003 .once-coffee-information {
  grid-column: 1 / -1;
  grid-row: 2;
  min-width: 0;
  width: 100%;
  margin: 24px 0 0;
  padding: 0;
  color: var(--ink, #111);
}

body.once-product-page #my-store-142707003 .once-coffee-profile,
body.once-product-page #my-store-142707003 .once-coffee-enjoy {
  margin: 0;
  padding: 36px 0 42px;
  border-top: 1px solid var(--once-detail-border, #d6d0c8);
}

body.once-product-page #my-store-142707003 .once-coffee-info-heading {
  margin: 0 0 30px;
  padding: 0;
  color: var(--ink, #111);
  font: 500 16px/1.5 'DM Sans', Arial, sans-serif;
  letter-spacing: .2em;
  text-transform: uppercase;
}

body.once-product-page #my-store-142707003 .once-profile-metrics,
body.once-product-page #my-store-142707003 .once-enjoy-methods {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  align-items: start;
  gap: 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.once-product-page #my-store-142707003 .once-coffee-profile .once-coffee-info-heading {
  margin-bottom: 12px;
}

body.once-product-page #my-store-142707003 .once-coffee-profile-note {
  max-width: 65ch;
  margin: 0 0 30px;
  color: var(--once-detail-muted, #65615a);
  font: 400 14px/1.65 'DM Sans', Arial, sans-serif;
}

body.once-product-page #my-store-142707003 .once-profile-metric {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  min-width: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.once-product-page #my-store-142707003 .once-profile-label {
  color: var(--ink, #111);
  font: 500 12px/1.4 'DM Sans', Arial, sans-serif;
  letter-spacing: .09em;
  text-transform: uppercase;
}

body.once-product-page #my-store-142707003 .once-profile-score {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  min-height: 28px;
}

body.once-product-page #my-store-142707003 .once-profile-bars {
  display: flex;
  align-items: center;
  gap: 4px;
  height: 28px;
}

body.once-product-page #my-store-142707003 .once-profile-bar {
  display: block;
  flex: 0 0 4px;
  width: 4px;
  height: 28px;
  border: 0;
  border-radius: 0;
  background: #dedbd6;
}

body.once-product-page #my-store-142707003 .once-profile-bar.is-active {
  background: var(--once-coffee-accent, #25231f);
}

body.once-product-page #my-store-142707003 .once-profile-value {
  color: var(--once-detail-muted, #65615a);
  font: 400 12px/1.4 'DM Sans', Arial, sans-serif;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

body.once-product-page #my-store-142707003 .once-enjoy-method {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
  min-width: 0;
  margin: 0;
  padding: 0;
  color: #d6d0c8;
  list-style: none;
}

body.once-product-page #my-store-142707003 .once-enjoy-icon {
  display: block;
  flex: 0 0 64px;
  width: 64px;
  height: 64px;
  overflow: visible;
  color: inherit;
}

body.once-product-page #my-store-142707003 .once-enjoy-label {
  color: inherit;
  font: 400 14px/1.5 'DM Sans', Arial, sans-serif;
}

body.once-product-page #my-store-142707003 .once-enjoy-method.is-recommended {
  color: var(--once-coffee-accent, #25231f);
}

body.once-product-page #my-store-142707003 .once-enjoy-method.is-recommended .once-enjoy-label {
  color: var(--ink, #111);
  font-weight: 500;
}

body.once-product-page #my-store-142707003 .once-coffee-sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}

@media (max-width: 760px) {
  body.once-product-page #my-store-142707003 .once-coffee-information {
    grid-row: 3;
    margin-top: 12px;
  }

  body.once-product-page #my-store-142707003 .once-coffee-profile,
  body.once-product-page #my-store-142707003 .once-coffee-enjoy {
    padding: 28px 0 34px;
  }

  body.once-product-page #my-store-142707003 .once-coffee-info-heading {
    margin-bottom: 28px;
    font-size: 14px;
  }

  body.once-product-page #my-store-142707003 .once-profile-metrics,
  body.once-product-page #my-store-142707003 .once-enjoy-methods {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 24px;
    row-gap: 30px;
  }

  body.once-product-page #my-store-142707003 .once-profile-metric:last-child {
    grid-column: 1 / -1;
  }

  body.once-product-page #my-store-142707003 .once-profile-metric {
    gap: 12px;
  }

  body.once-product-page #my-store-142707003 .once-enjoy-method {
    gap: 12px;
  }
}

/* Arabic keeps the same product layout, with readable joined lettering. */
html[lang="ar"] body.once-product-page #my-store-142707003 .product-details__sidebar,
html[lang="ar"] body.once-product-page #my-store-142707003 .product-details__sidebar h1,
html[lang="ar"] body.once-product-page #my-store-142707003 .product-details__product-title,
html[lang="ar"] body.once-product-page #my-store-142707003 .product-details__product-price,
html[lang="ar"] body.once-product-page #my-store-142707003 .details-product-purchase__qty,
html[lang="ar"] body.once-product-page #my-store-142707003 .once-product-sections,
html[lang="ar"] body.once-product-page #my-store-142707003 .once-coffee-information {
  text-align: start !important;
}

html[lang="ar"] body.once-product-page #my-store-142707003 .once-product-kicker,
html[lang="ar"] body.once-product-page #my-store-142707003 .once-product-summary,
html[lang="ar"] body.once-product-page #my-store-142707003 .once-product-sections summary,
html[lang="ar"] body.once-product-page #my-store-142707003 .once-product-sections details > :not(summary),
html[lang="ar"] body.once-product-page #my-store-142707003 .once-coffee-info-heading,
html[lang="ar"] body.once-product-page #my-store-142707003 .once-coffee-profile-note,
html[lang="ar"] body.once-product-page #my-store-142707003 .once-profile-label,
html[lang="ar"] body.once-product-page #my-store-142707003 .once-enjoy-label,
html[lang="ar"] body.once-product-page .once-mobile-purchase button {
  font-family: var(--font-arabic, 'Noto Sans Arabic', Arial, sans-serif) !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  line-height: 1.8 !important;
}

html[lang="ar"] body.once-product-page #my-store-142707003 .product-details__sidebar h1,
html[lang="ar"] body.once-product-page #my-store-142707003 .product-details__sidebar .product-details__product-title {
  font-family: var(--font-arabic, 'Noto Sans Arabic', Arial, sans-serif) !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
}

html[lang="ar"] body.once-product-page #my-store-142707003 .once-detail-stepper input,
html[lang="ar"] body.once-product-page #my-store-142707003 .once-profile-value {
  direction: ltr;
  unicode-bidi: isolate;
}
