/* Text and full poster remain side by side at every width. */
.product-banner{min-height:0;background:#101216;box-shadow:0 8px 24px rgba(6,26,56,.07)}
.banner-slide,.banner-slide.active{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.banner-copy{display:flex;min-width:0;padding:32px 42px 42px;background:none}
.banner-copy h2{margin:0 0 12px;font-size:clamp(24px,3vw,38px);line-height:1.18;letter-spacing:-.025em;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
.banner-copy p{display:none}
.banner-copy>strong{margin:0 0 16px;font-size:24px}
.banner-kicker{font-size:12px;letter-spacing:.1em}
.banner-image{min-width:0;min-height:0;padding:16px;background:#f2f3f5}
.banner-image img{width:100%;height:280px;aspect-ratio:auto;object-fit:contain;mix-blend-mode:normal}
.banner-dots{left:42px;bottom:14px;transform:none;background:none;padding:0}
@media(max-width:700px){
 .banner-slide,.banner-slide.active{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
 .banner-copy{padding:18px 12px 32px 16px}
 .banner-copy h2{font-size:18px;line-height:1.22;margin-bottom:10px}
 .banner-kicker{font-size:12px;letter-spacing:0;margin-bottom:8px}
 .banner-copy>strong{font-size:18px;margin-bottom:12px}
 .banner-copy .banner-cta{font-size:13px;padding:9px 10px;min-height:40px}
 .banner-cta span{display:none}
 .banner-image{padding:8px}
 .banner-image img{height:216px;width:100%;aspect-ratio:auto;object-fit:contain}
 .banner-dots{left:16px;bottom:12px;transform:none;padding:0;background:none}
}
