/* Contextual imagery. Shadows stay in CSS so original product pixels remain intact. */
.product-image,.category-tile-art,.category-choice-art{background:#fff!important}
.product-image img,.category-tile-art img,.category-choice-art img,.feature-art>img,.stage-product{
  mix-blend-mode:normal!important;
  filter:drop-shadow(0 2px 2px #173d3512) drop-shadow(0 9px 10px #173d3520);
}
.campaign-product .stage-product{filter:drop-shadow(0 3px 3px #173d3514) drop-shadow(0 13px 12px #173d3526)}
.campaign-product .stage-original{background:#fff}
.campaign-product .stage-original .stage-background{opacity:.16;mask-image:linear-gradient(0deg,#000,transparent 45%)}
.campaign-home,.campaign-catalogue,.discovery-image,.campaign-universe,.journal-visual{box-shadow:0 2px 4px #173d3508,0 12px 28px #173d3512}
.discovery-image{border-radius:24px;overflow:hidden}
.discovery-image img{object-position:78% center!important}
.campaign-product .stage-background{object-position:30% center}
.campaign-product .stage-product{left:7%;width:70%;top:13%!important}
.campaign-product .stage-original .stage-product{left:15%}
.journal-visual{width:100%;height:210px;object-fit:cover;object-position:75% center;border-radius:17px;margin-bottom:22px;display:block}
.home-needs{position:relative}
.home-needs .botanical-accent{position:absolute;right:0;top:-58px;width:155px;height:125px;object-fit:contain;pointer-events:none;filter:drop-shadow(0 7px 6px #173d3520)}
.home-needs .section-heading{padding-right:135px}
.feature-art:before{background-image:url('assets/optimized/ambiance-home-v6-0c6b8261d0-1200.webp')}
.product-image img,.category-choice-art img,.discovery-image img,.journal-visual{transition:transform .45s ease,filter .45s ease}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .product-card:hover .product-image img,.product-card:focus-within .product-image img{transform:translateY(-5px) scale(1.025)}
 .discovery-image:hover img{transform:scale(1.025)}
 .journal-card:hover .journal-visual{transform:translateY(-3px)}
}
@media(prefers-reduced-motion:no-preference){
 .campaign-copy{animation:sa-visual-enter .7s ease-out both}
 @keyframes sa-visual-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
}
@media(max-width:760px){
 .journal-visual{height:190px}
 .home-needs .botanical-accent{width:100px;height:90px;top:-25px}
 .home-needs .section-heading{padding-right:90px}
 .campaign-product .stage-product{left:8%;width:72%}
}
@media(prefers-reduced-motion:reduce){
 .product-image img,.category-choice-art img,.discovery-image img,.journal-visual{transition:none;animation:none;transform:none!important}
}

/* V7: packshots and human editorial photographs have distinct visual roles.
   Never position a product cutout over an unrelated photographic scene. */
.campaign-product .product-packshot{
 display:flex;align-items:center;justify-content:center;
 background:#fff!important;border:1px solid #e9e6df;padding:48px;
 box-shadow:0 8px 24px #173d3507;
}


.campaign-product .product-packshot:before,.campaign-product .product-packshot:after{display:none!important}
.campaign-product .product-packshot .stage-product{
 position:static;inset:auto!important;width:75%;height:420px!important;
 max-width:420px;object-fit:contain;filter:none!important;animation:none!important;
 transform:none!important;margin:0!important;mix-blend-mode:normal!important;
}
.product-image img,.category-tile-art img,.category-choice-art img{filter:none!important}
.product-card:hover .product-image img,.product-card:focus-within .product-image img{transform:none!important}
.discovery-image img{object-position:50% 35%!important}
.campaign-universe .universe-scene{object-position:50% 30%}
.universes .campaign-universe{min-height:410px}
.catalogue-scene{object-position:50% 30%}
.campaign-catalogue:after{background:linear-gradient(90deg,#f0eee4 0%,#f0eee4 40%,#f0eee4b0 47%,transparent 58%)}
.campaign-home:after{background:linear-gradient(90deg,#f1e9dbbd, #f1e9db50 35%,transparent 57%)}
.human-feature:before,.human-feature:after{display:none!important}
.feature-art.human-feature{padding:0;background:none;min-height:490px}
.feature-art.human-feature>img{width:100%;height:100%;min-height:490px;max-width:none;object-fit:cover;object-position:50% 30%;filter:none;transform:none;animation:none;border-radius:0}
.campaign-backdrop{object-position:center top}
.wellness-hero>img{inset:0 0 0 auto;width:50%;object-position:50% 30%}
.wellness-hero:before{display:none}
.wellness-hero>div{width:50%;padding:45px 4%}
.wellness-hero h1{font-size:clamp(36px,3.6vw,52px)}
.ferment-ritual-visual img{object-position:50% 30%}
@media(max-width:760px){
 .campaign-product .product-packshot{height:370px;padding:32px}
 .campaign-product .product-packshot .stage-product{height:300px!important;width:80%;max-width:300px}
 .campaign-backdrop{height:360px;object-position:84% center}
 .campaign-home:after{display:none}
 .campaign-catalogue:after{display:none}
 .catalogue-scene{height:275px;object-position:50% 28%}
 .universes .campaign-universe{min-height:360px}
 .feature-art.human-feature,.feature-art.human-feature>img{min-height:330px;height:330px}
 .wellness-hero{padding-top:0}
 .wellness-hero>img{position:relative;inset:auto;width:100%;height:320px;display:block;z-index:0}
 .wellness-hero>div{width:100%;padding:25px}
}

/* Product presentation: crop empty canvas in CSS, retaining original photo files. */
.campaign-product .product-packshot{height:560px;padding:24px;--pack-height:510px}
.packshot-frame{display:block;position:relative;width:min(100%,calc(var(--pack-height)*var(--pack-ratio,1)));aspect-ratio:var(--pack-ratio,1);overflow:hidden;flex:none}
.campaign-product .product-packshot .packshot-frame .stage-product{position:absolute;inset:auto!important;left:var(--image-left,0)!important;top:var(--image-top,0)!important;width:var(--image-width,100%);height:auto!important;max-width:none;object-fit:initial;display:block}
.single-sa_product{--order-space:110px;--section-nav-height:66px;padding-bottom:var(--order-space)}
html:has(body.single-sa_product){scroll-padding-top:0;scroll-padding-bottom:calc(var(--order-space,110px) + 24px)}
.single-sa_product :is(a,button,summary){scroll-margin-bottom:calc(var(--order-space) + 24px)}
.product-editorial .story-nav{top:10px;z-index:20}
.product-editorial :is(.story-section,.partner-invitation){scroll-margin-top:calc(var(--section-nav-height) + 28px)}
.product-order-dock{position:static;margin-top:24px;padding:0;background:none;border:0;box-shadow:none;scroll-margin-top:110px}
.product-order-dock .button{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:16px 28px;background:#123c32;color:#fff;border:1px solid #123c32;font-size:17px;font-weight:600;line-height:1.35;text-align:center;white-space:normal;border-radius:14px;transform:none}
.product-order-dock .button:hover{background:#205344;color:#fff;transform:none}
.product-order-dock .button:focus-visible{outline:3px solid #a36b23;outline-offset:3px}
.product-editorial .partner-invitation{transform:none;opacity:1;grid-template-columns:1fr}
.story-section h2:focus,.partner-invitation h2:focus{outline:2px solid #a36b23;outline-offset:6px}
@media(max-width:800px){
 .campaign-product .product-packshot{height:350px;padding:18px;--pack-height:312px}
 .product-editorial .story-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;margin:18px 0 20px;padding:6px;overflow:visible}
 .product-editorial .story-nav a{display:flex;align-items:center;justify-content:center;min-height:44px;min-width:0;padding:10px 2px;font-size:11px}
 .product-order-dock .button{width:100%}
}
@media(max-width:360px){.campaign-product .product-packshot{height:320px;--pack-height:282px;padding:18px}}
@media print{.product-order-dock{position:static;box-shadow:none}.single-sa_product{padding-bottom:0}}

.single-sa_product{--order-space:0px;padding-bottom:0}
.story-intro>p{margin:0 0 16px}
.usage-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:30px;margin:20px 0 50px;background:#edf1e6;border-radius:20px}
.usage-facts>div{display:flex;flex-direction:column;gap:10px;text-align:center}
.usage-facts strong{font:clamp(26px,3vw,40px)/1.1 Georgia,serif;color:#173e34}
.usage-facts span{font-size:14px;line-height:1.6;color:#53664f}
.product-usage-steps{list-style:none;counter-reset:gesture;padding:0;margin:30px 0}
.product-usage-steps li{counter-increment:gesture;position:relative;padding:0 0 24px 54px;margin-bottom:24px;border-bottom:1px solid #dce3d4}
.product-usage-steps li:before{content:counter(gesture);position:absolute;left:0;top:0;width:34px;height:34px;display:grid;place-items:center;background:#e6eddb;border-radius:50%;color:#365542;font-size:14px}
.product-usage-steps h3{font:25px/1.25 Georgia,serif;margin:0 0 12px}
.product-usage-steps p{font-size:16px;line-height:1.8;margin:0;color:#53664f}
.packshot-frame{transition:transform .4s ease}
.product-card:hover,.product-card:focus-within,.category-choice-card:hover{transform:none}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .product-packshot:hover .packshot-frame{transform:scale(1.025) rotate(-1deg)}
 .product-card:hover .product-image img,.product-card:focus-within .product-image img{transform:scale(1.035)!important}
}
@media(prefers-reduced-motion:reduce){.packshot-frame{transition:none;transform:none}}
@media(max-width:600px){.usage-facts{gap:24px;grid-template-columns:1fr;padding:24px}.product-usage-steps li{padding-left:46px}.product-usage-steps h3{font-size:23px}}

/* A single persistent navigation includes the actual LR order link. */
.single-sa_product{padding-bottom:var(--order-space,140px)}
.product-editorial .story-nav{position:fixed;top:auto;bottom:16px;left:50%;transform:translateX(-50%);width:calc(100% - 32px);max-width:900px;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:center;gap:6px;padding:8px;border-radius:20px;background:#fffdf8;border:1px solid #d6dfd7;box-shadow:0 8px 30px #123c322b;z-index:40;overflow:visible}
.product-editorial .story-nav>a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:8px;font-size:14px}
.product-editorial .story-nav .product-order-dock{position:static;margin:0;padding:0;border:0;background:none;box-shadow:none}
.product-editorial .story-nav .product-order-dock .button{display:flex;min-height:52px;width:100%;padding:12px 24px;font-size:17px;color:#fff;background:#123c32;border-radius:12px}
.product-editorial :is(.story-section,.partner-invitation){scroll-margin-top:24px}
@media(max-width:600px){
 .product-editorial .story-nav{left:0;transform:none;bottom:0;width:100%;max-width:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:5px 12px calc(8px + env(safe-area-inset-bottom,0px));border-radius:18px 18px 0 0}
 .product-editorial .story-nav>a{font-size:12px;min-height:38px;padding:8px 2px}
 .product-editorial .story-nav .product-order-dock{grid-column:1/-1}
}
body:has(.menu-toggle[aria-expanded="true"]) .product-editorial .story-nav{visibility:hidden;pointer-events:none}
@media print{.product-editorial .story-nav{position:static;transform:none}.single-sa_product{padding-bottom:0}}

main > .wrap > .partner-invitation:last-child{margin-bottom:56px}
@media(max-width:760px){main > .wrap > .partner-invitation:last-child{margin-bottom:28px}}
