/* Actual app captures: no fabricated device chrome, UI or receipt artwork. */
.app-capture {
  min-width: 0;
  margin: 0;
  padding: 32px 24px 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 23px;
  border: 1px solid #d8dfdc;
  border-radius: 28px;
  background: #e7ede8;
  text-align: center;
}
.app-screenshot {
  display: block;
  width: min(100%, 268px);
  height: auto;
  border-radius: 8px;
  box-shadow: 0 12px 34px #16283120;
}
.app-capture figcaption { color: #243b37; font-size: .84rem; line-height: 1.55; }
.app-capture figcaption span { display: block; margin-top: 5px; font-size: .72rem; }
.product-feature > .app-capture { border: 0; border-radius: 0; padding-block: 36px; }
.product-feature .app-screenshot { width: min(100%, 238px); }
.capture-gallery .app-capture { border: 0; border-radius: 16px; padding: 20px 14px; }
.capture-gallery .app-screenshot { width: min(100%, 260px); }
.capture-gallery .demo-controls { flex-wrap: wrap; }
.capture-gallery .demo-controls button { min-height: 44px; }
.capture-panel[hidden] { display: none; }
.publisher-info { margin-block: 30px; padding: 24px; border: 1px solid var(--line); border-radius: 16px; background: #fff; }
.publisher-info h2 { margin-top: 0; font-size: 1.3rem; }
.publisher-info address { font-style: normal; line-height: 1.8; }
.publisher-info p { margin-bottom: 0; font-size: .84rem; color: #485b61; }
.value-strip { padding-block: 30px 36px; border-block: 1px solid var(--line); }
.value-strip > .eyebrow { margin: 0 0 24px; }
.value-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px; }
.value-grid article { min-width: 0; }
.value-grid h2 { margin: 0 0 12px; font-size: 1.12rem; line-height: 1.3; letter-spacing: -.02em; }
.value-grid p { margin: 0; font-size: .88rem; line-height: 1.65; color: #485b61; }
@media(max-width:800px) {
  .hero > .app-capture { width: 100%; max-width: 570px; margin-inline: auto; }
  .value-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media(max-width:520px) { .value-grid { grid-template-columns: 1fr; gap: 24px; } }
@media(max-width:420px) {
  .app-capture { padding: 22px 16px; gap: 18px; border-radius: 20px; }
  .app-screenshot { width: min(100%, 252px); }
}
@media print { .app-capture { break-inside: avoid; } }
