.payment-service-button{margin-top:12px}.payment-form{display:grid;gap:14px}.payment-form label{font-size:12px;margin:0}.payment-form input:not([type=checkbox]),.payment-form select{display:block;width:100%;margin-top:6px;background:#091c2b;border:1px solid #748797;border-radius:8px;padding:12px;color:var(--cream);font:14px/1.5 'Manrope',sans-serif}.payment-form input:focus-visible,.payment-form select:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.payment-form .payment-terms{display:flex;align-items:flex-start;gap:10px;color:var(--muted);line-height:1.65}.payment-terms input{flex:none;margin-top:4px;width:18px;height:18px;accent-color:var(--gold)}.payment-total{display:flex;justify-content:space-between;align-items:center;border-block:1px solid var(--line);padding:12px 0;margin:4px 0}.payment-total strong{font-size:25px;color:var(--gold)}#payment-dialog h2{margin:10px 0 16px}#payment-resume{display:block;color:var(--gold);text-decoration:underline;margin:12px 0}#payment-resume[hidden]{display:none}.payment-form button:disabled{opacity:.55;cursor:wait;transform:none}.payment-result-page{min-height:100dvh;display:grid;place-items:center;padding:24px}.payment-result-card{width:min(100%,650px);padding:40px;border:1px solid #d8ba7d50;border-radius:22px;background:#102735}.payment-result-card>.brand{margin-bottom:42px;font-size:13px}.payment-result-card h1{font-size:clamp(28px,5vw,40px);margin:16px 0}.payment-result-card>p{color:var(--muted)}.payment-result-card dl{display:grid;grid-template-columns:140px minmax(0,1fr);gap:12px 24px;padding-block:22px;border-block:1px solid var(--line);font-size:12px}.payment-result-card dl[hidden]{display:none}.payment-result-card dt{color:var(--muted)}.payment-result-card dd{margin:0;overflow-wrap:anywhere}.payment-result-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.payment-result-actions [hidden]{display:none}@media(max-width:480px){.payment-result-card{padding:26px 20px}.payment-result-card dl{grid-template-columns:1fr;gap:3px}.payment-result-card dd{margin-bottom:12px}.payment-result-actions .button{width:100%}}

/* Both actions occupy one card row, with the service note in its own row. */
.price-card { min-width: 0; }
.price-actions { display: grid; gap: 12px; align-content: start; min-width: 0; }
.price-card .price-actions .button { margin: 0; min-height: 50px; height: auto; white-space: normal; }
.price-card small { margin: 18px 0 0; min-height: 0; line-height: 1.7; }
.price-card .price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 12px; line-height: 1.25; }
.price-card .price > span { line-height: 1.6; }
.price-card ul { display: grid; gap: 10px; padding-left: 0; line-height: 1.65; }
.price-card li { position: relative; padding-left: 22px; }
.price-card li::before { position: absolute; left: 0; top: 0; margin: 0; }
.payment-panel > div { min-width: 0; }
.payment-panel .text-link { min-height: 44px; padding: 10px 0; }
#payment-dialog { overscroll-behavior: contain; }
#payment-dialog .close-modal { width: 44px; height: 44px; top: 8px; right: 8px; line-height: 1; }
#payment-dialog .eyebrow { padding-right: 28px; }
#payment-dialog h2 { padding-right: 20px; }
.payment-form label { font-size: 14px; }
.payment-form input:not([type=checkbox]), .payment-form select { min-width: 0; font-size: 16px; min-height: 48px; }
.payment-form .payment-terms { font-size: 13px; }
html[lang=hi] .payment-form input, html[lang=hi] .payment-form select { font-family: 'Noto Sans Devanagari', 'Manrope', sans-serif; }

@media (max-width: 700px) {
  .price-card { gap: 0; }
  .price-actions { margin-top: 4px; }
  .price-card .price-actions .button { font-size: 14px; padding: 14px 18px; }
  .price-card small { font-size: 12px; }
  .price-card ul { font-size: 14px; margin-top: 24px; margin-bottom: 26px; }
  .payment-panel { display: grid; grid-template-columns: 28px minmax(0, 1fr); align-items: start; gap: 8px 14px; }
  .payment-panel .payment-icon { font-size: 26px; line-height: 1.5; }
  .payment-panel h4 { font-size: 15px; line-height: 1.5; }
  .payment-panel p { font-size: 13px; line-height: 1.7; margin-top: 8px; }
  .payment-panel .text-link { grid-column: 2; margin: 0; justify-self: start; font-size: 14px; text-decoration: underline; text-underline-offset: 4px; }
  #payment-dialog { width: calc(100% - 24px); max-height: calc(100dvh - 24px); padding: 28px 22px 24px; }
  #payment-dialog h2 { font-size: 27px; line-height: 1.25; margin-top: 12px; }
  #payment-dialog p { font-size: 14px; line-height: 1.65; }
  .payment-form { gap: 16px; }
  .payment-form .button { width: 100%; min-height: 50px; padding: 14px 18px; }
  .payment-result-page { padding: 16px; }
  .payment-result-card { min-width: 0; }
  .payment-result-card > .brand { font-size: 12px; letter-spacing: 1px; }
}
@media (max-width: 360px) {
  .price-card { padding: 26px 20px; }
  .price-card .price { font-size: 38px; }
  .price-card .price > span { flex-basis: 100%; }
  #payment-dialog { padding-left: 18px; padding-right: 18px; }
  #payment-dialog h2 { font-size: 25px; }
}

.payment-result-card h1 { font-weight: 600; letter-spacing: -.035em; line-height: 1.25; }
html[lang=hi] .payment-result-page,
html[lang=hi] .payment-result-page .button,
html[lang=hi] .payment-result-page h1 { font-family: 'Noto Sans Devanagari', 'Manrope', sans-serif; }
html[lang=hi] .payment-result-page h1 { letter-spacing: 0; line-height: 1.4; }
html[lang=hi] .payment-result-page .brand { font-family: 'Manrope', sans-serif; }
