.nfc-learn-more { padding-block: 24px; }
.nfc-learn-copy { min-width: 0; }
.nfc-learn-more .nfc-learn-summary { margin: 8px 0 0; color: var(--v2-muted); font-size: 13px; line-height: 1.6; }
.nfc-learn-more .primary-link { flex-shrink: 0; }
.nfc-guide { max-width: 1100px; margin: 0 auto; }
.nfc-guide .page-intro { max-width: 780px; padding-bottom: 30px; }
.nfc-guide-back { display: inline-flex; align-items: center; gap: 9px; margin-bottom: 28px; color: #0f3d2e; font-size: 13px; font-weight: 750; }
.nfc-guide-back svg { width: 16px; height: 16px; transform: rotate(180deg); }
.nfc-guide-back:hover { text-decoration: underline; text-underline-offset: 4px; }
.nfc-guide .eyebrow { margin-bottom: 18px; }
.nfc-flow { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; padding: 0; margin: 0 0 34px; list-style: none; }
.nfc-flow li { position: relative; display: flex; flex-direction: column; align-items: center; gap: 11px; padding: 24px 16px; border: 1px solid #0f3d2e2e; border-radius: 18px; background: #edf1eb; text-align: center; }
.nfc-flow li:not(:last-child)::after { content: "→"; position: absolute; left: calc(100% + 4px); top: calc(50% - 12px); width: 16px; color: #0f3d2e; font-size: 20px; line-height: 24px; }
.nfc-flow svg { width: 30px; height: 30px; color: #0f3d2e; }
.nfc-flow strong { font-size: 16px; color: #0f3d2e; }
.nfc-flow span { color: #5e6962; font-size: 13px; line-height: 1.6; }
.nfc-guide-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
.nfc-guide-grid article { min-width: 0; padding: clamp(22px, 3vw, 32px); border: 1px solid #0f3d2e2e; border-radius: 22px; background: #fffefd; }
.nfc-guide-number { display: block; margin-bottom: 16px; color: #0f3d2e; font-size: 12px; font-weight: 800; letter-spacing: .08em; }
.nfc-guide-grid h2 { margin: 0 0 14px; color: #141815; font-size: clamp(21px, 2.3vw, 27px); line-height: 1.25; letter-spacing: -.035em; }
.nfc-guide-grid p, .nfc-guide-grid li { color: #414d45; font-size: 15px; line-height: 1.8; }
.nfc-guide-grid p { margin: 0; }
.nfc-guide-grid p + p { margin-top: 12px; }
.nfc-guide-grid ul { padding-left: 19px; margin: 0; }
.nfc-guide-grid li + li { margin-top: 8px; }
.nfc-guide-sources { display: flex; flex-wrap: wrap; gap: 8px 18px; margin: 24px 0 38px; color: #5e6962; font-size: 12px; line-height: 1.7; }
.nfc-guide-sources a { color: #0f3d2e; text-decoration: underline; text-underline-offset: 3px; }
.nfc-guide-next { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; padding: 28px 0 54px; border-top: 1px solid #0f3d2e2e; }
.nfc-guide-next > a:not(.primary-link) { color: #0f3d2e; font-size: 14px; font-weight: 750; text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 800px) {
  .nfc-learn-more { gap: 22px; }
}
@media (max-width: 600px) {
  .nfc-guide-grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
  .nfc-flow { gap: 14px; }
  .nfc-flow li { padding: 20px 8px; border-radius: 14px; gap: 9px; }
  .nfc-flow li:not(:last-child)::after { left: 100%; width: 14px; font-size: 17px; }
  .nfc-flow strong { font-size: 13px; }
  .nfc-flow span { font-size: 11px; }
  .nfc-guide-next { justify-content: center; text-align: center; padding-bottom: 36px; }
}

/* A closer, slightly shorter pair of next-step panels on How it works. */
.page-how .detail-next { padding: 22px 30px; margin-bottom: 22px; gap: 24px; }
.page-how .detail-next .section-kicker { margin-bottom: 6px; }
.page-how .detail-next h2 { font-size: clamp(24px, 2.4vw, 32px); }
.page-how .nfc-learn-more .nfc-learn-summary { margin-top: 6px; }
.page-how .nfc-learn-more + .detail-next { margin-bottom: 42px; }
@media (max-width: 520px) {
  .page-how .detail-next { padding: 20px 22px; gap: 16px; }
}
