/* ====================================================================
   7of9 JuiceIN · v3.5.5 Pre-launch editorial media & interface polish
   Scoped to the existing approved page components. Never restyle product
   label artwork, standalone logos, popup bottle displays, or user content.
   ==================================================================== */
:root { --j9-polish-green:#073d2d; --j9-polish-orange:#de8f21; --j9-polish-cream:#fffdf7; }
/* Important: eliminate FRAME padding, not just the <img> padding. */
body.juicein-v2 :is(
  #j9-home-v365 .j9h-hero__media,
  #j9-home-v365 .j9h-feature__media,
  #j9-home-v365 .j9h-range-card__media,
  #j9-home-v365 .j9h-service__media,
  #j9-home-v365 .j9h-occasion__media,
  #j9-home-v365 .j9h-popup__media,
  #j9-drinks-v201 .j9d-hero__media,
  #j9-drinks-v201 .j9d-range__media,
  #j9-smoothies-v201 .j9s-signature__media,
  #j9-pairings-v200 .j9p-signature__media,
  #j9-bulk-v200 .j9b-hero__media,
  #j9-bulk-v200 .j9b-range-card > figure,
  #juicein-services-v2 .ji-sv-v2__hero-tile,
  #juicein-services-v2 .ji-sv-v2__service-media,
  #juicein-popup-page .ji-popup-hero-media,
  #juicein-about-page-v4 .ji-about-hero-media-v4,
  #juicein-about-page-v4 .ji-about-story-media-v48,
  #juicein-about-page-v4 .ji-about-expression-card-v49 > figure,
  #juicein-journal-v272 .ji-journal-hero-v272__media,
  #juicein-journal-v272 .ji-journal-story-card-v272__media
){
  position:relative !important;display:block !important;overflow:hidden !important;
  margin:0 !important;padding:0 !important;border:0 !important;
  background:transparent !important;box-sizing:border-box !important;
}
/* Exact edge-to-edge media. Applies only to defined editorial photo/video frames. */
body.juicein-v2 :is(
  #j9-home-v365 .j9h-hero__media,
  #j9-home-v365 .j9h-feature__media,
  #j9-home-v365 .j9h-range-card__media,
  #j9-home-v365 .j9h-service__media,
  #j9-home-v365 .j9h-occasion__media,
  #j9-home-v365 .j9h-popup__media,
  #j9-drinks-v201 .j9d-hero__media,
  #j9-drinks-v201 .j9d-range__media,
  #j9-smoothies-v201 .j9s-signature__media,
  #j9-pairings-v200 .j9p-signature__media,
  #j9-bulk-v200 .j9b-hero__media,
  #j9-bulk-v200 .j9b-range-card > figure,
  #juicein-services-v2 .ji-sv-v2__hero-tile,
  #juicein-services-v2 .ji-sv-v2__service-media,
  #juicein-popup-page .ji-popup-hero-media,
  #juicein-about-page-v4 .ji-about-hero-media-v4,
  #juicein-about-page-v4 .ji-about-story-media-v48,
  #juicein-about-page-v4 .ji-about-expression-card-v49 > figure,
  #juicein-journal-v272 .ji-journal-hero-v272__media,
  #juicein-journal-v272 .ji-journal-story-card-v272__media
) > :is(img,video){
  display:block !important;box-sizing:border-box !important;
  width:100% !important;height:100% !important;min-width:0 !important;
  min-height:0 !important;max-width:none !important;max-height:none !important;
  margin:0 !important;padding:0 !important;border:0 !important;
  object-fit:cover !important;object-position:center !important;
}
/* Some overlays need absolute media. Existing captions remain above imagery. */
body.juicein-v2 :is(
 #j9-bulk-v200 .j9b-hero__media,
 #j9-bulk-v200 .j9b-range-card > figure,
 #juicein-services-v2 .ji-sv-v2__hero-tile,
 #juicein-services-v2 .ji-sv-v2__service-media,
 #juicein-popup-page .ji-popup-hero-media,
 #juicein-about-page-v4 .ji-about-hero-media-v4,
 #juicein-about-page-v4 .ji-about-story-media-v48
) > :is(img,video){position:absolute !important;inset:0 !important;}
body.juicein-v2 #j9-bulk-v200 .j9b-hero__media > figcaption,
body.juicein-v2 #juicein-popup-page .ji-popup-hero-media > figcaption {position:absolute !important;z-index:5 !important;}
/* A photoframe with no intrinsic height needs a stable ratio on first paint. */
body.juicein-v2 #j9-bulk-v200 .j9b-range-card > figure {aspect-ratio:16 / 10;min-height:150px;}
body.juicein-v2 #j9-bulk-v200 .j9b-hero__media--main {min-height:240px;}
body.juicein-v2 #j9-bulk-v200 :is(.j9b-hero__media--work,.j9b-hero__media--event){min-height:125px;}
/* Site Media uses the same full-bleed placement bounds, including video. */
body.juicein-v2 .juicein-sm-stage {border-radius:inherit !important;overflow:hidden !important;}
body.juicein-v2 .juicein-sm-slide,
body.juicein-v2 .juicein-sm-slide-media {margin:0 !important;padding:0 !important;border:0 !important;}
body.juicein-v2 .juicein-sm-slide-media {width:100% !important;height:100% !important;max-width:none !important;max-height:none !important;}
/* Respect per-slot manual cropping on saved Site Media, never override it here. */
body.juicein-v2 img[data-juicein-sm-applied],
body.juicein-v2 video[data-juicein-sm-applied]{width:100%;height:100%;min-height:0;margin:0;padding:0;}
/* Typography: improve hierarchy without changing product descriptions or branding. */
body.juicein-v2 :is(#j9-home-v365,#j9-drinks-v201,#j9-bulk-v200,#juicein-services-v2,#juicein-popup-page,#juicein-about-page-v4) :is(h1,h2,h3){text-wrap:balance;}
body.juicein-v2 :is(#j9-home-v365,#j9-drinks-v201,#j9-bulk-v200,#juicein-services-v2,#juicein-popup-page,#juicein-about-page-v4) p {overflow-wrap:break-word;}
body.juicein-v2 :is(#j9-home-v365,#j9-drinks-v201,#j9-bulk-v200,#juicein-services-v2,#juicein-popup-page,#juicein-about-page-v4) :is(a,button):focus-visible{outline:2px solid var(--j9-polish-orange);outline-offset:3px;}
/* Product details are one shared component; preserve the working layout. */
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__content{min-width:0;}
body.juicein-v2 [data-jx-product-modal] .jx-v2-product-modal__product-info > *{min-width:0;overflow-wrap:anywhere;}
@media(max-width:767px){
 body.juicein-v2 :is(#j9-bulk-v200 .j9b-hero__media,#juicein-popup-page .ji-popup-hero-media){min-width:0;}
 body.juicein-v2 #j9-bulk-v200 .j9b-hero__media--main{min-height:210px;}
 body.juicein-v2 .juicein-sm-controls{max-width:calc(100% - 12px);}
}
@media(prefers-reduced-motion:reduce){body.juicein-v2 .juicein-sm-slide {transition:none !important;}}
