/* Home · "Delivered" proof wall (23 Sep 2026).
   Dark panel directly under the hero. The photos keep their own shape — a masonry column flow, never a
   cropped tile — because the crews' time stamps and location lines sit at the edges of the frame. */
.sf-pw { margin: 0 0 96px; padding: clamp(24px, 3vw, 46px) clamp(20px, 2.6vw, 40px) clamp(26px, 3vw, 40px); border-radius: 22px; background: #1f2328; color: #fff; }

.sf-pw__head { max-width: 900px; }
.sf-pw__kicker { margin: 0 0 14px; color: #ff8b9c; font-size: 11.5px; font-weight: 800; letter-spacing: .2em; text-transform: uppercase; }
.sf-pw h2 { margin: 0 0 14px; font: 800 clamp(28px, 3.1vw, 44px)/1.1 "Plus Jakarta Sans", sans-serif; letter-spacing: -.03em; color: #fff; text-wrap: balance; }
.sf-pw__lede { margin: 0; max-width: 68ch; color: #b9bec3; font-size: 16px; line-height: 1.65; text-wrap: pretty; }

.sf-pw__stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; margin: 30px 0 28px; padding: 0; list-style: none; border-radius: 14px; overflow: hidden; background: #383d43; }
.sf-pw__stats li { display: grid; gap: 5px; align-content: start; padding: 18px 20px 20px; background: #272b30; }
.sf-pw__stats b { font: 800 clamp(24px, 2.2vw, 32px)/1 "Plus Jakarta Sans", sans-serif; letter-spacing: -.03em; color: #fff; }
.sf-pw__stats span { color: #9aa0a6; font-size: 13px; line-height: 1.45; }

/* One row of three, every frame cut to the same 3:2 so the row reads as one block. */
.sf-pw__wall { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.sf-pw__card { display: flex; }
.sf-pw__card > a { display: flex; flex-direction: column; width: 100%; border: 1px solid #383d43; border-radius: 14px; overflow: hidden; background: #272b30; color: #fff; text-decoration: none; transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.sf-pw__card > a:hover, .sf-pw__card > a:focus-visible { transform: translateY(-3px); border-color: #c8102e; box-shadow: 0 22px 40px -28px rgba(0,0,0,.9); color: #fff; }
.sf-pw__shot { display: block; background: #15181b; }
.sf-pw__shot img { display: block; width: 100%; height: auto; }
.sf-pw__meta { display: grid; gap: 7px; align-content: start; padding: 16px 18px 18px; }
.sf-pw__where { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; }
.sf-pw__where b { font: 800 16px/1.25 "Plus Jakarta Sans", sans-serif; letter-spacing: -.02em; color: #fff; }
.sf-pw__where i { color: #9aa0a6; font: 700 11px/1.3 "Plus Jakarta Sans", sans-serif; font-style: normal; letter-spacing: .12em; text-transform: uppercase; }
.sf-pw__card time { color: #ff8b9c; font-size: 12.5px; font-weight: 700; }
.sf-pw__line { color: #cfd3d7; font-size: 14px; line-height: 1.55; }
.sf-pw__more { margin-top: 2px; color: #fff; font-size: 13px; font-weight: 700; }
.sf-pw__card > a:hover .sf-pw__more { color: #ff8b9c; }

.sf-pw__foot { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 16px 30px; align-items: center; margin-top: 10px; padding-top: 24px; border-top: 1px solid #383d43; }
.sf-pw__btn { display: inline-flex; align-items: center; gap: 8px; padding: 14px 24px; border-radius: 8px; background: #c8102e; color: #fff; font-size: 15px; font-weight: 700; text-decoration: none; transition: background-color .18s ease, transform .18s ease; }
.sf-pw__btn:hover { background: #a90d26; color: #fff; transform: translateY(-2px); }
.sf-pw__foot p { margin: 0; color: #9aa0a6; font-size: 13.5px; line-height: 1.6; }

@media (max-width: 900px) {
  .sf-pw { margin-bottom: 64px; border-radius: 16px; }
  .sf-pw__stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sf-pw__wall { grid-template-columns: 1fr; }
}
@media (max-width: 720px) {
  .sf-pw__stats { grid-template-columns: 1fr; }
  .sf-pw__lede { font-size: 15.5px; }
  .sf-pw__foot { grid-template-columns: 1fr; }
  .sf-pw__btn { justify-content: center; }
}
