.proof-section {
  padding: 48px 0;
  border-top: 1px solid #315461;
  border-bottom: 1px solid #315461;
  background:
    radial-gradient(ellipse at 85% 15%, rgba(42, 147, 151, .18), transparent 58%),
    linear-gradient(115deg, #0b2535 0%, #103c48 65%, #134b52 100%);
}

.proof-shell {
  grid-template-columns: .72fr 2.28fr;
  overflow: hidden;
  border: 1px solid rgba(146, 202, 207, .48);
  background: linear-gradient(118deg, #eef9f8 0%, #f9fcfc 31%, #edf4f5 100%);
  box-shadow: 0 8px 24px rgba(2, 16, 24, .12);
}

.proof-lead {
  position: relative;
  padding: 37px 30px 34px;
  border-right: 1px solid rgba(101, 194, 192, .42);
  background:
    radial-gradient(circle at 12% 10%, rgba(83, 195, 190, .13), transparent 34%),
    linear-gradient(135deg, #0b3540 0%, #104b54 100%);
}

.proof-lead::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  width: 30px;
  height: 2px;
  background: linear-gradient(90deg, #1aa8a3, #79b8ec);
}

.proof-lead span {
  color: #8de0d8;
}

.proof-lead strong {
  max-width: 210px;
  margin-top: 14px;
  color: #f5fbfb;
  font-size: 18px;
  line-height: 1.12;
}

.proof-points {
  background: linear-gradient(125deg, rgba(255,255,255,.98), rgba(238,246,247,.92));
}

.proof-point {
  position: relative;
  padding: 37px 30px 34px;
  border-color: #d5e2e5;
}

.proof-point::before {
  content: "";
  position: absolute;
  top: 0;
  left: 29px;
  width: 30px;
  height: 2px;
  background: linear-gradient(90deg, #1aa8a3, #79b8ec);
}

.proof-point small {
  color: #377889;
}

.proof-point b {
  margin-top: 14px;
  font-size: 17px;
  line-height: 1.12;
}

.proof-point p {
  margin-top: 10px;
  line-height: 1.55;
}

@media (max-width: 980px) {
  .proof-section {
    padding: 40px 0;
  }

  .proof-shell {
    grid-template-columns: 1fr;
  }

  .proof-lead {
    border-right: 0;
    border-bottom: 1px solid rgba(101, 194, 192, .42);
  }

  .proof-lead strong {
    max-width: none;
  }
}

@media (max-width: 760px) {
  .proof-section {
    padding: 30px 0;
  }

  .proof-lead {
    padding: 28px 24px;
  }

  .proof-points {
    grid-template-columns: 1fr;
  }

  .proof-point {
    padding: 27px 24px 25px;
    border-right: 0;
    border-bottom: 1px solid #d5e2e5;
  }

  .proof-point::before {
    left: 23px;
  }
}

/* Give ecosystem logos more presence while preserving original proportions. */
.logo-proof .logo-cell{padding:16px 20px;min-height:104px}
.logo-proof .logo-cell img{width:100%;height:58px;max-width:180px;max-height:58px;object-fit:contain}
@media(max-width:760px){.logo-proof .logo-cell{padding:14px 16px;min-height:90px}.logo-proof .logo-cell img{height:54px;max-height:54px}}

/* Original artwork uses square canvases: fill the tile width and crop only canvas whitespace. */
.logo-proof .logo-cell{position:relative;overflow:hidden}
.logo-proof .logo-cell img{position:absolute;left:50%;top:50%;width:calc(100% - 40px);max-width:180px;height:auto;max-height:none;transform:translate(-50%,-50%)}
@media(max-width:760px){.logo-proof .logo-cell img{width:calc(100% - 32px);height:auto;max-height:none}}

/* Balance Velocity's taller emblem against the neighboring wordmarks. */
.logo-proof .logo-cell img[alt="Velocity Impact Products"]{width:calc((100% - 40px)*.82);max-width:147.6px}
@media(max-width:760px){.logo-proof .logo-cell img[alt="Velocity Impact Products"]{width:calc((100% - 32px)*.82)}}

/* Tighten the SureFire difference section without changing its internal rhythm. */
#why.promise{padding-top:85px;padding-bottom:85px}
@media(max-width:760px){#why.promise{padding-top:62px;padding-bottom:62px}}

/* Match the more compact vertical rhythm in the solutions introduction. */
#solutions.direction{padding-top:101px;padding-bottom:98px}
@media(max-width:760px){#solutions.direction{padding-top:63px;padding-bottom:63px}}
