/* Sniper Shopping - homepage only.
   The video hero, rebuilt from the live store's own block: the same poster frame,
   the same two headlines swapping on a loop, the same supporting line. */

.vhero{position:relative;color:#fff;background:#0b0c0d;overflow:hidden}
.vhero__media{position:absolute;inset:0}
.vhero__media img{width:100%;height:100%;object-fit:cover;object-position:center 38%}
.vhero__scrim{position:absolute;inset:0;background:
  linear-gradient(90deg,rgba(6,6,7,.93) 0%,rgba(6,6,7,.78) 34%,rgba(6,6,7,.22) 70%,rgba(6,6,7,.05) 100%),
  linear-gradient(to top,rgba(6,6,7,.6),transparent 42%)}
[dir="rtl"] .vhero__scrim{transform:scaleX(-1)}
.vhero .wrap{position:relative;padding:96px 24px 104px;min-height:600px;display:flex;
  flex-direction:column;justify-content:center}
.vhero__kicker{font-size:11px;font-weight:700;letter-spacing:.42em;text-transform:uppercase;
  color:var(--brand);margin-bottom:20px}

.vhero__lines{position:relative;display:block;margin:0 0 16px;min-height:1.05em}
.vhero__line{
  display:block;font-family:var(--display);font-weight:600;
  font-size:clamp(40px,7vw,86px);line-height:1.02;letter-spacing:.005em;color:#fff;
  text-transform:uppercase;
}
.vhero__lines .vhero__line + .vhero__line{position:absolute;inset-block-start:0;inset-inline-start:0}
.vhero__line{opacity:0;transform:translateY(14px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out)}
.vhero__line.is-on{opacity:1;transform:none}
.vhero__sub{font-size:16px;color:rgba(255,255,255,.82);margin:0 0 30px;letter-spacing:.01em}
.vhero__cta{display:flex;flex-wrap:wrap;gap:12px}

.vhero__strip{position:relative;background:rgba(0,0,0,.66);backdrop-filter:blur(6px);
  border-top:1px solid rgba(255,255,255,.12)}
.vhero__strip .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;padding:18px 24px;min-height:0}
.vhero__strip div{display:flex;align-items:center;gap:11px;font-size:12.5px;color:rgba(255,255,255,.88)}
.vhero__strip .ic{color:var(--brand)}

/* the category tiles carry the store's own portrait product photography */
.cat-grid .cat{aspect-ratio:3/4;min-height:0;justify-content:flex-end}
.cat-grid .cat__bg{opacity:.92}
.cat:hover .cat__bg{opacity:1}
.cat::before{background:linear-gradient(to top,rgba(0,0,0,.82) 4%,rgba(0,0,0,.32) 46%,rgba(0,0,0,.05) 100%)}
.cat h3{font-size:21px}
.cat p{font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.72)}

@media (max-width:1023px){
  .vhero .wrap{padding:66px 24px 72px;min-height:460px}
  .vhero__strip .wrap{grid-template-columns:repeat(2,1fr);gap:14px}
}
@media (max-width:767px){
  .vhero .wrap{padding:52px 16px 58px;min-height:400px}
  .vhero__line{font-size:34px}
  .vhero__sub{font-size:14px}
  .vhero__cta .btn{flex:1}
}
@media (prefers-reduced-motion:reduce){
  .vhero__line{transition:none}
}
