.zc-campaign-scene .immersive-shade{background:linear-gradient(90deg,#172019a6,#17201915),linear-gradient(0deg,#18241ee6,transparent 80%)}
.zc-campaign-scene .immersive-copy{text-align:left;max-width:1250px}
.zc-campaign-scene .immersive-title{font-family:var(--serif,Georgia,serif);font-size:clamp(65px,8.4vw,140px);max-width:850px;margin:0 0 8px;letter-spacing:-.045em;line-height:1}
.zc-campaign-subtitle{font:italic clamp(36px,5vw,80px)/1.12 var(--serif,Georgia,serif);margin:0 0 28px;color:#ede2cc}
.zc-campaign-scene .immersive-description{margin:0 0 22px;max-width:400px}
.zc-campaign-scene .immersive-panel-shop{display:inline-flex!important;background:#a94333;color:white;border-color:#a94333;padding:16px 25px;border-radius:40px;min-height:54px;font-size:14px;box-shadow:0 8px 30px #0002}
.zc-campaign-scene .immersive-cta{margin-left:24px}
.zc-campaign-focus{grid-template-columns:1fr 1fr;gap:5vw}
.zc-campaign-focus .immersive-title{font-size:clamp(48px,5vw,82px)}
.zc-campaign-spotlights{position:relative;z-index:2;display:flex;gap:22px;align-items:center;min-width:0}
.zc-campaign-object{width:50%;display:block;padding:12px 12px 17px;background:#fffdf3;color:#263b30;border:1px solid #e1dfd3;border-radius:28px;box-shadow:0 24px 50px #0003;transition:translate .2s}
.zc-campaign-object:nth-child(2){margin-top:70px}
.zc-campaign-object:hover{translate:0 -6px}
.zc-campaign-object-image{aspect-ratio:1;overflow:hidden;border-radius:18px;background:white}
.zc-campaign-object-image img{width:100%;height:100%;object-fit:contain}
.zc-campaign-object.is-ambient img{object-fit:cover;transform:scale(1.8)}
.zc-campaign-object>span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13px;line-height:1.4;margin:13px 4px 8px}
.zc-campaign-object strong{display:flex;justify-content:space-between;font-size:15px;margin:0 4px}
.zc-campaign-object small{font-size:9px;opacity:.7;display:block;margin:4px}
.zc-campaign-collection{padding:85px 7%;background:#f3f0e6;scroll-margin-top:0}
.zc-campaign-section-heading{max-width:850px;margin-bottom:40px}
.zc-campaign-section-heading h2{font:clamp(38px,4.5vw,70px)/1.06 var(--serif,Georgia,serif);letter-spacing:-.03em;margin:16px 0}
.zc-campaign-section-heading h2 em{display:block;color:#66745b}
.zc-campaign-section-heading p{max-width:500px;line-height:1.7}
.zc-campaign-set{display:grid;grid-template-columns:1fr 1.5fr;gap:5vw;align-items:center;margin-bottom:50px;padding:40px;border:1px solid #d6dccd;border-radius:28px;background:#e5e9dc}
.zc-campaign-set>div>h3{font:clamp(35px,3.5vw,55px)/1.1 var(--serif,Georgia,serif);margin:15px 0}
.zc-campaign-set>div>p{max-width:300px;line-height:1.7}
.zc-campaign-set .zc-bundle{margin:0;background:#fffdf6;border-radius:22px}
.zc-campaign-set .zc-bundle h3{font-size:28px}
.zc-campaign-set .zc-bundle form button{background:#a94333;color:white;border:0;border-radius:30px;padding:15px 22px;font-weight:600;cursor:pointer}
.zc-campaign-banner{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 18px;margin:12px 0 20px;border:1px solid #d6dccd;border-radius:16px;background:#e8ecdf;font-size:13px}
.zc-campaign-banner>a{font-weight:600;text-decoration:underline;text-underline-offset:4px}
.zc-campaign-breadcrumb{padding:25px 7%;font-size:13px}.zc-campaign-page{padding-top:15px}
@media(max-width:760px){
 .zc-campaign-scene .immersive-title{font-size:clamp(44px,12vw,78px)}.zc-campaign-subtitle{font-size:clamp(30px,8vw,48px);margin-bottom:20px}
 .zc-campaign-scene .immersive-cta{display:none}.zc-campaign-scene .immersive-panel-shop{font-size:12px;padding:13px 20px;min-height:46px}
 .zc-campaign-focus{display:flex;flex-direction:column;justify-content:center;gap:18px;padding-top:120px;padding-bottom:180px}
 .zc-campaign-focus .immersive-title{font-size:35px;margin-bottom:12px}.zc-campaign-focus .immersive-eyebrow{margin-bottom:10px}
 .zc-campaign-focus .immersive-description{display:none}.zc-campaign-focus .immersive-copy{text-align:center}
 .zc-campaign-spotlights{max-width:300px;width:100%;gap:0;justify-content:center}
 .zc-campaign-object{width:210px;padding:10px;border-radius:22px}.zc-campaign-object-image{aspect-ratio:1.3}
 .zc-campaign-object:nth-child(2){display:none}
 .zc-campaign-focus .immersive-copy{order:0}.zc-campaign-spotlights{order:1}
 .zc-campaign-collection{padding:50px 7%;scroll-margin-top:0}.zc-campaign-set{grid-template-columns:1fr;padding:20px;gap:18px}.zc-campaign-set>div>h3{font-size:34px}.zc-campaign-set>div>p{font-size:13px}
 .zc-campaign-collection ul.products{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:14px;gap:15px}.zc-campaign-collection ul.products li.product{flex:0 0 72%;height:auto;scroll-snap-align:start}
 .zc-campaign-banner{font-size:12px;align-items:start}.zc-campaign-banner span{max-width:55%}
}
@media(prefers-reduced-motion:reduce){.zc-campaign-object{transition:none}.zc-campaign-object:hover{translate:none}}

.immersive:has(.zc-campaign-scene) .immersive-catalog-access{display:none}
@media(max-width:760px){.immersive:has(.zc-campaign-scene) .immersive-catalog-access{display:flex;inset:112px 24px auto auto;transform:none;width:auto}.immersive:has(.zc-campaign-scene) .immersive-catalog-access>span{display:none}.immersive:has(.zc-campaign-scene) .immersive-catalog-access .immersive-shop-primary{font-size:10px;min-height:36px;padding:8px 14px}}

@media(max-width:760px){.zc-campaign-focus .immersive-eyebrow{display:none}}

/* Reserve the bottom navigation area; size editorial text to both screen axes. */
.zc-campaign-scene{padding-bottom:180px;min-width:0}
.zc-campaign-scene .immersive-copy{width:100%;min-width:0;max-width:100%;transform:none}
.zc-campaign-scene .immersive-title{font-size:clamp(38px,min(7.8vw,12svh),100px);max-width:100%;overflow-wrap:anywhere;text-wrap:balance}
.zc-campaign-scene .immersive-title .word{max-width:100%;white-space:normal}
.zc-campaign-subtitle{font-size:clamp(26px,min(5vw,7svh),64px);max-width:100%;white-space:normal;overflow-wrap:anywhere;text-wrap:balance;margin-bottom:20px}
.zc-campaign-scene .immersive-eyebrow{margin-bottom:18px}
.zc-campaign-scene .immersive-panel-shop{margin-bottom:8px;max-width:100%;white-space:normal}
.zc-campaign-scene .immersive-cta{max-width:100%;white-space:normal}
.zc-campaign-focus{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.zc-campaign-focus .immersive-title{font-size:clamp(36px,min(5vw,8svh),76px)}
@media(min-width:761px) and (max-height:700px){
 .zc-campaign-scene{padding-top:140px;padding-bottom:150px}
 .zc-campaign-scene .immersive-eyebrow{margin-bottom:12px}
 .zc-campaign-scene .immersive-description{margin-bottom:14px;font-size:12px}
 .zc-campaign-scene .immersive-panel-shop{padding:12px 21px;min-height:46px;font-size:13px}
 .zc-campaign-subtitle{margin-bottom:16px}
 .zc-campaign-object:nth-child(2){margin-top:28px}
 .zc-campaign-object-image{max-height:25svh}
}
@media(max-width:760px){
 .zc-campaign-scene{padding-top:155px;padding-bottom:175px}
 .zc-campaign-scene .immersive-title{font-size:clamp(36px,min(11vw,9svh),65px)}
 .zc-campaign-subtitle{font-size:clamp(26px,min(8vw,6svh),43px)}
 .zc-campaign-focus{padding-top:155px;padding-bottom:175px;gap:14px}
 .zc-campaign-focus .immersive-title{font-size:clamp(28px,7.8vw,36px)}
 .zc-campaign-focus .zc-campaign-object-image{max-height:22svh}
}

/* One clear seasonal offer, with every component visible. */
.immersive:has(.zc-campaign-scene) .immersive-catalog-access{display:none!important}
.zc-campaign-focus:has(.is-bundle) .immersive-panel-shop{display:none!important}
.zc-campaign-spotlights.is-bundle{justify-content:center;width:100%}
.zc-campaign-bundle{width:100%;max-width:410px;padding:22px}
.zc-campaign-bundle-badge{display:block!important;color:#a94333;font-size:11px!important;margin:0!important}
.zc-campaign-bundle h3{font:28px/1.15 var(--serif,Georgia,serif);margin:10px 0 16px}
.zc-campaign-bundle-parts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.zc-campaign-bundle-parts a{min-width:0}
.zc-campaign-bundle-parts img{width:100%;height:130px;object-fit:cover;border-radius:12px}
.zc-campaign-bundle-parts span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:11px;line-height:1.4;margin-top:7px}
.zc-campaign-bundle-total{margin:16px 0 12px;line-height:1.2}
.zc-campaign-bundle-total del{font-size:12px;color:#73806e;margin-right:6px}
.zc-campaign-bundle-total strong{display:inline!important;margin:0!important;font-size:24px!important}
.zc-campaign-bundle-total small{font-size:11px;margin:6px 0 0}
.zc-campaign-bundle button{width:100%;background:#a94333;color:white;border:0;border-radius:28px;min-height:46px;padding:10px 16px;font:600 13px var(--sans);cursor:pointer}
.zc-campaign-bundle .zc-campaign-bundle-catalog{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:8px;min-height:36px;font-size:12px;text-decoration:underline;text-underline-offset:4px}
.zc-campaign-bundle-catalog span{display:inline!important;font-size:14px!important;margin:0!important}
@media(max-width:760px){
 .zc-campaign-spotlights{max-width:100%;justify-content:flex-start;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;padding:3px 4px 12px}
 .zc-campaign-object,.zc-campaign-object:nth-child(2){display:block;flex:0 0 86%;margin-top:0;scroll-snap-align:center}
 .zc-campaign-spotlights.is-bundle{overflow:visible;padding:0}
 .zc-campaign-bundle{flex:0 1 320px;max-width:320px;width:100%;padding:16px}
 .zc-campaign-bundle h3{font-size:24px;margin:8px 0 12px}
 .zc-campaign-bundle-parts img{height:clamp(65px,13svh,105px)}
 .zc-campaign-bundle-total{margin:12px 0 10px}
 .zc-campaign-focus:has(.is-bundle){padding-top:115px;padding-bottom:165px}
}

@media(min-width:761px){
 .zc-campaign-focus .immersive-copy{min-width:0}
 .zc-campaign-spotlights:not(.is-bundle){width:100%;justify-content:center}
 .zc-campaign-spotlights:not(.is-bundle) .zc-campaign-object{flex:0 1 280px;width:280px;min-width:0;padding:16px;border-radius:26px}
 .zc-campaign-spotlights:not(.is-bundle) .zc-campaign-object:only-child{flex:0 0 300px;width:300px;max-width:100%}
 .zc-campaign-spotlights:not(.is-bundle) .zc-campaign-object-image{height:230px;aspect-ratio:auto}
 .zc-campaign-spotlights:not(.is-bundle) .zc-campaign-object>span{font-size:16px;line-height:1.4}
 .zc-campaign-spotlights:not(.is-bundle) .zc-campaign-object strong{font-size:20px;flex-wrap:wrap;gap:4px}
}

/* Explicit dimensions prevent Safari flex/aspect-ratio sizing differences. */
.zc-campaign-product-card{position:relative;flex:0 1 280px;width:280px;min-width:0;background:#fffdf3;border:1px solid #e1dfd3;border-radius:26px;overflow:hidden;box-shadow:0 24px 50px #0003}
.zc-campaign-spotlights .zc-campaign-product-card .zc-campaign-object{width:100%;max-width:none;min-width:0;border:0;box-shadow:none;margin:0;box-sizing:border-box;border-radius:0;padding:16px;display:block}
.zc-campaign-product-card .zc-campaign-object-image{width:100%;height:220px;max-height:none;aspect-ratio:auto;display:flex;align-items:center;justify-content:center}
.zc-campaign-product-card .zc-campaign-object-image img{display:block;width:100%;height:100%;object-fit:contain}
.zc-campaign-product-card .zc-wishlist-form{position:absolute;right:22px;top:22px;margin:0;z-index:3}
.zc-campaign-product-card>.zc-wishlist-button{position:absolute;right:22px;top:22px;z-index:3}
.zc-campaign-product-card .zc-wishlist-button{width:44px;min-height:44px;justify-content:center;padding:0!important;border-radius:50%;background:#fffdf3!important;box-shadow:0 2px 12px #0002!important;font-size:0!important}
.zc-campaign-product-card:only-child{flex-basis:300px;width:300px}
@media(max-width:760px){
 .zc-campaign-focus .zc-campaign-spotlights:not(.is-bundle){width:100%;max-width:360px;align-self:center;box-sizing:border-box}
 .zc-campaign-product-card,.zc-campaign-product-card:only-child{flex:0 0 90%;width:90%;scroll-snap-align:center;border-radius:24px}
 .zc-campaign-product-card:only-child{flex-basis:100%;width:100%}
 .zc-campaign-focus .zc-campaign-product-card .zc-campaign-object-image{height:clamp(130px,23svh,210px);max-height:none;aspect-ratio:auto}
 .zc-campaign-product-card .zc-campaign-object>span{font-size:14px;line-height:1.35}
 .zc-campaign-product-card .zc-campaign-object strong{font-size:18px}
}

/* Animate the whole card, not a child that Safari composites outside its clip. */
.immersive .zc-campaign-product-card{
 box-sizing:border-box;padding:14px;border-radius:26px!important;
 isolation:isolate;-webkit-mask-image:-webkit-radial-gradient(white,black);
 transform:translateZ(0);overflow:hidden!important;
}
.immersive .zc-campaign-product-card .zc-campaign-object{
 padding:0!important;background:transparent!important;border-radius:12px!important;
 translate:none!important;
}
.immersive .zc-campaign-product-card .zc-campaign-object-image{
 border-radius:16px!important;overflow:hidden;box-sizing:border-box;padding:10px;
}
.immersive .zc-campaign-product-card .zc-campaign-object-image img{
 object-position:center!important;border-radius:8px;max-width:100%;max-height:100%;
}
@media(max-width:760px){
 .immersive .zc-campaign-focus .zc-campaign-spotlights:not(.is-bundle){max-width:300px;padding:4px 4px 12px;overflow-y:hidden}
 .immersive .zc-campaign-product-card{padding:14px;border-radius:24px!important;flex-shrink:0}
 .immersive .zc-campaign-product-card .zc-campaign-object-image{height:170px;max-height:21svh;min-height:125px}
 .immersive .zc-campaign-product-card .zc-campaign-object>span{margin:12px 2px 8px}
 .immersive .zc-campaign-product-card .zc-campaign-object strong{margin:0 2px;align-items:center}
 .immersive .zc-campaign-product-card .zc-wishlist-form,.immersive .zc-campaign-product-card>.zc-wishlist-button{top:20px;right:20px}
}
