/* Original photographs, composed as one responsive campaign banner. */
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.pump-banner{position:relative;isolation:isolate;overflow:hidden;background:#111411;color:#fff;aspect-ratio:2.65;min-height:350px}
.pump-banner-art,.banner-shot{position:absolute;inset:0}
.pump-banner-art{z-index:-2}
.banner-shot{right:auto;overflow:hidden;clip-path:polygon(15% 0,100% 0,85% 100%,0 100%)}
.banner-shot img{width:100%;height:100%;object-fit:cover;filter:saturate(.65) contrast(1.08);object-position:center 40%}
.banner-shot:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0b100d44,transparent 30%,transparent 65%,#0b100d99)}
.banner-shot-row{left:0;width:34%;clip-path:polygon(0 0,100% 0,88% 100%,0 100%);z-index:5}
.banner-shot-row img{object-position:52% 37%}
.banner-shot-hip-one{left:27%;width:24%;z-index:4}
.banner-shot-hip-one img{object-position:55% 32%}
.banner-shot-screen{left:46%;width:19%;z-index:3}
.banner-shot-screen img{object-position:48% 26%;filter:saturate(.55) contrast(1.1) brightness(.87)}
.banner-shot-leg{left:59%;width:28%;z-index:2}
.banner-shot-leg img{object-position:49% 30%}
.banner-shot-hip-two{left:81%;width:22%;clip-path:polygon(15% 0,100% 0,100% 100%,0 100%)}
.banner-shot-hip-two img{object-position:58% 32%}
.pump-banner:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#0a0e0cf7 0%,#0a0e0cba 15%,transparent 55%),linear-gradient(180deg,#0b100d99,transparent 25%),linear-gradient(90deg,#0b100d40,transparent 45%);pointer-events:none}
.pump-banner:after{content:"";position:absolute;inset:0;border:1px solid #ffffff1c;pointer-events:none}
.banner-topline{position:absolute;inset:25px 30px auto;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:9px;font-weight:600;letter-spacing:.2em;line-height:1.5}
.banner-topline>span:first-child{display:flex;gap:12px;align-items:center}
.banner-topline>span:first-child:before{content:"";width:22px;height:2px;background:var(--gold)}
.banner-topline>span:last-child{color:#e1e2d8;font-size:8px}
.banner-caption{position:absolute;inset:auto 30px 29px;display:flex;justify-content:space-between;align-items:end;gap:30px}
.banner-title{font-family:var(--heading);font-weight:700;letter-spacing:0;font-size:clamp(40px,5.5vw,78px);line-height:.94}
.banner-title strong{font-weight:700;color:var(--gold)}
.banner-caption-side{display:block;min-width:240px;font-size:9px;font-weight:600;letter-spacing:.16em;line-height:1.6;border-top:1px solid #d6c08a80;padding-top:12px}
.banner-caption-side>span{display:block;font-family:var(--heading);font-size:17px;letter-spacing:0;margin-top:5px;color:#f4f2eb}
@media(max-width:1000px) and (min-width:761px){.pump-banner{min-height:325px}.banner-caption,.banner-topline{left:24px;right:24px}.banner-caption-side{min-width:200px;font-size:8px}}
@media(max-width:760px){
 .pump-banner{aspect-ratio:auto;height:510px;min-height:0;margin-inline:-5.5556%}
 .banner-shot-row{left:0;top:0;width:62%;height:64%;clip-path:polygon(0 0,100% 0,86% 100%,0 100%)}
 .banner-shot-row img{object-position:54% 31%}
 .banner-shot-leg{left:50%;top:0;width:54%;height:64%;clip-path:polygon(15% 0,100% 0,100% 100%,0 100%);z-index:4}
 .banner-shot-leg img{object-position:48% 25%}
 .banner-shot-hip-one{left:-3%;top:57%;width:43%;height:43%;clip-path:polygon(0 0,100% 0,86% 100%,0 100%);z-index:3}
 .banner-shot-screen{left:31%;top:57%;width:43%;height:43%;z-index:2}
 .banner-shot-screen img{object-position:48% 25%}
 .banner-shot-hip-two{left:65%;top:57%;width:39%;height:43%;z-index:1}
 .pump-banner:before{background:linear-gradient(0deg,#0a0e0cd9,transparent 35%),linear-gradient(180deg,#0b100d99,transparent 20%,transparent 42%,#0a0e0cdd 61%,transparent 80%)}
 .banner-topline{inset:20px 22px auto;font-size:8px}.banner-topline>span:last-child{font-size:6px;letter-spacing:.1em}
 .banner-caption{inset:47% 22px auto;display:block}.banner-title{font-size:52px;line-height:.93}.banner-title br{display:none}.banner-title strong{display:block}
 .banner-caption-side{position:absolute;top:210px;left:0;right:0;min-width:0;font-size:7px;padding-top:9px;display:flex;align-items:center;justify-content:space-between;gap:12px;letter-spacing:.1em}
 .banner-caption-side>span{font-size:11px;margin-top:0;letter-spacing:0}
}
@media(max-width:370px){.pump-banner{height:480px}.banner-title{font-size:48px}.banner-caption-side{top:195px;font-size:6px}.banner-caption-side>span{font-size:10px}.banner-topline>span:last-child{display:none}}
