/* 7of9 JuiceIN — Clean Design System v3.0.0
   Ownership: this is the ONLY theme stylesheet for the shared product popup,
   product-image containment and Homepage favourites card alignment.
   Existing Elementor text, content, prices and checkout remain authoritative.
*/
:root{
  --ji-green:#0c3c2c; --ji-deep:#072e22; --ji-lime:#dcf45c;
  --ji-citrus:#e9a12a; --ji-cream:#fffdf7; --ji-surface:#f5f8f1;
  --ji-outline:rgba(15,65,43,.14); --ji-shadow:0 18px 56px rgba(4,34,23,.16);
}
body.juicein-v2{font-synthesis:none}
body.juicein-v2 :is(button,a,input,select,textarea):focus-visible{
  outline:3px solid #83a61d; outline-offset:3px;
}
/* Responsive image policy: complete packaging is always shown. Only product
   media, never lifestyle photos or intentionally editorial cover images. */
body.juicein-v2 :is(
  #j9-home-v365 .j9h-feature__media,
  #j9-home-v365 .j9h-mini__media,
  #j9-home-v365 .j9h-cane-card__media,
  #j9-home-v365 .j9h-cane__media,
  #j9-drinks-v201 .j9d-product__media,
  #j9-juices-v202 .j9j-card__media,
  #j9-smoothies-v201 .j9s-card__media,
  #j9-shots-v200 .j9w-card__media,
  #j9-pairings-v200 .j9p-card__media,
  .jx-v2-product-card__media
){min-width:0;max-width:100%;overflow:hidden}
body.juicein-v2 :is(
  #j9-home-v365 .j9h-feature__media,
  #j9-home-v365 .j9h-mini__media,
  #j9-home-v365 .j9h-cane-card__media,
  #j9-drinks-v201 .j9d-product__media,
  #j9-juices-v202 .j9j-card__media,
  #j9-smoothies-v201 .j9s-card__media,
  #j9-shots-v200 .j9w-card__media,
  #j9-pairings-v200 .j9p-card__media,
  .jx-v2-product-card__media
){aspect-ratio:1/1}
body.juicein-v2 :is(
  #j9-home-v365 .j9h-feature__media img[data-j9-product-image],
  #j9-home-v365 .j9h-mini__media img[data-j9-product-image],
  #j9-home-v365 .j9h-cane-card__media img[data-j9-product-image],
  #j9-home-v365 .j9h-cane__media img,
  #j9-drinks-v201 .j9d-product__media img,
  #j9-juices-v202 .j9j-card__media img,
  #j9-smoothies-v201 .j9s-card__media img,
  #j9-shots-v200 .j9w-card__media img,
  #j9-pairings-v200 .j9p-card__media img,
  .jx-v2-product-card__media img
){
  display:block!important;width:100%!important;height:100%!important;
  min-width:0!important;min-height:0!important;max-width:100%!important;
  max-height:100%!important;object-fit:contain!important;
  object-position:center center!important;transform:none!important;
  padding:clamp(3px,1.2vw,10px)!important;
  box-sizing:border-box!important;
}
body.juicein-v2 :is(
  #j9-juices-v202 .j9j-hero-bottle img,
  #j9-smoothies-v201 .j9s-hero-bottle img,
  #j9-shots-v200 .j9w-hero-bottle img,
  #j9-pairings-v200 .j9p-hero-bottle img,
  #j9-juices-v202 .j9j-pick__media img,
  #j9-smoothies-v201 .j9s-pick__media img,
  #j9-shots-v200 .j9w-pick__media img,
  #j9-pairings-v200 .j9p-pick__media img
){object-fit:contain!important;object-position:center center!important;max-width:100%!important;max-height:100%!important;}

