.sb-cashflow-campaign{padding:32px 0;background:#eff8ff;overflow:hidden}
.sb-cashflow-campaign .cashflow-title{margin:0 0 24px;padding-left:14px;border-left:4px solid #0867db;color:#0a3979;font-size:clamp(1.3rem,2.4vw,2rem);font-weight:700;line-height:1.5;text-wrap:pretty}
.sb-product-campaign{padding:48px 0;background:#eff8ff}
.sb-product-campaign .wrap{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:12px 36px;align-items:center}
.sb-product-campaign .hero-summary,.sb-product-campaign .hero-details{max-width:none;grid-column:1}
.sb-product-campaign .hero-summary h1{font-size:clamp(2.2rem,4vw,3.8rem);max-width:none}
.sb-product-campaign-art{grid-column:2;grid-row:1/span 2;display:block;min-width:0}
.sb-product-campaign-art img{display:block;width:100%;height:auto;border-radius:16px}
.sb-product-campaign .hero-details .small{margin-top:16px;line-height:1.6}
.cashflow-timeline{margin-top:0;min-width:0}
.cashflow-viewport{overflow-x:auto;scroll-snap-type:x mandatory;border-radius:20px}
.cashflow-timeline.is-ready .cashflow-viewport{overflow:hidden;scroll-snap-type:none;touch-action:pan-y pinch-zoom}
.cashflow-timeline .tl-strip{display:flex;flex-wrap:nowrap;width:100%;gap:0}
.cashflow-timeline .tl-item{flex:0 0 36%;min-width:0;margin-right:16px;aspect-ratio:auto;scroll-snap-align:start}
.cashflow-controls{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:20px}
.cashflow-controls[hidden]{display:none}
.cashflow-count{margin-right:auto;color:#4c6182;font-size:15px;font-variant-numeric:tabular-nums}
.cashflow-controls button{min-width:44px;min-height:44px;border:1px solid #bbd1ec;border-radius:12px;padding:9px 14px;background:#fff;color:#0a3979;font:inherit;font-size:15px;cursor:pointer}
.cashflow-controls .cashflow-prev,.cashflow-controls .cashflow-next{font-size:22px;line-height:1}
.cashflow-controls button:hover{background:#f4f9ff;border-color:#0867db}
.cashflow-controls button:focus-visible,.cashflow-viewport:focus-visible{outline:3px solid #0867db;outline-offset:3px}
@media(max-width:1023px){.cashflow-timeline .tl-item{flex-basis:46%}}
@media(max-width:599px){.cashflow-timeline .tl-item{flex-basis:84%}}
@media(max-width:767px){
 .sb-product-campaign{padding:28px 0}
 .sb-product-campaign .wrap{grid-template-columns:1fr;gap:20px}
 .sb-product-campaign .hero-summary{grid-row:1}
 .sb-product-campaign-art{grid-column:1;grid-row:2}
 .sb-product-campaign .hero-details{grid-row:3}
 .sb-cashflow-campaign{padding:24px 0}
 .cashflow-timeline .tl-item{margin-right:12px;aspect-ratio:auto}
}

.cashflow-timeline .tl-item .sb-picture img{aspect-ratio:16/9;object-fit:contain}

/* Keep every word in the supplied campaign artwork visible. */
.product-artwork{display:block;width:100%;min-width:0;background:#eaf6ff;overflow:hidden}
.product-artwork img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
.prod .shot .product-artwork{position:static;aspect-ratio:16/9}
.prod .shot .product-artwork img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;opacity:1;filter:none}
.campaign-product-card .shot{background:#fff}
.campaign-product-card .shot:after{display:none}
.campaign-product-card .shot-copy{position:static;background:#fff;color:#07153b}
.prod-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.prod-grid>.ask{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr;gap:12px 30px;padding:28px 32px}
.prod-grid>.ask>div{grid-column:1;grid-row:1/span 2;align-self:center}
.prod-grid>.ask .btn{grid-column:2;grid-row:1;align-self:center}
.prod-grid>.ask ul{grid-column:2;grid-row:2;margin:0}
.campaign-comparison-card{overflow:hidden}
.campaign-comparison-card>.product-artwork{border-radius:14px;margin-bottom:24px}
.matched-product .sb-picture.product-artwork{aspect-ratio:16/9}
.matched-product .product-artwork img{width:100%;height:auto;aspect-ratio:16/9;object-fit:contain}
@media(max-width:1024px){.prod-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.prod-grid>.ask{grid-column:auto;display:flex;padding:28px}}
@media(max-width:767px){
 .prod-grid{grid-template-columns:1fr}
 .prod .shot .product-artwork,.matched-product .sb-picture.product-artwork{aspect-ratio:4/5}
 .product-artwork img,.prod .shot .product-artwork img,.matched-product .product-artwork img{aspect-ratio:4/5;height:auto;object-fit:contain}
 .campaign-comparison-card>.product-artwork{margin-bottom:20px}
}
