/* ═══ PHOTO · SECTION 4 — WHAT WE SHOOT ═══ */
.shoot{position:relative;padding:clamp(74px,12vh,150px) var(--gut);
  background:#080808;border-top:1px solid var(--border)}
.shoot h2{margin-top:20px;font-size:clamp(1.6rem,4.2vw,3.3rem);line-height:1;max-width:16ch}
.sh-grid{margin-top:clamp(32px,5.5vh,60px);display:grid;grid-template-columns:repeat(3,1fr);
  border-top:1px solid var(--border);border-left:1px solid var(--border)}
@media(max-width:900px){.sh-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.sh-grid{grid-template-columns:1fr}}
.sh{position:relative;overflow:hidden;padding:clamp(24px,3.2vw,40px);
  border-right:1px solid var(--border);border-bottom:1px solid var(--border);
  opacity:0;transform:translateY(20px);
  transition:opacity .7s ease,transform .75s cubic-bezier(.16,1,.3,1)}
.sh.is-in{opacity:1;transform:none}
.sh::before{content:"";position:absolute;inset:0;background:var(--surface);
  transform:translateX(-101%) skewX(-10deg);
  transition:transform .55s cubic-bezier(.2,.7,.2,1);z-index:0}
.sh:hover::before{transform:translateX(0) skewX(-10deg)}
.sh > *{position:relative;z-index:1}
.sh .n{font-size:10.5px;letter-spacing:.16em;font-weight:700;color:var(--cut);
  margin-bottom:clamp(26px,4.5vh,50px);display:block}
.sh h3{font-family:'Archivo Expanded',Archivo,sans-serif;font-weight:800;
  font-size:clamp(1.02rem,1.8vw,1.4rem);line-height:1.08;letter-spacing:-.026em}
.sh p{margin-top:12px;font-size:.93rem;line-height:1.6;color:var(--muted)}
.sh .bar{display:block;margin-top:20px;height:2px;width:0;background:var(--cut);
  transition:width .8s cubic-bezier(.16,1,.3,1) .25s}
.sh.is-in .bar{width:36px}
.sh:hover .bar{width:58px;transition-delay:0s}

@media(prefers-reduced-motion:reduce){
  .sh{opacity:1;transform:none}
  .sh .bar{width:36px}
}
