@media (max-width: 700px) {
  .hero h1 { font-size: 52px; overflow-wrap: anywhere; }
  .section-heading h2 { font-size: 39px; overflow-wrap: anywhere; }
  .hero-actions { width: 100%; flex-wrap: nowrap; }
  .hero-actions .button { flex: 1; min-width: 0; padding-inline: 14px; }
}

.brand-logo {
  display: block;
  width: 154px;
  height: 46px;
  object-fit: contain;
  object-position: left center;
}

footer .brand-logo { width: 138px; height: 42px; }

.payment-total { display: flex; align-items: end; justify-content: space-between; padding: 15px 0 4px; border-top: 1px solid var(--line); }
.payment-total span { color: var(--muted); font-size: 14px; }
.payment-total strong { color: var(--green); font-size: 28px; }
.payment-note { margin: 0 0 4px; color: var(--muted); font-size: 12px; line-height: 1.6; }
.payment-panel { text-align: center; }
.payment-panel h3 { margin: 14px 0 18px; font-size: 23px; }
.qr-box { width: 260px; min-height: 260px; display: grid; place-items: center; margin: 0 auto 16px; padding: 10px; border: 1px solid var(--line); border-radius: 10px; background: #fff; }
.qr-box img { display: block; width: 240px; height: 240px; }
.qr-box a { color: var(--green); font-weight: 700; }
#payment-status { color: var(--muted); }
.payment-cancel { margin-top: 6px; color: var(--ink); border-color: var(--line); }

@media (max-width: 700px) {
  .brand-logo { width: 128px; height: 38px; }
  footer .brand-logo { width: 128px; height: 38px; }
}
