#jp-payment-methods {
  --jp-pay-surface: var(--bg-primary);
  --jp-pay-copy: color-mix(in srgb, var(--ink) 25%, var(--muted));
  --jp-pay-radius: 20px;
  --jp-pay-padding: 24px;
  --jp-pay-gap: 16px;
  --jp-pay-inner-gap: 20px;
  --jp-pay-icon: 28px;
  --jp-pay-title-size: 18px;
  --jp-pay-copy-size: 14px;
  scroll-margin-top: 104px;
}
#jp-payment-methods .jp-pay-head {
  display: grid;
  grid-template-columns: minmax(0, 1.7fr) minmax(240px, .9fr);
  align-items: end;
  gap: 48px;
  margin-bottom: 40px;
}
#jp-payment-methods .jp-pay-head > div,
#jp-payment-methods .jp-pay-card > div { min-width: 0; }
#jp-payment-methods .jp-pay-card > div { display: grid; gap: 10px; }
#jp-payment-methods .jp-pay-intro {
  max-width: 340px;
  margin: 0;
  color: var(--ink);
  color: var(--jp-pay-copy);
  font-size: 15px;
  line-height: 1.85;
}
#jp-payment-methods .jp-pay-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--jp-pay-gap);
}
#jp-payment-methods .jp-pay-card {
  display: grid;
  grid-template-columns: var(--jp-pay-icon) minmax(0, 1fr);
  align-items: start;
  gap: var(--jp-pay-inner-gap);
  min-width: 0;
  padding: var(--jp-pay-padding);
  border: 1px solid var(--line);
  border-radius: var(--jp-pay-radius);
  background: var(--jp-pay-surface);
}
#jp-payment-methods .jp-pay-card > .icon {
  width: var(--jp-pay-icon);
  height: var(--jp-pay-icon);
  margin-top: 1px;
  color: var(--blue);
}
#jp-payment-methods .jp-pay-card h3 {
  margin: 0;
  color: var(--ink);
  font-size: var(--jp-pay-title-size);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: -.02em;
  overflow-wrap: break-word;
}
#jp-payment-methods .jp-pay-card p {
  margin: 0;
  color: var(--ink);
  color: var(--jp-pay-copy);
  font-size: var(--jp-pay-copy-size);
  line-height: 1.75;
}
@media (max-width: 980px) {
  #jp-payment-methods .jp-pay-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  #jp-payment-methods .jp-pay-head { grid-template-columns: minmax(0, 1fr); gap: 20px; margin-bottom: 32px; }
  #jp-payment-methods .jp-pay-intro { max-width: 600px; }
}
@media (max-width: 600px) {
  #jp-payment-methods { --jp-pay-padding: 20px; --jp-pay-icon: 24px; --jp-pay-inner-gap: 16px; }
  #jp-payment-methods .jp-pay-grid { grid-template-columns: minmax(0, 1fr); }
}