/* Homepage mini cards: preserve the calm desktop composition. */
body.juicein-v2 #j9-home-v365 .j9h-mini,
body.juicein-v2 #j9-home-v365 .j9h-mini__copy{min-width:0}
body.juicein-v2 #j9-home-v365 .j9h-mini__copy :is(h3,p,span,strong){
  min-width:0!important;max-width:100%!important;overflow-wrap:normal!important;
  word-break:normal!important;hyphens:none!important;
}
body.juicein-v2 #j9-home-v365 .j9h-mini__media::before,
body.juicein-v2 #j9-home-v365 .j9h-mini__media::after{
  content:none!important;display:none!important;
}
@media(max-width:620px){
 body.juicein-v2 #j9-home-v365#j9-home-v365 article.j9h-mini{
  display:grid!important;grid-template-columns:minmax(0,1fr) 52px!important;
  grid-template-rows:auto auto!important;grid-template-areas:"image image" "details action"!important;
  align-items:start!important;gap:12px!important;padding:12px!important;
  border:1px solid var(--ji-outline)!important;border-radius:21px!important;
  min-width:0!important;min-height:0!important;height:auto!important;
  box-shadow:0 10px 28px rgba(6,45,31,.07)!important;
  background:linear-gradient(170deg,#fff,#fbfdf8)!important;
 }
 body.juicein-v2 #j9-home-v365#j9-home-v365 article.j9h-mini > .j9h-mini__media{
  grid-area:image!important;position:relative!important;display:block!important;
  width:100%!important;height:auto!important;min-width:0!important;
  min-height:0!important;max-height:none!important;aspect-ratio:1/1!important;
  margin:0!important;padding:8px!important;overflow:hidden!important;
  background:#f5f8f3!important;border-radius:15px!important;
 }
 body.juicein-v2 #j9-home-v365#j9-home-v365 article.j9h-mini > .j9h-mini__media > img{
  position:absolute!important;inset:8px!important;
  width:calc(100% - 16px)!important;height:calc(100% - 16px)!important;
  max-width:none!important;max-height:none!important;
  object-fit:contain!important;object-position:center!important;
  transform:none!important;padding:0!important;
 }
 body.juicein-v2 #j9-home-v365#j9-home-v365 article.j9h-mini > .j9h-mini__copy{
  grid-area:details!important;display:flex!important;flex-direction:column!important;
  align-items:flex-start!important;justify-content:flex-start!important;
  width:100%!important;min-width:0!important;gap:5px!important;
 }
 body.juicein-v2 #j9-home-v365#j9-home-v365 article.j9h-mini > .j9h-mini__copy p{
  margin:0!important;font-size:10px!important;line-height:1.4!important;
  letter-spacing:.09em!important;text-transform:uppercase!important;
 }
 body.juicein-v2 #j9-home-v365#j9-home-v365 article.j9h-mini > .j9h-mini__copy h3{
  margin:0!important;font-size:clamp(17px,4.6vw,22px)!important;
  line-height:1.14!important;letter-spacing:-.02em!important;
 }
 body.juicein-v2 #j9-home-v365#j9-home-v365 article.j9h-mini > .j9h-mini__copy span{
  margin:1px 0 0!important;font-size:12px!important;
 }
 body.juicein-v2 #j9-home-v365#j9-home-v365 article.j9h-mini > .j9h-mini__copy strong{
  margin:2px 0 0!important;font-size:20px!important;color:var(--ji-green)!important;
 }
 body.juicein-v2 #j9-home-v365#j9-home-v365 article.j9h-mini > .j9h-mini__add{
  grid-area:action!important;align-self:start!important;justify-self:end!important;
  display:grid!important;place-items:center!important;width:48px!important;
  height:48px!important;min-width:48px!important;min-height:48px!important;
  margin:0!important;border-radius:14px!important;
 }
}
@media(max-width:350px){
 body.juicein-v2 #j9-home-v365#j9-home-v365 article.j9h-mini{grid-template-columns:minmax(0,1fr) 46px!important;gap:9px!important;padding:10px!important}
 body.juicein-v2 #j9-home-v365#j9-home-v365 article.j9h-mini > .j9h-mini__add{width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important}
}

