/* User-directed outdoor advertising hero. Text and bag labels remain native/original. */
.campaign-hero{position:relative;isolation:isolate;min-height:720px;background:var(--f1-color-surface-white);overflow:hidden}
.campaign-visual{position:absolute;inset:0;z-index:-1}
.campaign-scene{width:100%;height:100%;object-fit:cover;object-position:center center}
.campaign-pack{position:absolute;right:2.8%;bottom:20px;height:88%;display:block;filter:drop-shadow(5px 13px 9px #3d2d273d);transform:rotate(1deg);transform-origin:center bottom}
.campaign-pack img{height:100%;width:auto;max-width:none}
.campaign-content{position:relative;padding-top:42px;pointer-events:none}
.campaign-copy{width:45%;max-width:560px}
.campaign-lead{color:var(--plum);font-size:21px;font-weight:750;line-height:1.6;margin:0 0 15px}
.campaign-copy h1{font-size:clamp(60px,5.5vw,82px);font-weight:800;letter-spacing:-.025em;line-height:1.12;color:#111014;text-wrap:initial}
.campaign-description{font-size:20px;line-height:1.6;color:#514d54;margin-top:20px}
.campaign-facts{display:flex;justify-content:space-between;max-width:405px;margin:25px 0 0;gap:23px}
.campaign-facts>div{text-align:center;min-width:94px}
.campaign-facts dt{font-size:14px;line-height:1.6;color:#27212c;font-weight:600}
.campaign-fact-icon{width:76px;height:76px;border-radius:50%;background:var(--plum);color:var(--f1-color-surface-white);display:flex;align-items:center;justify-content:center;margin:0 auto 10px}
.campaign-fact-icon svg{width:43px;height:43px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}
.campaign-facts dd{font-size:29px;line-height:1.25;font-weight:800;margin:0;color:#111014;font-variant-numeric:tabular-nums}
.campaign-facts dd span{font-size:20px;font-weight:750}
.campaign-footer{position:absolute;inset:auto 0 0;padding-bottom:28px;pointer-events:none}
.campaign-footer-inner{display:flex;align-items:center;gap:40px}
.campaign-footer .btn{pointer-events:auto}
.campaign-slogan{color:#fff16b;font-size:28px;font-weight:750;line-height:1.35;margin-left:28%;text-align:center;transform:rotate(-4deg)}
.campaign-pack:focus-visible{outline:3px solid var(--plum);outline-offset:7px}
@media(min-width:651px) and (max-width:900px){.campaign-visual:after{content:'';position:absolute;left:0;top:0;width:48%;height:84%;background:linear-gradient(90deg,var(--f1-color-surface-white) 0%,#fffffff2 74%,#fff0 100%);mask-image:linear-gradient(#000 82%,#0000);pointer-events:none}}
@media(min-width:1600px){.campaign-hero{min-height:780px}.campaign-copy h1{font-size:86px}.campaign-content{padding-top:54px}.campaign-description{margin-top:25px}.campaign-facts{margin-top:28px}.campaign-pack{right:calc((100vw - 1520px)/2);height:89%}.campaign-slogan{margin-left:24%}}
@media(max-width:1150px){.campaign-hero{min-height:640px}.campaign-content{padding-top:34px}.campaign-copy{width:47%}.campaign-lead{font-size:17px;margin-bottom:14px}.campaign-copy h1{font-size:64px}.campaign-description{font-size:18px;margin-top:18px}.campaign-facts{gap:18px;max-width:340px;margin-top:23px}.campaign-facts>div{min-width:86px}.campaign-fact-icon{width:65px;height:65px;margin-bottom:8px}.campaign-fact-icon svg{width:38px;height:38px}.campaign-facts dt{font-size:13px}.campaign-facts dd{font-size:26px}.campaign-pack{height:83%;right:1.5%;bottom:20px}.campaign-scene{object-position:59% center}.campaign-slogan{margin-left:25%;font-size:25px}.campaign-footer{padding-bottom:23px}}
@media(max-width:900px){.campaign-hero{min-height:560px}.campaign-content{padding-top:35px}.campaign-copy{width:44%}.campaign-lead{font-size:14px;margin-bottom:14px}.campaign-copy h1{font-size:50px;line-height:1.16}.campaign-description{font-size:16px;margin-top:17px;line-height:1.7}.campaign-facts{max-width:285px;gap:10px;margin-top:22px}.campaign-facts>div{min-width:77px}.campaign-fact-icon{width:55px;height:55px;margin-bottom:8px}.campaign-fact-icon svg{width:32px;height:32px}.campaign-facts dt{font-size:12px}.campaign-facts dd{font-size:23px}.campaign-facts dd span{font-size:17px}.campaign-pack{height:71%;bottom:24px;right:1.8%}.campaign-scene{object-position:70% center}.campaign-slogan{margin-left:18%;font-size:21px}.campaign-footer{padding-bottom:19px}.campaign-footer .btn{font-size:13px;min-height:46px;padding:10px 16px}}
@media(max-width:650px){.campaign-hero{display:flex;flex-direction:column;min-height:0;overflow:hidden}.campaign-content{order:0;padding-top:27px;padding-bottom:14px}.campaign-copy{width:100%;max-width:none}.campaign-lead{font-size:14px;margin-bottom:10px}.campaign-copy h1{font-size:44px;line-height:1.16}.campaign-description{font-size:15px;line-height:1.7;margin-top:13px}.campaign-facts{justify-content:flex-start;max-width:none;gap:30px;margin-top:19px}.campaign-facts>div{min-width:76px}.campaign-fact-icon{width:50px;height:50px;margin-bottom:7px}.campaign-fact-icon svg{width:30px;height:30px}.campaign-facts dt{font-size:11px}.campaign-facts dd{font-size:23px}.campaign-facts dd span{font-size:17px}.campaign-visual{position:relative;order:1;inset:auto;z-index:0;height:auto;aspect-ratio:1.08;width:100%;overflow:hidden}.campaign-scene{object-position:90% center}.campaign-pack{height:90%;bottom:10px;right:3%;transform:rotate(1deg)}.campaign-footer{position:relative;order:2;background:var(--plum);padding:17px 0 20px;margin-top:-1px}.campaign-footer-inner{gap:18px;justify-content:space-between}.campaign-footer .btn{font-size:12px;min-height:44px;padding:10px 13px}.campaign-slogan{margin-left:0;transform:rotate(-3deg);font-size:17px;line-height:1.4;color:#fff16b}.campaign-pack:focus-visible{outline-offset:-2px}}
@media(max-width:650px){.campaign-pack{height:80%;right:2%}}
/* Only the product image and facts change; the scene remains fixed. */
.campaign-hero [hidden]{display:none!important}.campaign-hero{touch-action:pan-y pinch-zoom}.campaign-details{min-height:270px}.campaign-product-name{font-weight:650}.campaign-controls{display:flex;align-items:center;flex-wrap:wrap;gap:8px;max-width:405px;margin-top:10px;pointer-events:auto}.hero-step,.hero-dot{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--f1-color-border-field);border-radius:var(--f1-radius-control);background:var(--f1-color-surface-white);color:var(--plum);padding:0;cursor:pointer}.hero-step:hover{background:var(--f1-color-surface-selected)}.hero-previous svg{transform:rotate(180deg)}.hero-count{min-width:32px;text-align:center;font-size:12px;font-variant-numeric:tabular-nums;color:var(--plum)}.hero-dots{display:flex;margin-left:auto;gap:0}.hero-dot{border:0;background:transparent}.hero-dot:before{content:'';display:block;width:9px;height:9px;border-radius:50%;border:1px solid var(--plum);background:var(--f1-color-surface-white)}.hero-dot[aria-pressed=true]:before{background:var(--plum)}.hero-dot:hover{background:var(--f1-color-surface-selected)}.hero-announcement{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.hero-slide-enter{animation:hero-product-enter .32s cubic-bezier(.16,1,.3,1)}.campaign-hero[data-direction=previous]{--hero-offset:-24px}.campaign-hero[data-direction=next]{--hero-offset:24px}
@keyframes hero-product-enter{from{opacity:.25;transform:translateX(var(--hero-offset,24px))}to{opacity:1;transform:translateX(0)}}
.hero-dots{flex-wrap:wrap;max-width:100%}
@media(min-width:651px){.campaign-content{padding-bottom:116px}}
@media(max-width:1150px){.campaign-details{min-height:230px}.campaign-controls{max-width:340px;margin-top:8px}}
@media(max-width:900px){.campaign-details{min-height:205px}.campaign-controls{max-width:300px;margin-top:7px}}
@media(max-width:650px){.campaign-details{min-height:196px}.campaign-controls{max-width:405px;margin-top:10px}}
@media(max-width:360px){.hero-dots{flex-basis:100%;justify-content:flex-start;margin-left:0}.campaign-controls{column-gap:10px;row-gap:0}}
@media(prefers-reduced-motion:reduce){.hero-slide-enter{animation:none!important}}
@media(max-width:360px){.campaign-copy h1{font-size:40px}.campaign-lead{font-size:12px}.campaign-facts{gap:22px}.campaign-facts>div{min-width:68px}.campaign-fact-icon{width:46px;height:46px}.campaign-facts dt{font-size:11px}.campaign-footer .btn{font-size:11px}.campaign-slogan{font-size:15px}}