/* Shared product details modal — one scroll owner on all viewport sizes. */
body.juicein-v2 [data-jx-product-modal]{
  position:fixed!important;inset:0!important;z-index:1100!important;
  pointer-events:none;visibility:hidden;
}
body.juicein-v2 [data-jx-product-modal].is-open{
  pointer-events:auto!important;visibility:visible!important;
}
body.juicein-v2 [data-jx-product-modal] > .jx-v2-product-modal__backdrop{
  position:absolute!important;inset:0!important;border:0!important;
  display:block!important;background:rgba(2,24,16,.66)!important;
  opacity:0;transition:opacity .2s ease;
}
body.juicein-v2 [data-jx-product-modal].is-open > .jx-v2-product-modal__backdrop{opacity:1}
body.juicein-v2 [data-jx-product-modal] > .jx-v2-product-modal__panel{
  box-sizing:border-box!important;position:absolute!important;
  top:50%!important;left:50%!important;right:auto!important;bottom:auto!important;
  display:grid!important;grid-template-columns:minmax(0, .94fr) minmax(0,1.06fr)!important;
  grid-template-rows:auto!important;
  width:min(1020px,calc(100vw - 36px))!important;
  height:min(740px,calc(100dvh - 48px))!important;
  max-height:calc(100dvh - 48px)!important;
  overflow-x:hidden!important;overflow-y:auto!important;
  transform:translate(-50%,-50%)!important;opacity:1!important;
  margin:0!important;padding:0!important;
  color:var(--ji-deep)!important;background:var(--ji-cream)!important;
  border:1px solid rgba(255,255,255,.7)!important;
  border-radius:26px!important;box-shadow:0 32px 96px rgba(0,0,0,.3)!important;
  overscroll-behavior:contain!important;
  -webkit-overflow-scrolling:touch;
  scroll-behavior:auto!important;
  visibility:visible!important;
}
body.juicein-v2 [data-jx-product-modal]:not(.is-open) > .jx-v2-product-modal__panel{
  visibility:hidden!important;
}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__close{
  box-sizing:border-box!important;position:absolute!important;
  top:14px!important;right:14px!important;left:auto!important;bottom:auto!important;
  z-index:55!important;display:grid!important;place-items:center!important;
  width:46px!important;height:46px!important;min-width:46px!important;min-height:46px!important;
  margin:0!important;border:1px solid rgba(8,48,33,.10)!important;
  border-radius:50%!important;background:rgba(255,255,255,.97)!important;
  color:var(--ji-green)!important;box-shadow:0 5px 17px rgba(0,0,0,.1)!important;
  font-size:24px!important;cursor:pointer!important;
}
body.juicein-v2 [data-jx-product-modal] figure[data-jx-modal-media]{
  position:relative!important;display:grid!important;place-items:center!important;
  box-sizing:border-box!important;align-self:stretch!important;
  width:100%!important;height:auto!important;min-width:0!important;min-height:0!important;
  max-width:100%!important;max-height:none!important;aspect-ratio:auto!important;
  padding:24px!important;margin:0!important;float:none!important;clear:none!important;
  overflow:hidden!important;border:0!important;
  background:#f4f7f1!important;
}
body.juicein-v2 [data-jx-product-modal] figure[data-jx-modal-media]::before,
body.juicein-v2 [data-jx-product-modal] figure[data-jx-modal-media]::after{
  content:none!important;display:none!important;
}
body.juicein-v2 [data-jx-product-modal] figure[data-jx-modal-media] > img[data-jx-modal-image]:not([hidden]){
  box-sizing:border-box!important;position:relative!important;
  inset:auto!important;display:block!important;
  width:100%!important;height:auto!important;min-width:0!important;min-height:0!important;
  max-width:100%!important;max-height:560px!important;
  padding:0!important;margin:0!important;
  object-fit:contain!important;object-position:center center!important;
  transform:none!important;filter:none!important;clip-path:none!important;
}
body.juicein-v2 [data-jx-product-modal] figure[data-jx-modal-media] > img[hidden],
body.juicein-v2 [data-jx-product-modal] figure[data-jx-modal-media].has-video > img{
  display:none!important;
}
body.juicein-v2 [data-jx-product-modal] figure[data-jx-modal-media] > video{
  display:block;position:relative;width:100%!important;height:auto!important;
  max-width:100%!important;aspect-ratio:16/9!important;object-fit:contain!important;
}
body.juicein-v2 [data-jx-product-modal] figure[data-jx-modal-media] > video[hidden]{display:none!important}
body.juicein-v2 [data-jx-product-modal] figure[data-jx-modal-media] .jx-v2-product-modal__media-missing[hidden]{display:none!important}
body.juicein-v2 [data-jx-product-modal] figure[data-jx-modal-media] .jx-v2-product-modal__media-missing{
  min-height:200px;display:grid;place-content:center;text-align:center;gap:7px;color:#3e5c4c;
}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__content{
  position:relative!important;box-sizing:border-box!important;
  display:flex!important;flex-direction:column!important;justify-content:center!important;
  align-items:stretch!important;min-width:0!important;
  width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;
  padding:clamp(26px,4vw,48px)!important;margin:0!important;
  overflow:visible!important;background:var(--ji-cream)!important;
}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__content .jx-v2-eyebrow{
  color:var(--ji-green);font-size:11px;letter-spacing:.12em;font-weight:800;text-transform:uppercase;
}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__content h2{
  font-size:clamp(30px,4vw,52px)!important;line-height:1.06!important;
  letter-spacing:-.035em!important;margin:0 0 10px!important;
  overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;
}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__price{
  display:flex;align-items:baseline;flex-wrap:wrap;gap:7px;margin:2px 0 12px;
}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__price strong{font-size:25px;color:var(--ji-green)}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__price span{font-size:12px;color:#728177}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__content > p[data-jx-modal-desc]{line-height:1.55}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__badges{
  display:flex;flex-wrap:wrap;gap:7px;margin:0 0 10px;
}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__badges span{
  padding:5px 10px;border-radius:999px;font-size:11px;font-weight:800;
  background:#e9f6c6;color:#1d4633;
}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__product-info{
  display:grid;gap:8px;margin:13px 0 4px;
}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__fact{
  border:1px solid var(--ji-outline);border-radius:12px;padding:10px 11px;background:#f9fbf6;
}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__fact[data-jx-modal-allergens-wrap]{background:#fffaf0;border-color:rgba(173,121,44,.15)}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__fact h3{
  margin:0 0 3px;font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--ji-green);font-weight:850;
}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__fact :is(p,li,small){font-size:11px;line-height:1.5;margin:0;color:#52675b}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-config{display:grid;gap:14px;margin:18px 0}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-config fieldset{min-width:0;margin:0;padding:0;border:0}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-config legend{
  font-size:12px;font-weight:850;margin:0 0 9px;
}
body.juicein-v2 [data-jx-product-modal] .jx-v2-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
body.juicein-v2 [data-jx-product-modal] .jx-v2-choice{cursor:pointer;display:block;min-width:0}
body.juicein-v2 [data-jx-product-modal] .jx-v2-choice input{position:absolute;opacity:0;pointer-events:none}
body.juicein-v2 [data-jx-product-modal] .jx-v2-choice span{
  box-sizing:border-box;display:flex;align-items:flex-start;flex-direction:column;justify-content:center;
  min-height:52px;border:1px solid var(--ji-outline);border-radius:12px;background:#fff;
  padding:9px;gap:2px;white-space:normal;
}
body.juicein-v2 [data-jx-product-modal] .jx-v2-choice :is(strong,small){max-width:100%;overflow-wrap:break-word;font-size:11px;line-height:1.3}
body.juicein-v2 [data-jx-product-modal] .jx-v2-choice small{font-size:10px;color:#708177}
body.juicein-v2 [data-jx-product-modal] .jx-v2-choice input:checked+span{
  background:#f4fbdb;border-color:#9cb42b;box-shadow:0 0 0 2px rgba(224,246,83,.42);
}
body.juicein-v2 [data-jx-product-modal] .jx-v2-choice input:focus-visible+span{outline:3px solid #83a61d;outline-offset:2px}
body.juicein-v2 [data-jx-product-modal] .jx-v2-config-note{font-size:11px;color:#67786d;line-height:1.5}
body.juicein-v2 [data-jx-product-modal] :is(.jx-v2-product-modal__content,.jx-v2-product-config) *{min-width:0}

/* Phones and tablets: single scroll container, complete square image first. */
@media(max-width:900px){
 body.juicein-v2 [data-jx-product-modal] > .jx-v2-product-modal__panel{
  display:block!important;grid-template-columns:none!important;grid-template-rows:none!important;
  width:min(650px,calc(100vw - 12px))!important;
  height:calc(100dvh - 12px)!important;max-height:calc(100dvh - 12px)!important;
  border-radius:22px!important;overflow-y:auto!important;
 }
 body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__close{
  position:sticky!important;float:right!important;
  top:10px!important;right:10px!important;
  margin:10px 10px -58px auto!important;
 }
 body.juicein-v2 [data-jx-product-modal] figure[data-jx-modal-media]{
  clear:both!important;float:none!important;display:grid!important;place-items:center!important;
  width:100%!important;height:auto!important;min-height:0!important;
  max-height:none!important;aspect-ratio:1/1!important;
  padding:12px!important;border-bottom:1px solid var(--ji-outline)!important;
  border-radius:22px 22px 0 0!important;
 }
 body.juicein-v2 [data-jx-product-modal] figure[data-jx-modal-media] > img[data-jx-modal-image]:not([hidden]){
  box-sizing:border-box!important;display:block!important;position:absolute!important;
  inset:12px!important;width:calc(100% - 24px)!important;
  height:calc(100% - 24px)!important;min-width:0!important;min-height:0!important;
  max-width:none!important;max-height:none!important;
  object-fit:contain!important;object-position:center center!important;
  transform:none!important;padding:0!important;
 }
 body.juicein-v2 [data-jx-product-modal] figure[data-jx-modal-media].has-video{
  aspect-ratio:16/9!important;
 }
 body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__content{
  display:flex!important;justify-content:flex-start!important;
  height:auto!important;min-height:0!important;max-height:none!important;
  overflow:visible!important;padding:20px 18px max(28px,env(safe-area-inset-bottom))!important;
 }
 body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__content h2{
  font-size:clamp(28px,7.4vw,42px)!important;
 }
}
@media(max-width:360px){
 body.juicein-v2 [data-jx-product-modal] > .jx-v2-product-modal__panel{
  width:calc(100vw - 6px)!important;height:calc(100dvh - 6px)!important;
  max-height:calc(100dvh - 6px)!important;border-radius:16px!important;
 }
 body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__content{
  padding:17px 12px max(22px,env(safe-area-inset-bottom))!important;
 }
 body.juicein-v2 [data-jx-product-modal] .jx-v2-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__content h2{font-size:clamp(26px,8vw,34px)!important}
}
@media(prefers-reduced-motion:reduce){
 body.juicein-v2 [data-jx-product-modal] > .jx-v2-product-modal__backdrop{transition:none!important}
}
