/* Sovado Pay — solid surfaces, precise type and motion that explains a payment. */
/* Native anchor scrolling respects reduced-motion preferences. */
@media (prefers-reduced-motion:no-preference) {
  html { scroll-behavior:smooth; }
}
body[data-page="pay"] {
  --pay-bg:#09090b; --pay-surface:#111113; --pay-raised:#17171b;
  --pay-ink:#f5f5f7; --pay-muted:#a2a2ac; --pay-dim:#787882;
  --pay-accent:#5147e5; --pay-accent-text:#a6a1ff; --pay-line:#29292f;
  --pay-ease:cubic-bezier(.22,1,.36,1);
  --sv-ink:var(--pay-ink); --sv-muted:var(--pay-muted); --site-focus-color:#a6a1ff;
  background:var(--pay-bg); color:var(--pay-ink); color-scheme:dark;
}
body[data-page="pay"] #main { padding:0; background:var(--pay-bg); }
body[data-page="pay"] [data-site-navigation],body[data-page="pay"] [data-site-navigation].scrolled { --nav-ink:#eeeef2; background:#09090b; border-bottom:1px solid #1b1b20; box-shadow:none; backdrop-filter:none; }
body[data-page="pay"] [data-site-navigation] .brand-mark { filter:none; }
body[data-page="pay"] [data-site-navigation] :is(.nav-language,.login-link) { color:#b5b5bf; }
body[data-page="pay"] [data-site-navigation] :is(.nav-megamenu,.nav-audience-menu,.nav-language-menu,.menu-toggle) { background:#141417; border-color:#303036; box-shadow:none; }
body[data-page="pay"] [data-site-navigation] :is(.nav-disclosure>summary:hover,.nav-disclosure[open]>summary,.nav-disclosure.is-current>summary,.site-nav>a:hover,.site-nav>a[aria-current],.nav-audience-list a:hover,.nav-audience-list a[aria-current],.nav-language-menu>a:hover,.nav-language-active) { background:#201e38; color:#c2bfff; }
body[data-page="pay"] [data-site-navigation] .nav-feature-group { --feature-ink:#bab6ff; --feature-tint:#242137; }
body[data-page="pay"] [data-site-navigation] :is(.nav-feature-footer,.nav-audience-footer,.mobile-actions) { border-color:var(--pay-line); }
body[data-page="pay"] [data-site-navigation] .nav-feature-footer a { color:#bcb8ff; }
body[data-page="pay"] [data-site-navigation] .button { background:var(--pay-accent); border-color:var(--pay-accent); color:#fff; }
body[data-page="pay"] [data-site-navigation] .button:hover { transform:none; background:#443bcc; }
body[data-page="pay"] .sv-footer { background:#0e0e10; border-top:1px solid var(--pay-line); }
.pay-page { overflow:clip; background:var(--pay-bg); }
.pay-page :is(h1,h2,h3,p,figure,ul,ol) { margin:0; }
.pay-page :is(h1,h2,h3) { font-weight:550; letter-spacing:-.055em; color:var(--pay-ink); text-wrap:balance; }
.pay-page h1 { font-size:clamp(58px,6.35vw,92px); line-height:1.02; letter-spacing:-.067em; }
.pay-page h2 { font-size:clamp(38px,4.35vw,64px); line-height:1.08; }
.pay-page h3 { font-size:25px; line-height:1.2; letter-spacing:-.035em; }
.pay-page :is(h1,h2)>span { color:#5147e4; }
.pay-page p { font-size:16px; line-height:1.75; color:var(--pay-muted); }
.pay-page .pay-container { width:min(1160px,calc(100% - 96px)); margin-inline:auto; }
.pay-page [id] { scroll-margin-top:115px; }
.pay-page .sv-icon { width:20px; height:20px; flex-shrink:0; }
.pay-page button { font:inherit; }
.pay-page :is(.pay-moments,.pay-remote-section,.pay-tap-section,.pay-refund-section,.pay-security,.pay-faq,.pay-pricing,.pay-followup)>* { min-width:0; }
.pay-section { padding-block:124px; }
.pay-eyebrow { display:flex; align-items:center; flex-wrap:wrap; gap:12px; margin-bottom:26px!important; color:#b3b3bd!important; font-size:10px!important; line-height:1.5!important; font-weight:650; letter-spacing:.15em; }
.pay-heading { max-width:650px; }
.pay-heading>p:last-child:not(.pay-eyebrow) { margin-top:24px; max-width:520px; }
.pay-heading--center { max-width:820px; margin-inline:auto; text-align:center; }
.pay-heading--center .pay-eyebrow { justify-content:center; }
.pay-heading--center>p:last-child:not(.pay-eyebrow) { max-width:580px; margin-inline:auto; }
.pay-heading--split { display:flex; align-items:flex-end; justify-content:space-between; gap:80px; max-width:none; }
.pay-heading--split>p:last-child { max-width:390px; }
.pay-actions { display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:30px; }
.pay-page .pay-button { min-height:50px; padding:14px 20px; font-size:13px; font-weight:600; letter-spacing:0; border-radius:7px; gap:23px; background:var(--pay-accent); border-color:var(--pay-accent); }
.pay-page .pay-button:hover { background:#443bcc; transform:none; }
.pay-textlink { display:inline-flex; align-items:center; gap:15px; min-height:44px; font-size:13px; font-weight:500; color:#e0dfff!important; }
.pay-textlink:hover { color:#fff!important; }
.pay-textlink .sv-icon { width:17px; transition:transform .25s; }
.pay-textlink:hover .sv-icon { transform:translateX(3px); }
.pay-ui-label { display:block; color:#91919c; font-size:9px!important; font-weight:550; letter-spacing:.08em; line-height:1.5; }
.pay-badge { display:inline-flex; align-items:center; gap:6px; color:var(--pay-accent-text); font-size:11px; line-height:1.5; }
.pay-badge .sv-icon { width:14px; height:14px; }
.pay-wordmark { display:inline-flex; align-items:center; gap:6px; font-size:16px; font-weight:650; line-height:1; letter-spacing:-.04em; color:#f5f5f7; }
.pay-wordmark img { width:18px; height:21px; margin-right:3px; }
.pay-wordmark b { color:#9e9ea9; font-weight:450; }
.pay-ui-row { display:flex; justify-content:space-between; align-items:center; gap:14px; font-size:12px; color:var(--pay-muted); }
.pay-ui-row b { color:#dfdfe5; font-weight:450; }
.pay-ui-total { display:flex; align-items:center; justify-content:space-between; border-top:1px solid var(--pay-line); padding-top:16px; font-size:11px; }
.pay-ui-total strong { font-size:27px; font-weight:500; letter-spacing:-.05em; }
.pay-ui-action { display:flex; justify-content:space-between; align-items:center; padding:11px 14px; border-radius:5px; background:var(--pay-accent); color:#fff; font-size:10px; }
.pay-small-label,.pay-outline-tag { display:inline-flex; width:max-content; color:#aaa6ea; font-size:9px; line-height:1.4; letter-spacing:.07em; }
.pay-outline-tag { padding:5px 8px; border:1px solid #37315c; border-radius:4px; text-transform:none; letter-spacing:0; }
.pay-page .pay-fine-print { color:#95959f; font-size:12px; line-height:1.7; }
.pay-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
/* Centred copy appears after the optional opening gesture has landed. */
.pay-hero { padding-top:clamp(128px,13vh,163px); }
.pay-hero-stage { position:relative; isolation:isolate; padding-top:24px; }
.pay-hero-copy { position:relative; z-index:2; width:calc(100% - 340px); max-width:670px; margin-inline:auto; text-align:center; }
.pay-hero-copy .pay-actions { display:none; }
.pay-hero-copy h1 { font-size:clamp(52px,5.6vw,80px); }
.pay-hero-payments { position:absolute; inset:0; pointer-events:none; }
.pay-hero-copy .pay-eyebrow { justify-content:center; margin-bottom:24px!important; }
.pay-mark { width:26px; height:26px; display:grid; place-items:center; color:#fff; background:var(--pay-accent); border-radius:6px; }
.pay-mark .sv-icon { width:16px; height:16px; }
.pay-hero-copy .pay-lead { max-width:585px; margin:26px auto 27px; font-size:16px; line-height:1.75; text-wrap:pretty; }
.pay-hero-rate { margin-top:19px!important; font-size:12px!important; color:#c2c2cb!important; }
.pay-hero-rate a { text-underline-offset:4px; }
.pay-hero-rate a:hover { text-decoration:underline; }
.pay-hero-rate>span { display:block; color:#92929d; font-size:10px; margin-top:2px; }
.pay-hero-visual { position:relative; z-index:2; max-width:740px; margin:30px auto 0!important; }
.pay-hero-visual>figcaption { display:flex; align-items:center; justify-content:center; gap:9px; color:#a1a1ab; font-size:11px; margin-top:4px; }
.pay-tiny-dot { width:5px; height:5px; background:#8d86f9; border-radius:50%; }
.pay-example { font-size:9px; color:#81818b; margin-left:8px; }
.pay-trust-strip { border-top:1px solid var(--pay-line); border-bottom:1px solid var(--pay-line); display:flex; align-items:center; justify-content:center; gap:50px; padding:32px 0; margin-top:65px; }
.pay-trust-strip p { flex-shrink:0; font-size:12px; color:#d8d8df; line-height:1.6; }
.pay-trust-strip p span { color:#94949e; }
.pay-trust-strip ul { flex:1; min-width:0; max-width:530px; list-style:none; display:flex; flex-wrap:wrap; justify-content:center; gap:9px; padding:0; }
.pay-trust-strip li { display:flex; justify-content:center; align-items:center; min-width:82px; height:43px; background:#f7f7f7; padding:7px 16px; border-radius:4px; }
.pay-trust-strip li:first-child { min-width:112px; }
.pay-trust-strip li img { max-height:29px; max-width:100%; width:auto; }
.pay-trust-strip>.pay-stripe-word { flex-shrink:0; }
.pay-trust-strip .pay-wallet-method { padding:5px 10px; }
.pay-trust-strip .pay-wallet-method img { height:33px; max-height:none; width:auto; }
.pay-stripe-word { font-size:31px; line-height:1.1; font-weight:750; letter-spacing:-.07em; color:#eeeef3; }
/* Payment marks gather into the phone; the card tap confirms the payment. */
.pay-arrival-visual { max-width:740px; }
.pay-arrival-orbit { height:428px; position:relative; isolation:isolate; }
.pay-arrival-device { position:absolute; width:232px; height:392px; top:18px; left:calc(50% - 116px); z-index:2; }
.pay-arrival-shell { position:absolute; inset:0; border:2px solid #53535c; border-radius:38px; background:#111114; box-shadow:inset 0 0 0 5px #232328,0 24px 60px #0005; }
.pay-arrival-camera { position:absolute; top:16px; left:calc(50% - 30px); width:60px; height:17px; border:1px solid #29292f; background:#050506; border-radius:15px; }
.pay-arrival-phone-brand { position:absolute; top:58px; width:100%; text-align:center; }
.pay-arrival-phone-brand .pay-wordmark { font-size:17px; }
.pay-arrival-amount { position:absolute; top:108px; width:100%; display:grid; justify-items:center; gap:10px; }
.pay-arrival-amount>span { color:#95959f; font-size:8px; letter-spacing:.13em; }
.pay-arrival-amount>strong { color:#f5f5f7; font-size:38px; font-weight:500; letter-spacing:-.06em; line-height:1; }
.pay-arrival-receipt { position:absolute; top:289px; width:100%; display:grid; justify-items:center; gap:10px; }
.pay-arrival-receipt>div { grid-area:1/1; display:grid; justify-items:center; gap:10px; }
.pay-arrival-receipt strong { color:#f5f5f7; font-size:18px; font-weight:500; }
.pay-arrival-receipt span { color:#92929f; font-size:8px; }
.pay-arrival-receipt>.pay-arrival-receipt-pending { display:none; }
.pay-arrival-running:not(.pay-arrival-confirmed) .pay-arrival-receipt-pending { display:grid; }
.pay-arrival-running:not(.pay-arrival-confirmed) .pay-arrival-receipt-paid { display:none; }
.pay-arrival-home { position:absolute; bottom:13px; left:calc(50% - 34px); width:68px; height:3px; background:#7f7f89; border-radius:4px; }
.pay-arrival-device .pay-arrival-token { position:absolute; width:96px; height:96px; top:184px; left:calc(50% - 48px); z-index:2; }
.pay-arrival-bank-card { position:absolute; z-index:3; top:32px; right:-76px; width:145px; height:92px; padding:14px; color:#fff; background:#5147b8; border:1px solid #8a80d2; border-radius:9px; box-shadow:0 14px 25px #0006,inset 0 0 0 1px #ffffff0d; transform:rotate(-14deg); }
.pay-card-label { display:block; font-size:11px; font-weight:650; letter-spacing:-.04em; }
.pay-card-label b { font-weight:400; opacity:.7; }
.pay-card-chip { position:absolute; top:36px; left:15px; width:22px; height:17px; border:1px solid #c6bda5; border-radius:4px; background:#d7cfb8; }
.pay-card-chip::before,.pay-card-chip::after { content:""; position:absolute; inset:5px 0; border-block:1px solid #a49a83; }
.pay-card-chip::after { inset:0 7px; border:0; border-inline:1px solid #a49a83; }
.pay-card-contactless { position:absolute; top:33px; left:44px; width:23px; height:23px; color:#d7d2f7; }
.pay-card-contactless svg { width:100%; height:100%; }
.pay-card-digits { position:absolute; bottom:13px; left:15px; font-size:8px; letter-spacing:.12em; color:#d6d1f5; }
.pay-arrival-bank-card>img { position:absolute; bottom:10px; right:12px; width:32px; height:auto; }

.pay-arrival-token { position:relative; width:128px; height:128px; display:grid; place-items:center; border:1px solid #696375; border-radius:50%; background:#121215; color:#eeeaf9; }
.pay-token-nfc,.pay-token-check { position:absolute; inset:0; display:grid; place-items:center; }
.pay-token-nfc>svg { display:block; width:68%; height:68%; }
.pay-token-check>.sv-icon { display:block; width:54%; height:54%; stroke-width:1.8; }
.pay-token-check { opacity:0; transform:scale(.78); }
.pay-token-check path { stroke-dasharray:28; stroke-dashoffset:28; }
.pay-arrival-token.is-confirmed { color:#63d99f; border-color:#367f59; background:#0f1b16; }
.pay-arrival-token.is-confirmed .pay-token-nfc { opacity:0; transform:scale(.8); }
.pay-arrival-token.is-confirmed .pay-token-check { opacity:1; transform:scale(1); }
.pay-arrival-token.is-confirmed .pay-token-check path { stroke-dashoffset:0; }
.pay-token-pulse { position:absolute; inset:-1px; border:1px solid #9d96bd; border-radius:50%; opacity:0; pointer-events:none; }
.pay-orbit-item { position:absolute; z-index:1; }
.pay-orbit-card { transform:translate3d(calc(var(--orbit-x,0px) * var(--orbit-depth,1)),calc(var(--orbit-y,0px) * var(--orbit-depth,1)),0) rotate(var(--orbit-tilt,0deg)); transition:transform .7s var(--pay-ease); border-radius:9px; }
.pay-orbit-brand { display:flex; align-items:center; justify-content:center; background:#f5f5f7; padding:16px 20px; }
.pay-orbit-brand img { display:block; height:auto; }
.pay-orbit-ideal { left:5%; top:24px; --orbit-tilt:-8deg; }
.pay-orbit-ideal img { width:112px; }
.pay-orbit-visa { right:5%; top:15px; --orbit-tilt:8deg; }
.pay-orbit-visa img { width:71px; }
.pay-orbit-mastercard { right:0; top:170px; --orbit-tilt:-8deg; }
.pay-orbit-mastercard img { width:55px; }
.pay-orbit-bancontact { left:0; top:177px; --orbit-tilt:6deg; }
.pay-orbit-bancontact img { width:64px; }
.pay-orbit-amex { left:5%; top:337px; --orbit-tilt:-9deg; }
.pay-orbit-amex img { width:44px; }
.pay-orbit-maestro { left:16%; top:490px; --orbit-tilt:7deg; }
.pay-orbit-maestro img { width:52px; }
.pay-orbit-discover { right:1%; top:320px; --orbit-tilt:6deg; }
.pay-orbit-discover img { width:90px; }
.pay-orbit-qr { right:13%; top:470px; --orbit-tilt:7deg; }
.pay-orbit-qr>.pay-orbit-card { padding:9px 9px 12px; border:1px solid #3a3944; background:#151518; text-align:center; }
.pay-orbit-qr-code { width:76px; padding:7px; border-radius:4px; background:#f5f5f7; color:#161619; }
.pay-orbit-qr-code>svg { display:block; width:100%; height:auto; }
.pay-orbit-qr .pay-orbit-card>span { display:block; margin-top:9px; font-size:9px; color:#bfbfca; }
.pay-orbit-wallet .pay-orbit-brand { padding:9px 13px; }
.pay-orbit-wallet img { width:72px; }
.pay-orbit-apple { left:1%; top:570px; --orbit-tilt:-5deg; }
.pay-orbit-google { right:0; top:605px; --orbit-tilt:-6deg; }
.pay-arrival-visual>figcaption { flex-wrap:wrap; gap:8px 22px; margin-top:25px; }
.pay-arrival-visual>figcaption>span { max-width:660px; font-size:10px; line-height:1.6; text-align:center; }
/* The full-screen intro shares the exact device markup with its final destination. */
html:has(body[data-page="pay"]) { scrollbar-gutter:stable; }
.pay-arrival-pending::after { content:""; position:fixed; inset:0; z-index:10000; background:#09090b; pointer-events:none; }
:is(.pay-arrival-pending,.pay-arrival-running) [data-site-navigation] { z-index:10002; }
:is(.pay-arrival-pending,.pay-arrival-running:not(.pay-arrival-revealed)) :is(.sv-footer,.pay-hero-copy>*,.pay-trust-strip,.pay-page>section:not(.pay-hero),.pay-arrival-visual>figcaption) { opacity:0; }
:is(.pay-arrival-pending,.pay-arrival-running) .pay-hero-payments .pay-orbit-item { opacity:0; }
:is(.pay-arrival-pending,.pay-arrival-running:not(.pay-arrival-landed)) [data-pay-arrival-device] { visibility:hidden; }
.pay-arrival-running .pay-hero-copy>* { transition:opacity .55s ease,transform .7s var(--pay-ease); }
.pay-arrival-running:not(.pay-arrival-revealed) .pay-hero-copy>* { transform:translateY(10px); }
.pay-arrival-running .pay-hero-copy>h1 { transition-delay:65ms; }
.pay-arrival-running .pay-hero-copy>.pay-lead { transition-delay:130ms; }
.pay-arrival-running .pay-hero-copy>.pay-actions { transition-delay:190ms; }
.pay-arrival-running .pay-hero-copy>.pay-hero-rate { transition-delay:240ms; }
.pay-arrival-running :is([data-site-navigation],.sv-footer,.pay-trust-strip,.pay-page>section:not(.pay-hero),.pay-arrival-visual>figcaption) { transition:opacity .6s ease; }
.pay-arrival-running .pay-arrival-bank-card { transition:transform var(--pay-card-duration,850ms) var(--pay-ease),opacity .4s ease; }
.pay-arrival-running:not(.pay-arrival-card-tapped) .pay-arrival-bank-card { transform:translate(110px,-70px) rotate(7deg); opacity:0; }
.pay-arrival-overlay { position:fixed; inset:0; z-index:10001; overflow:hidden; pointer-events:none; }
.pay-arrival-curtain { position:absolute; inset:0; background:#09090b; }
.pay-arrival-overlay .pay-arrival-flyer { position:absolute; top:0; left:0; margin:0; transform-origin:0 0; will-change:transform; }
.pay-arrival-flyer .pay-arrival-shell { opacity:var(--phone-build,0); clip-path:inset(calc((1 - var(--phone-build,0)) * 46%) calc((1 - var(--phone-build,0)) * 30%) round 38px); }
.pay-arrival-flyer .pay-arrival-token { transition:background .4s ease,border-color .4s ease,color .4s ease; }
.pay-arrival-flyer .pay-token-nfc { transition:opacity .25s ease,transform .45s var(--pay-ease); }
.pay-arrival-flyer .pay-token-check { transition:opacity .25s ease,transform .5s var(--pay-ease); }
.pay-arrival-flyer .pay-token-check path { transition:stroke-dashoffset .46s ease .08s; }
.pay-arrival-flyer .pay-token-pulse { animation:pay-arrival-pulse 1.3s ease-out infinite; }
.pay-arrival-flyer .pay-token-pulse:nth-child(2) { animation-delay:.45s; }
.pay-arrival-flyer .is-confirmed .pay-token-pulse { animation:none; opacity:0; }
.pay-arrival-overlay .pay-intro-mark { position:absolute; top:0; left:0; right:auto; bottom:auto; margin:0; opacity:1; transform-origin:50% 50%; will-change:transform,opacity; }
.pay-intro-mark .pay-orbit-card { transition:none; }
@keyframes pay-arrival-pulse { 0% { transform:scale(1); opacity:0; } 18% { opacity:.65; } 100% { transform:scale(1.52); opacity:0; } }
/* Responsive line diagram; each line and status is updated by the same timeline. */
.pay-network { position:relative; height:400px; max-width:1000px; margin-inline:auto; }
.pay-network-lines { position:absolute; inset:0; width:100%; height:100%; overflow:visible; }
.pay-network-lines path { stroke-width:1; vector-effect:non-scaling-stroke; }
.pay-wire { stroke:#2b2b33; }
.pay-wire-active { stroke:var(--pay-accent); stroke-dasharray:1; stroke-dashoffset:0; }
.pay-network-core { position:absolute; width:24%; height:218px; top:50%; left:50%; transform:translate(-50%,-50%); border:1px solid #45434f; border-radius:10px; background:#151518; z-index:2; }
.pay-core-content { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; padding:22px 12px 14px; }
.pay-core-label { color:#96969f; font-size:10px; margin-top:18px; }
.pay-core-amount { font-size:39px; line-height:1.35; letter-spacing:-.065em; font-weight:550; }
.pay-core-status { position:relative; margin-top:9px; display:grid; justify-items:center; align-items:center; height:25px; min-width:150px; color:var(--pay-accent-text); font-size:11px; }
.pay-core-status .pay-after { background:#27223c; padding:4px 10px; border-radius:4px; }
.pay-core-status .sv-icon { width:13px; height:13px; }
.pay-core-id { color:#74747f; margin-top:auto; font-size:8px; letter-spacing:.09em; }
.pay-network-seed { position:absolute; top:50%; left:50%; display:grid; place-items:center; width:42px; height:42px; margin:-21px 0 0 -21px; background:var(--pay-accent); border-radius:9px; opacity:0; }
.pay-network-node { position:absolute; width:24%; display:flex; align-items:flex-start; gap:13px; padding:15px 17px; background:var(--pay-surface); border:1px solid var(--pay-line); border-radius:7px; }
.pay-network-node>div { min-width:0; }
.pay-network-node strong { display:block; font-size:12px; font-weight:500; line-height:1.5; margin-top:5px; }
.pay-network-node .pay-ui-label { font-size:8px!important; text-transform:uppercase; }
.pay-node-icon { margin-top:3px; color:#9b9ba7; }
.pay-node-icon .sv-icon { width:16px; height:16px; }
.pay-node-0 { left:2%; top:calc(24.5% - 49px); }
.pay-node-1 { left:2%; top:calc(75.5% - 49px); }
.pay-node-2 { right:2%; top:calc(24.5% - 40px); }
.pay-node-3 { right:2%; top:calc(50% - 40px); }
.pay-node-4 { right:2%; top:calc(75.5% - 40px); }
.pay-node-status { display:grid; align-items:center; margin-top:7px; font-size:9px; color:#85858f; min-height:15px; }
.pay-node-status .pay-after { color:var(--pay-accent-text); }
.pay-node-status .sv-icon { width:11px; height:11px; }
.pay-before,.pay-after { grid-area:1/1; transition:opacity .4s ease,transform .5s var(--pay-ease); }
.pay-before { opacity:0; transform:translateY(-4px); }
.pay-after { display:flex; align-items:center; justify-content:inherit; gap:5px; opacity:1; }
/* Static markup shows completed examples. JS only animates observed scenes. */
[data-pay-sequence].is-running:not(.is-paid) .pay-core-status .pay-before,
[data-pay-sequence].is-running [data-pay-node]:not(.is-done) .pay-before,
[data-pay-sequence="tap"].is-running:not(.is-paid) .pay-before,
[data-pay-sequence="refund"].is-running:not(.is-paid) .pay-before { opacity:1; transform:none; }
[data-pay-sequence].is-running:not(.is-paid) .pay-core-status .pay-after,
[data-pay-sequence].is-running [data-pay-node]:not(.is-done) .pay-after,
[data-pay-sequence="tap"].is-running:not(.is-paid) .pay-after,
[data-pay-sequence="refund"].is-running:not(.is-paid) .pay-after { opacity:0; transform:translateY(5px); }
.pay-network.is-running:not(.is-assembled) .pay-core-content { opacity:0; transform:scale(.92); }
.pay-network.is-running:not(.is-assembled) .pay-network-core { border-color:transparent; background:transparent; }
.pay-network.is-running:not(.is-assembled) .pay-network-seed { opacity:1; }
.pay-network.is-running .pay-wire-active:not(.is-done) { stroke-dashoffset:1; }
.pay-network.is-running:not(.is-assembled) .pay-network-node { opacity:0; transform:translateY(8px); }
.pay-network.is-running .pay-network-node { transition:opacity .65s ease,transform .8s var(--pay-ease),border-color .4s; }
.pay-network.is-running .pay-core-content,.pay-network.is-running .pay-network-core { transition:opacity .6s ease,transform .8s var(--pay-ease),background .6s,border-color .6s; }
.pay-network.is-running .pay-network-seed { transition:opacity .3s ease; }
.pay-network.is-running .pay-wire-active { transition:stroke-dashoffset .7s var(--pay-ease); }
.pay-network-node.is-done { border-color:#3a354f; }
.pay-demo-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px 20px; color:#90909b; font-size:10px; }
.pay-replay { display:inline-flex; gap:7px; justify-content:center; align-items:center; min-height:44px; background:none; border:0; color:#c7c5ec; font-size:11px!important; padding:4px 0; }
.pay-replay .sv-icon { width:14px; height:14px; }
.pay-replay:hover { color:#fff; }
/* Four different payment moments, drawn as an open editorial composition. */
.pay-moments { display:grid; grid-template-columns:1.1fr 1fr; gap:100px 105px; margin-top:56px; }
.pay-moment--mobile,.pay-moment--remote { padding-top:72px; }
.pay-moment-art { height:235px; position:relative; display:flex; align-items:center; justify-content:center; }
.pay-moment-copy { border-top:1px solid var(--pay-line); padding-top:26px; }
.pay-moment h3 { font-size:25px; }
.pay-moment p { max-width:390px; font-size:14px; margin-top:13px; }
.pay-moment .pay-textlink { margin-top:9px; font-size:11px; }
.pay-counter-art { justify-content:flex-start; padding-left:42px; }
.pay-counter-slip { width:290px; border:1px solid #313139; background:var(--pay-surface); padding:20px; border-radius:7px; }
.pay-counter-slip .pay-ui-row { margin-top:20px; margin-bottom:15px; }
.pay-counter-slip .pay-ui-action { margin-top:16px; }
.pay-mini-confirm { position:absolute; display:flex; align-items:center; gap:8px; bottom:40px; right:0; border:1px solid #3b355b; border-radius:5px; background:#1c192b; padding:11px 14px; font-size:10px; color:#d5d2ff; }
.pay-mini-confirm .sv-icon { width:14px; height:14px; }
.pay-mobile-art { gap:30px; }
.pay-phone-outline { display:flex; align-items:center; flex-direction:column; position:relative; width:133px; height:205px; padding-top:37px; border:1px solid #62626e; border-bottom:0; border-radius:22px 22px 0 0; align-self:flex-end; background:#121215; }
.pay-phone-camera { width:32px; height:4px; position:absolute; top:12px; background:#38383e; border-radius:4px; }
.pay-phone-outline>svg { width:37px; height:37px; color:var(--pay-accent-text); }
.pay-phone-outline strong { margin-top:15px; font-size:26px; font-weight:500; letter-spacing:-.05em; }
.pay-phone-outline>span:last-child { margin-top:9px; font-size:9px; color:#9b9ba7; }
.pay-mobile-caption { display:flex; flex-direction:column; gap:14px; }
.pay-mobile-caption>span:last-child { color:#d6d6dd; font-size:22px; line-height:1.25; letter-spacing:-.04em; }
.pay-advance-art { gap:23px; }
.pay-date-block { align-self:center; display:flex; align-items:center; flex-direction:column; justify-content:center; width:65px; height:93px; border:1px solid #34343d; border-radius:5px; }
.pay-date-block span { font-size:9px; color:#9c9ca7; }
.pay-date-block b { font-size:27px; font-weight:500; line-height:1.5; }
.pay-appointment-mini { width:280px; }
.pay-appointment-mini>strong { display:block; font-size:14px; margin:6px 0 18px; font-weight:500; }
.pay-appointment-mini .pay-ui-row { margin-top:9px; font-size:11px; }
.pay-appointment-mini .pay-badge { margin-top:17px; }
.pay-remote-art { gap:20px; }
.pay-link-symbol { display:grid; place-items:center; width:45px; height:45px; background:#22202e; color:#a8a1ff; border:1px solid #3b3550; border-radius:10px; }
.pay-request-mini { display:flex; flex-direction:column; width:220px; padding:18px 22px; background:#151518; border:1px solid #34343b; border-radius:7px; }
.pay-request-mini>strong { font-size:31px; font-weight:500; letter-spacing:-.05em; margin:6px 0 15px; }
.pay-link-address { color:#85858f; font-size:10px; padding-top:12px; border-top:1px solid var(--pay-line); }
.pay-remote-check { display:grid; place-items:center; width:26px; height:26px; background:var(--pay-accent); border-radius:50%; position:absolute; right:calc(50% - 153px); top:54px; }
.pay-remote-check .sv-icon { width:14px; height:14px; }
/* Spacious photo breaks alternate with the product illustrations. */
.pay-photo-break { position:relative; isolation:isolate; overflow:hidden; display:grid; align-items:center; min-height:clamp(510px,43vw,680px); background:#191719; }
.pay-photo-break>.pay-photo-break-image { position:absolute; inset:0; z-index:-1; width:100%; height:100%; object-fit:cover; object-position:center; }
.pay-photo-break-copy { max-width:370px; padding-block:72px; }
.pay-photo-break-copy h2 { font-size:clamp(40px,4.2vw,62px); }
.pay-photo-break-copy h2>span { color:#d0c9cc; }
.pay-photo-break-copy>p:not(.pay-eyebrow) { max-width:325px; color:#d7d1d4; margin-top:24px; font-size:15px; }
.pay-photo-break-copy .pay-textlink,.pay-story-copy .pay-textlink { margin-top:23px; }
.pay-story-section { background:#141416; border-block:1px solid var(--pay-line); }
.pay-story-layout { display:grid; grid-template-columns:.85fr 1.15fr; align-items:center; gap:80px; }
.pay-story-layout>* { min-width:0; }
.pay-story-copy h2 { font-size:clamp(38px,3.7vw,54px); }
.pay-story-copy>p:not(.pay-eyebrow) { max-width:400px; margin-top:25px; font-size:15px; }
.pay-story-photo { overflow:hidden; border-radius:8px; background:#1c1b1b; }
.pay-story-photo>img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; }
/* The larger, replayable explanation anchors the product story. */
.pay-connected { background:#101012; border-block:1px solid #1d1d22; }
.pay-connected-visual { margin-top:55px!important; border:1px solid #29292f; background:#0c0c0e; border-radius:10px; padding:30px 35px 10px; }
.pay-connected-visual .pay-network { height:425px; }
.pay-connected-visual .pay-demo-footer { padding:6px 0 0; border-top:1px solid #222229; }
.pay-connected-note { max-width:680px; text-align:center; margin:22px auto 0!important; color:#90909b!important; font-size:11px!important; }
/* A deliberately flat phone; the contact point explains the action. */
.pay-tap-section { display:grid; grid-template-columns:1.1fr 1fr; align-items:center; column-gap:110px; row-gap:56px; }
.pay-tap-section .pay-trust-strip { grid-column:1 / -1; margin-top:0; }
.pay-tap-copy>p:not(.pay-eyebrow) { margin-top:25px; max-width:455px; }
.pay-tap-copy h2 { font-size:clamp(36px,3.9vw,56px); }
.pay-tap-points { display:flex; flex-direction:column; gap:13px; margin-top:30px; font-size:12px; color:#d3d3dd; }
.pay-tap-points>span { display:flex; align-items:center; gap:13px; }
.pay-tap-points svg { width:20px; height:20px; color:#aaa5ff; }
.pay-tap-visual { min-width:0; }
.pay-tap-demo { display:flex; align-items:center; justify-content:center; gap:25px; padding:20px 0 34px; }
.pay-flat-phone { width:250px; height:488px; border:1px solid #62626d; border-radius:34px; position:relative; background:#111114; display:flex; flex-direction:column; align-items:center; padding:18px 23px 26px; outline:5px solid #17171c; outline-offset:3px; }
.pay-device-top { display:flex; align-items:center; justify-content:space-between; width:100%; font-size:9px; margin-bottom:38px; }
.pay-device-top i { display:block; width:61px; height:15px; background:#08080a; border:1px solid #25252d; border-radius:10px; }
.pay-flat-phone>.pay-ui-label { margin-top:27px; font-size:8px!important; }
.pay-tap-amount { font-size:42px; font-weight:500; letter-spacing:-.055em; line-height:1.5; margin-top:8px; }
.pay-tap-treatment { font-size:10px; color:#90909e; }
.pay-contact-point { width:77px; height:77px; display:grid; place-items:center; border:1px solid #4b436a; border-radius:50%; margin-top:27px; color:#b4acff; position:relative; }
.pay-contact-point>span { display:grid; place-items:center; }
.pay-contact-point svg { width:33px; height:33px; }
.pay-contact-point>.pay-after svg { width:29px; height:29px; }
.pay-contact-point i { position:absolute; inset:0; border:1px solid #6f63b3; border-radius:50%; opacity:0; }
.pay-tap-demo.is-running:not(.is-paid) .pay-contact-point i { animation:pay-contact 1.6s ease-out 1; }
@keyframes pay-contact { 0% { transform:scale(.92); opacity:0; } 25% { opacity:.7; } 100% { transform:scale(1.55); opacity:0; } }
.pay-tap-message { display:grid; text-align:center; width:100%; margin-top:21px; }
.pay-tap-message>span { flex-direction:column; }
.pay-tap-message strong { display:block; font-size:14px; font-weight:500; }
.pay-tap-message>span>span { display:block; margin:8px auto 0; max-width:170px; color:#9595a3; font-size:10px; line-height:1.6; }
.pay-phone-provider { margin-top:auto; font-size:8px; color:#80808f; }
.pay-home-line { position:absolute; bottom:9px; width:70px; height:3px; border-radius:3px; background:#656571; }
.pay-tap-side-label { writing-mode:vertical-rl; font-size:8px; letter-spacing:.22em; color:#777783; }
.pay-tap-visual figcaption { justify-content:center; }
.pay-store-preview { margin-top:35px; border-top:1px solid var(--pay-line); padding-top:20px; }
.pay-store-preview>p { font-size:11px; }
.pay-store-preview>div { display:flex; gap:11px; align-items:center; margin-top:13px; }
.pay-store-preview img { width:auto; height:32px; }
.pay-store-preview>span { display:block; margin-top:8px; color:#92929d; font-size:10px; }
/* Payment requests, transactions and refunds use the same UI vocabulary. */
.pay-remote-section { display:grid; grid-template-columns:1fr 1fr; gap:90px; }
.pay-tap-section + .pay-remote-section { padding-top:0; }
.pay-feature h2 { font-size:clamp(32px,3.45vw,47px); }
.pay-feature>p:not(.pay-eyebrow) { margin-top:24px; font-size:14px; min-height:100px; }
.pay-feature--link { padding-top:88px; }
.pay-booking-visual { margin-top:36px!important; padding:25px 26px 15px; border:1px solid #2c2c34; border-radius:9px; background:#111113; }
.pay-booking-top { display:flex; align-items:center; gap:12px; padding-bottom:22px; border-bottom:1px solid #292931; }
.pay-booking-top>.sv-icon { color:#ada6ff; width:21px; }
.pay-booking-top>div { flex:1; }
.pay-booking-top strong { display:block; font-size:12px; font-weight:500; }
.pay-booking-top span { display:block; color:#92929c; font-size:9px; margin-top:3px; }
.pay-booking-top>b { font-size:21px; font-weight:500; letter-spacing:-.05em; }
.pay-booking-steps { list-style:none; padding:25px 0 10px; }
.pay-booking-steps li { position:relative; display:flex; align-items:flex-start; gap:14px; padding-bottom:26px; }
.pay-booking-steps li:not(:last-child)::after { content:""; position:absolute; width:1px; top:29px; left:12px; height:26px; background:#38343f; }
.pay-booking-steps li>span { display:grid; place-items:center; width:25px; height:25px; border:1px solid #393940; border-radius:50%; color:#a7a7b1; font-size:9px; }
.pay-booking-steps li:last-child>span { background:var(--pay-accent); border-color:var(--pay-accent); color:#fff; }
.pay-booking-steps .sv-icon { width:13px; height:13px; }
.pay-booking-steps strong { display:block; font-size:12px; font-weight:500; }
.pay-booking-steps small { color:#90909e; font-size:10px; }
.pay-booking-visual figcaption,.pay-link-visual figcaption { font-size:9px; color:#90909d; padding-top:13px; border-top:1px solid var(--pay-line); }
.pay-link-visual { margin-top:36px!important; border:1px solid #363340; border-radius:9px; background:#121215; overflow:hidden; }
.pay-link-top { display:flex; justify-content:space-between; align-items:center; padding:19px 23px; border-bottom:1px solid var(--pay-line); }
.pay-link-top>span:last-child { font-size:10px; color:#93939e; }
.pay-link-body { padding:28px 30px 24px; display:flex; flex-direction:column; }
.pay-link-body>strong { font-weight:500; font-size:47px; line-height:1.4; letter-spacing:-.06em; margin-top:5px; }
.pay-link-body>span:not(.pay-ui-label) { font-size:11px; color:#9797a3; }
.pay-link-preview { display:flex; align-items:center; gap:10px; font-size:11px; background:#1b1b21; border:1px solid #30303a; border-radius:5px; margin-top:25px; padding:13px 15px; }
.pay-link-preview>.sv-icon { width:15px; color:#a9a3ff; }
.pay-link-preview>.sv-icon:last-child { margin-left:auto; }
.pay-link-track { display:flex; align-items:center; gap:15px; padding:7px 30px 25px; }
.pay-link-track>span { display:inline-flex; align-items:center; gap:6px; font-size:10px; color:#b9b4fc; }
.pay-link-track .sv-icon { width:12px; }
.pay-link-track>i { height:1px; background:#3f375e; flex:1; }
.pay-link-visual figcaption { padding:14px 23px; }
.pay-delivery-tabs { display:flex; gap:6px; padding:15px 22px 0; }
.pay-delivery-tabs button { display:flex; align-items:center; gap:7px; min-height:40px; padding:8px 13px; border:1px solid transparent; border-radius:5px; background:none; color:#a0a0ac; font-size:11px; }
.pay-delivery-tabs button[aria-selected="true"] { background:#232033; border-color:#3b3556; color:#d8d3ff; }
.pay-delivery-tabs .sv-icon { width:14px; height:14px; }
.pay-link-visual [role="tabpanel"] { min-height:267px; }
.pay-qr-body { display:flex; align-items:center; gap:26px; min-height:215px; padding:25px 30px; }
.pay-qr-illustration { width:135px; flex-shrink:0; padding:8px; background:#f5f5f5; color:#17171d; border-radius:5px; }
.pay-qr-illustration svg { display:block; width:100%; height:auto; }
.pay-qr-body>div:last-child>strong { display:block; font-size:34px; font-weight:500; letter-spacing:-.05em; margin:6px 0 10px; }
.pay-qr-body>div:last-child>span:last-child { font-size:11px; line-height:1.7; color:#a8a8b4; }
.pay-followup { grid-column:1/-1; display:grid; grid-template-columns:1.15fr 1fr; align-items:center; gap:90px; border-top:1px solid var(--pay-line); padding-top:50px; }
.pay-followup h3 { font-size:31px; line-height:1.15; }
.pay-followup h3>span { color:#9898a5; }
.pay-followup>div>p:last-child { font-size:13px; margin-top:18px; max-width:460px; }
.pay-followup-timeline { padding:7px 0; }
.pay-followup-timeline>div { display:flex; align-items:flex-start; gap:16px; position:relative; padding-bottom:25px; }
.pay-followup-timeline>div:last-child { padding-bottom:0; }
.pay-followup-timeline>div:not(:last-child)::after { content:""; width:1px; top:26px; bottom:3px; left:12px; background:#393642; position:absolute; }
.pay-followup-dot { display:grid; place-items:center; width:25px; height:25px; border:1px solid #4a4557; border-radius:50%; flex-shrink:0; }
.pay-followup-timeline>div:not(:last-child) .pay-followup-dot::before { content:""; width:5px; height:5px; border-radius:50%; background:#9b95c3; }
.pay-followup-timeline>div:last-child .pay-followup-dot { background:#5147e5; border-color:#5147e5; }
.pay-followup-dot .sv-icon { width:13px; height:13px; }
.pay-followup-timeline p { line-height:1.5; }
.pay-followup-timeline strong { display:block; color:#dddde6; font-weight:500; font-size:12px; }
.pay-followup-timeline p>span { display:block; font-size:10px; color:#9797a4; margin-top:4px; }
.pay-overview-section { background:#101012; border-block:1px solid #202026; }
.pay-ledger { margin-top:56px!important; background:#0c0c0e; border:1px solid #2d2d34; border-radius:10px; padding:25px 32px 16px; }
.pay-ledger-top { display:flex; align-items:center; justify-content:space-between; gap:20px; }
.pay-ledger-top>span:last-child { color:#868692; font-size:9px; letter-spacing:.07em; }
.pay-ledger-stats { display:grid; grid-template-columns:repeat(3,1fr); padding-block:36px; border-bottom:1px solid var(--pay-line); }
.pay-ledger-stats>div { padding-left:35px; border-left:1px solid var(--pay-line); }
.pay-ledger-stats>div:first-child { padding:0; border:0; }
.pay-ledger-stats span { display:block; color:#9393a0; font-size:11px; }
.pay-ledger-stats strong { display:block; font-size:35px; line-height:1.3; font-weight:500; letter-spacing:-.05em; margin-top:8px; font-variant-numeric:tabular-nums; }
.pay-ledger-toolbar { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:15px; padding:25px 0 14px; }
.pay-ledger-toolbar h3 { font-size:14px; letter-spacing:-.02em; }
.pay-filters { display:flex; gap:5px; }
.pay-filters button { background:transparent; border:1px solid transparent; border-radius:5px; min-height:36px; padding:6px 10px; color:#9d9daa; font-size:10px; }
.pay-filters button[aria-pressed="true"] { color:#e1defd; background:#211e32; border-color:#39324f; }
.pay-filters button:hover { color:white; }
.pay-transaction { display:grid; grid-template-columns:34px 1fr 140px 110px 105px; align-items:center; gap:15px; border-bottom:1px solid #232329; padding:20px 0; }
.pay-avatar { display:grid; place-items:center; width:31px; height:31px; border:1px solid #35353d; background:#18181c; color:#a7a5b6; font-size:9px; border-radius:50%; }
.pay-transaction>div>strong { font-size:12px; display:block; font-weight:500; }
.pay-transaction>div>span { font-size:10px; display:block; color:#8f8f9b; margin-top:3px; }
.pay-transaction-method { color:#a4a4b0; font-size:10px; }
.pay-transaction-amount { font-size:13px; font-weight:500; font-variant-numeric:tabular-nums; }
.pay-transaction-status { display:inline-flex; align-items:center; gap:4px; font-size:9px; }
.pay-transaction-status .sv-icon { width:12px; height:12px; }
.pay-transaction-status--paid { color:#b7b0ff; }
.pay-transaction-status--refunded { color:#aeabbf; }
.pay-transaction-status--open { color:#c9b99b; }
.pay-ledger figcaption { color:#92929e; font-size:9px; margin-top:16px; }
.pay-overview-note { display:flex; align-items:center; gap:12px; margin-top:19px; }
.pay-overview-note>.sv-icon { color:#85828e; width:16px; }
.pay-overview-note>p { font-size:11px; color:#9595a1; }
.pay-refund-section { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:120px; }
.pay-refund-section>div>p:last-child { max-width:420px; margin-top:25px; font-size:15px; }
.pay-refund-visual { border:1px solid #303038; border-radius:9px; background:#111114; padding:26px 27px 10px; }
.pay-refund-header { display:flex; align-items:center; gap:13px; }
.pay-refund-header strong { display:block; font-size:13px; font-weight:500; }
.pay-refund-header>div>span { color:#9898a4; font-size:10px; }
.pay-refund-amount { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:28px 0 25px; }
.pay-refund-amount>strong { font-size:39px; font-weight:500; letter-spacing:-.06em; }
.pay-refund-status { display:grid; color:#b8b1fa; font-size:10px; }
.pay-refund-action { display:grid; justify-items:center; align-items:center; background:#202025; border:1px solid #393740; min-height:43px; border-radius:5px; font-size:11px; margin-bottom:18px; }
.pay-refund-action>span { display:flex; align-items:center; gap:8px; }
.pay-refund-action .sv-icon { width:14px; height:14px; color:#b6afff; }
/* Pricing separates card and fixed iDEAL transaction fees. */
.pay-pricing-section { background:#111114; border-block:1px solid #24242b; }
.pay-pricing-section .pay-heading { max-width:1000px; }
.pay-pricing { display:grid; grid-template-columns:1fr 1fr; gap:130px; margin:70px auto 0; max-width:970px; }
.pay-price-main { border-right:1px solid #35353f; }
.pay-price-number { color:#f5f5f8; font-size:clamp(90px,10vw,145px); font-weight:500; letter-spacing:-.085em; line-height:1.1; margin:15px 0 6px; }
.pay-price-number>span { font-size:.5em; margin-left:7px; color:#9993fb; letter-spacing:-.06em; }
.pay-price-number>small { font-size:.28em; margin-left:16px; letter-spacing:-.04em; white-space:nowrap; }
.pay-price-main>p:not(.pay-ui-label) { font-size:14px; }
.pay-price-ideal { margin:30px 30px 0 0; padding-top:25px; border-top:1px solid #35353f; }
.pay-price-ideal>strong { display:block; margin-top:8px; color:#f5f5f8; font-size:54px; font-weight:500; line-height:1.2; letter-spacing:-.055em; }
.pay-price-ideal>p { margin-top:7px; font-size:12px; }
.pay-price-month { display:block; font-size:29px; letter-spacing:-.04em; margin-top:27px; }
.pay-price-month>span { font-size:13px; letter-spacing:0; color:#a3a3af; margin-left:7px; }
.pay-price-main ul { list-style:none; padding:0; margin-top:30px; }
.pay-price-main li { display:flex; align-items:center; gap:10px; font-size:12px; color:#b6b6c1; margin-top:11px; }
.pay-price-main li .sv-icon { width:14px; height:14px; color:#a29af7; }
.pay-price-examples { padding-top:15px; }
.pay-price-examples h3 { font-size:24px; }
.pay-price-examples>p { font-size:12px; margin-top:10px; }
.pay-price-table { width:100%; margin-top:26px; border-collapse:collapse; text-align:right; }
.pay-price-table :is(th,td) { padding:17px 0 17px 12px; border-bottom:1px solid #31313a; white-space:nowrap; font-size:22px; letter-spacing:-.04em; font-weight:500; }
.pay-price-table th:first-child { padding-left:0; text-align:left; }
.pay-price-table td { color:#5147e4; }
.pay-price-table thead th { padding-block:7px; border:0; color:#92929e; font-size:10px; letter-spacing:0; font-weight:450; }
.pay-fee-note { margin-top:23px; }
.pay-fee-note strong { font-size:12px; font-weight:550; color:#e3e1ef; }
.pay-fee-note p { font-size:11px; margin-top:7px; }
.pay-price-examples .pay-textlink { margin-top:10px; font-size:11px; }
.pay-security { display:grid; grid-template-columns:1fr 1fr; align-items:start; gap:120px; }
.pay-security-copy>p { margin-top:24px; font-size:15px; }
.pay-security-copy ul { list-style:none; padding:0; margin-top:24px; }
.pay-security-copy li { display:flex; align-items:flex-start; gap:10px; font-size:11px; color:#aaaab6; margin-top:12px; }
.pay-security-copy li .sv-icon { width:15px; height:17px; color:#b4aff4; }
.pay-faq { border-top:1px solid var(--pay-line); display:grid; grid-template-columns:.8fr 1.2fr; gap:100px; }
.pay-faq .pay-textlink { margin-top:26px; }
.pay-faq details { border-bottom:1px solid #2a2a32; }
.pay-faq details:first-child { border-top:1px solid #2a2a32; }
.pay-faq summary { display:flex; align-items:center; justify-content:space-between; gap:20px; font-size:14px; font-weight:450; line-height:1.6; padding:23px 0; list-style:none; cursor:pointer; color:#dcdce6; }
.pay-faq summary>span { font-size:23px; font-weight:300; color:#9b95ec; transition:transform .2s; }
.pay-faq details[open] summary>span { transform:rotate(45deg); }
.pay-faq details p { margin:0 30px 23px 0; font-size:13px; }
.pay-final { padding:115px 0 120px; border-top:1px solid var(--pay-line); text-align:center; }
.pay-final-mark { display:grid; place-items:center; width:48px; height:48px; border:1px solid #5147e5; border-radius:10px; background:#19162e; margin:0 auto 26px; color:#b8b1ff; }
.pay-final-mark .sv-icon { width:24px; height:24px; }
.pay-final .pay-eyebrow { justify-content:center; }
.pay-final h2 { font-size:clamp(40px,4.5vw,67px); }
.pay-final h2>span { color:#b0b0ba; }
.pay-final h2+p { margin:25px auto 30px; max-width:530px; font-size:15px; }
.pay-final-rate { font-size:12px!important; color:#b6b6c1!important; margin-top:21px!important; }
.pay-final-rate>span { display:block; margin-top:7px; font-size:10px; color:#93939e; }
/* Single reveal, no scroll interception or looping decoration. */
.pay-motion [data-pay-reveal] { opacity:0; transform:translateY(16px); transition:opacity .7s ease,transform .85s var(--pay-ease); }
.pay-motion [data-pay-reveal].is-visible { opacity:1; transform:none; }
@media (max-width:1100px) {
  .pay-story-layout { gap:50px; }
  .pay-page .pay-container { width:calc(100% - 64px); }
  .pay-moments { gap:70px 55px; }
  .pay-tap-section { gap:60px; }
  .pay-remote-section,.pay-refund-section,.pay-security { gap:65px; }
  .pay-pricing { gap:70px; }
  .pay-network-node { padding:13px 11px; gap:9px; }
  .pay-network-node strong { font-size:11px; }
  .pay-core-amount { font-size:35px; }
  .pay-transaction { grid-template-columns:32px 1fr 120px 85px 98px; gap:10px; }
}
@media (max-width:800px) {
  .pay-photo-break { display:flex; flex-direction:column; align-items:stretch; min-height:0; }
  .pay-photo-break>.pay-container { order:-1; }
  .pay-photo-break-copy { max-width:570px; padding-block:55px; }
  .pay-photo-break-copy>p:not(.pay-eyebrow) { max-width:440px; }
  .pay-photo-break>.pay-photo-break-image { position:static; z-index:auto; height:auto; aspect-ratio:16/9; }
  .pay-story-layout { grid-template-columns:minmax(0,1fr); gap:38px; }
  .pay-story-copy { max-width:570px; }
  .pay-story-photo { max-width:640px; width:100%; }
  .pay-counter-art { padding-left:0; }
  .pay-counter-slip { width:250px; }
  .pay-mini-confirm { right:-5px; bottom:30px; }
  .pay-advance-art { gap:14px; }
  .pay-date-block { width:49px; flex-shrink:0; }
  .pay-appointment-mini>strong { font-size:12px; }
  .pay-mobile-art { gap:16px; }
  .pay-mobile-caption>span:last-child { font-size:19px; }
  .pay-request-mini { width:190px; padding:16px; }
  .pay-link-symbol { width:34px; height:34px; }
  .pay-remote-check { right:0; }
  .pay-section { padding-block:88px; }
  .pay-hero { padding-top:143px; }
  .pay-page h1 { font-size:66px; }
  .pay-page h2 { font-size:46px; }
  .pay-moments { gap:55px 35px; }
  .pay-moment h3 { font-size:22px; }
  .pay-moment p { font-size:13px; }
  .pay-network-node { gap:7px; padding:11px 9px; }
  .pay-node-icon .sv-icon { width:13px; height:13px; }
  .pay-network-node strong { font-size:10px; }
  .pay-node-status { font-size:8px; }
  .pay-network-core { width:25%; }
  .pay-core-content { padding-inline:5px; }
  .pay-core-amount { font-size:31px; }
  .pay-core-label { font-size:9px; }
  .pay-core-status { min-width:120px; font-size:10px; }
  .pay-connected-visual { padding:20px 10px 8px; }
  .pay-connected-visual .pay-demo-footer { padding-inline:10px; }
  .pay-tap-section { grid-template-columns:1fr; gap:50px; }
  .pay-tap-copy { max-width:570px; }
  .pay-tap-visual { max-width:470px; width:100%; margin:auto!important; }
  .pay-tap-demo { padding-bottom:30px; }
  .pay-remote-section { gap:35px; }
  .pay-feature h2 { font-size:35px; }
  .pay-feature>p:not(.pay-eyebrow) { min-height:147px; }
  .pay-booking-visual { padding:20px 17px 14px; }
  .pay-booking-top { gap:9px; }
  .pay-booking-top>strong { font-size:11px; }
  .pay-booking-top>.sv-icon { display:none; }
  .pay-link-top { padding:19px 17px; }
  .pay-link-body { padding:26px 20px; }
  .pay-link-top>span:last-child { font-size:9px; }
  .pay-qr-body { padding-inline:20px; gap:16px; }
  .pay-qr-illustration { width:105px; }
  .pay-qr-body>div:last-child>strong { font-size:28px; }
  .pay-followup { gap:45px; }
  .pay-heading--split { gap:35px; }
  .pay-heading--split>p:last-child { max-width:280px; font-size:14px; }
  .pay-ledger { padding:25px 23px 16px; }
  .pay-ledger-stats strong { font-size:28px; }
  .pay-ledger-stats span { font-size:10px; }
  .pay-ledger-stats>div { padding-left:22px; }
  .pay-transaction { grid-template-columns:30px 1fr 82px 97px; }
  .pay-transaction-method { display:none; }
  .pay-refund-section { gap:45px; }
  .pay-refund-section h2 { font-size:41px; }
  .pay-refund-visual { padding:23px 18px 9px; }
  .pay-pricing { gap:45px; }
  .pay-price-main li { font-size:10px; }
  .pay-security { gap:60px; }
  .pay-security-copy p { font-size:14px; }
  .pay-faq { grid-template-columns:.7fr 1.3fr; gap:55px; }
}
@media (max-width:600px) {
  .pay-moment-art { height:227px; width:100%; max-width:400px; margin:auto; }
  .pay-counter-art { padding-left:15px; }
  .pay-counter-slip { width:275px; }
  .pay-mini-confirm { right:0; bottom:33px; }
  .pay-mobile-art { gap:35px; }
  .pay-mobile-caption>span:last-child { font-size:23px; }
  .pay-advance-art { gap:20px; }
  .pay-date-block { width:60px; }
  .pay-appointment-mini { width:240px; }
  .pay-appointment-mini>strong { font-size:13px; }
  .pay-remote-art { gap:23px; }
  .pay-request-mini { width:224px; padding:18px 22px; }
  .pay-link-symbol { width:43px; height:43px; }
  .pay-remote-check { right:calc(50% - 145px); top:53px; }
  .pay-page .pay-container { width:calc(100% - 40px); }
  .pay-section { padding-block:75px; }
  .pay-page h1 { font-size:clamp(42px,10.7vw,63px); letter-spacing:-.061em; }
  .pay-page h2 { font-size:clamp(34px,8.7vw,48px); letter-spacing:-.05em; }
  .pay-page p { font-size:14px; }
  .pay-eyebrow { font-size:9px!important; margin-bottom:21px!important; gap:10px; }
  .pay-hero { padding-top:127px; }
  .pay-hero-copy .pay-lead { max-width:400px; margin:24px auto; font-size:14px; line-height:1.7; }
  .pay-actions { flex-direction:column; gap:5px; }
  .pay-actions .pay-button { font-size:12px; }
  .pay-actions .pay-textlink { font-size:12px; }
  .pay-hero-rate { margin-top:10px!important; font-size:11px!important; }
  .pay-hero-rate>span { font-size:9px; }
  .pay-hero-visual>figcaption { flex-wrap:wrap; font-size:9px; gap:6px; margin-top:20px; }
  .pay-arrival-token { width:96px; height:96px; }
  .pay-arrival-visual>figcaption { margin-top:9px; gap:4px; flex-direction:column; }
  .pay-arrival-visual>figcaption>span { max-width:270px; font-size:9px; text-align:center; }
  /* A vertical connection spine replaces the wide desktop diagram. */
  .pay-network { display:grid; grid-template-columns:1fr 1fr; gap:10px; height:auto!important; padding:0; }
  .pay-network::before { content:""; width:1px; position:absolute; top:170px; bottom:35px; left:50%; background:#393341; }
  .pay-network-lines { display:none; }
  .pay-network-core { position:relative; top:auto; left:auto; transform:none; grid-column:1/-1; width:206px; height:196px; margin:0 auto 17px; }
  .pay-core-content { padding:18px 12px 12px; }
  .pay-core-label { margin-top:14px; font-size:9px; }
  .pay-core-amount { font-size:36px; }
  .pay-core-status { margin-top:7px; font-size:10px; }
  .pay-network-node { position:relative; inset:auto; width:100%; padding:12px 10px; gap:8px; min-height:81px; border-color:#303037; }
  .pay-network-node strong { font-size:10px; }
  .pay-network-node .pay-ui-label { font-size:7px!important; }
  .pay-node-status { font-size:8px; margin-top:5px; }
  .pay-node-icon .sv-icon { width:13px; height:13px; }
  .pay-node-4 { grid-column:1/-1; justify-self:center; width:calc(50% - 5px); }
  .pay-trust-strip { gap:23px 25px; flex-wrap:wrap; margin-top:37px; padding-block:26px; }
  .pay-trust-strip p { font-size:10px; }
  .pay-trust-strip ul { flex:1 0 100%; order:3; width:100%; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
  .pay-trust-strip li { height:40px; min-width:0; padding-inline:8px; }
  .pay-trust-strip li:first-child { min-width:0; }
  .pay-trust-strip li img { max-height:23px; }
  .pay-stripe-word { font-size:29px; }
  .pay-heading>p:last-child:not(.pay-eyebrow) { margin-top:21px; }
  .pay-moments { grid-template-columns:minmax(0,1fr); gap:38px; margin-top:23px; }
  .pay-moment--mobile,.pay-moment--remote { padding-top:0; }
  .pay-moment-copy { padding-top:24px; }
  .pay-moment h3 { font-size:25px; }
  .pay-moment p { font-size:13px; max-width:400px; }
  .pay-connected-visual { padding:25px 13px 10px; margin-top:36px!important; }
  .pay-connected-visual .pay-demo-footer { margin-top:23px; padding:13px 0 0; justify-content:center; text-align:center; font-size:9px; }
  .pay-connected-note { font-size:10px!important; text-align:left; margin-top:17px!important; }
  .pay-tap-section { gap:40px; }
  .pay-tap-copy h2 { font-size:40px; }
  .pay-tap-copy .pay-eyebrow { letter-spacing:.1em; }
  .pay-tap-copy>p:not(.pay-eyebrow) { margin-top:22px; }
  .pay-flat-phone { width:241px; height:474px; }
  .pay-tap-demo { gap:20px; }
  .pay-tap-points { margin-top:24px; }
  .pay-store-preview { margin-top:28px; }
  .pay-store-preview>p { font-size:11px; }
  .pay-remote-section { grid-template-columns:minmax(0,1fr); gap:65px; }
  .pay-feature--link { padding-top:0; }
  .pay-feature h2 { font-size:38px; }
  .pay-feature>p:not(.pay-eyebrow) { min-height:0; font-size:14px; }
  .pay-booking-visual,.pay-link-visual { margin-top:29px!important; }
  .pay-booking-top>.sv-icon { display:block; }
  .pay-booking-visual { padding:23px 21px 16px; }
  .pay-booking-steps { padding-top:26px; }
  .pay-link-top { padding:20px 22px; }
  .pay-link-body { padding:28px; }
  .pay-qr-body { padding:24px; min-height:227px; }
  .pay-qr-illustration { width:clamp(92px,30vw,120px); }
  .pay-followup { grid-template-columns:1fr; gap:30px; padding-top:38px; }
  .pay-followup-timeline { padding-left:3px; }
  .pay-followup h3 { font-size:30px; }
  .pay-heading--split { display:block; }
  .pay-heading--split>p:last-child { max-width:400px; margin-top:22px; }
  .pay-ledger { margin-top:33px!important; padding:20px 15px 15px; }
  .pay-ledger-top>span:last-child { font-size:7px; max-width:100px; text-align:right; }
  .pay-ledger-top .pay-wordmark { font-size:14px; }
  .pay-ledger-stats { gap:12px; padding-block:25px; }
  .pay-ledger-stats>div { padding:0; border:0; }
  .pay-ledger-stats span { font-size:8px; line-height:1.5; max-width:75px; }
  .pay-ledger-stats strong { font-size:clamp(18px,4.6vw,27px); margin-top:9px; }
  .pay-ledger-toolbar { padding:22px 0 6px; gap:10px; }
  .pay-ledger-toolbar h3 { font-size:13px; }
  .pay-filters { width:100%; justify-content:space-between; gap:1px; }
  .pay-filters button { min-height:38px; font-size:10px; padding-inline:8px; }
  .pay-transaction { grid-template-columns:27px minmax(0,1fr) 72px; gap:2px 10px; padding:17px 0; }
  .pay-avatar { width:27px; height:27px; font-size:8px; }
  .pay-transaction>.pay-avatar { grid-row:1/3; }
  .pay-transaction>div { grid-row:1/3; }
  .pay-transaction>div>strong { font-size:11px; }
  .pay-transaction>div>span { font-size:9px; }
  .pay-transaction-amount { font-size:12px; text-align:right; }
  .pay-transaction-status { grid-column:3; justify-content:flex-end; font-size:8px; }
  .pay-ledger figcaption { font-size:8px; }
  .pay-overview-note { align-items:flex-start; }
  .pay-overview-note p { font-size:10px; }
  .pay-refund-section { grid-template-columns:1fr; gap:35px; }
  .pay-refund-section>div>p:last-child { font-size:14px; }
  .pay-refund-visual { padding:23px 22px 9px; }
  .pay-refund-visual .pay-demo-footer { font-size:9px; }
  .pay-pricing { grid-template-columns:1fr; gap:40px; margin-top:40px; }
  .pay-price-main { padding-bottom:35px; border-right:0; border-bottom:1px solid #35353f; text-align:center; }
  .pay-price-number { font-size:121px; }
  .pay-price-ideal { margin-right:0; }
  .pay-price-main>p:not(.pay-ui-label) { font-size:13px; }
  .pay-price-main ul { width:max-content; margin:27px auto 0; text-align:left; }
  .pay-price-main li { font-size:12px; }
  .pay-price-examples { padding-top:0; }
  .pay-price-examples>p { font-size:12px; }
  .pay-fee-note p { font-size:12px; }
  .pay-security { grid-template-columns:1fr; gap:35px; }
  .pay-security-copy p { margin-top:20px; }
  .pay-faq { grid-template-columns:1fr; gap:28px; }
  .pay-faq h2 br { display:none; }
  .pay-faq .pay-textlink { margin-top:17px; }
  .pay-faq summary { padding-block:21px; font-size:13px; }
  .pay-faq details p { font-size:12px; }
  .pay-final { padding:75px 0 83px; }
  .pay-final h2 { font-size:clamp(35px,8.8vw,48px); }
  .pay-final h2+p { font-size:14px; max-width:390px; }
  .pay-final-rate { font-size:11px!important; }
  .pay-final-rate>span { font-size:9px; max-width:280px; margin:9px auto 0; }
}
@media (max-width:360px) {
  .pay-mobile-art { gap:20px; }
  .pay-phone-outline { width:117px; flex-shrink:0; }
  .pay-mobile-caption>span:last-child { font-size:20px; }
  .pay-counter-art { padding-left:0; }
  .pay-counter-slip { width:100%; }
  .pay-advance-art { gap:13px; }
  .pay-date-block { width:48px; }
  .pay-appointment-mini { min-width:0; }
  .pay-appointment-mini .pay-ui-label { font-size:8px!important; }
  .pay-remote-art { gap:17px; }
  .pay-link-symbol { flex-shrink:0; width:35px; height:35px; }
  .pay-request-mini { min-width:0; padding-inline:17px; }
  .pay-remote-check { right:0; }
  .pay-arrival-token { width:86px; height:86px; }
  .pay-small-label { font-size:8px; }
  .pay-tap-demo { gap:13px; }
  .pay-tap-side-label { font-size:7px; }
  .pay-flat-phone { width:225px; flex-shrink:0; }
  .pay-node-icon { display:none; }
  .pay-core-status { min-width:0; }
  .pay-qr-body { padding-inline:19px; gap:13px; }
  .pay-refund-amount { gap:10px; }
  .pay-refund-amount>strong { font-size:35px; }
}
/* Keep the destination in view on compact laptop and phone screens. */
@media (min-width:601px) and (max-height:820px) {
  .pay-hero { padding-top:122px; }
  .pay-hero-copy h1 { font-size:64px; }
  .pay-hero-copy .pay-eyebrow { margin-bottom:16px!important; }
  .pay-hero-copy .pay-lead { margin:18px auto; font-size:15px; }
  .pay-hero-rate { margin-top:12px!important; }
  .pay-arrival-token { width:104px; height:104px; }
}
@media (max-width:600px) and (max-height:800px) {
  .pay-hero { padding-top:108px; }
  .pay-hero-copy h1 { font-size:40px; }
  .pay-hero-copy .pay-eyebrow { margin-bottom:14px!important; }
  .pay-hero-copy .pay-lead { margin:16px auto; font-size:13px; }
}
/* Smaller screens frame the copy with two staggered rows of payment marks. */
@media (min-width:801px) and (max-width:1100px) {
  .pay-hero-copy { width:calc(100% - 270px); }
  .pay-hero-copy h1 { font-size:clamp(44px,5.4vw,60px); }
  .pay-orbit-brand { padding:13px 15px; }
  .pay-orbit-ideal { left:1%; }
  .pay-orbit-ideal img { width:90px; }
  .pay-orbit-visa { right:2%; }
  .pay-orbit-bancontact { top:160px; }
  .pay-orbit-mastercard { top:165px; }
  .pay-orbit-amex { left:1%; }
  .pay-orbit-discover img { width:75px; }
  .pay-orbit-maestro { left:12%; }
  .pay-orbit-qr { right:10%; }
  .pay-orbit-apple { left:0; }
}
@media (max-width:800px) {
  .pay-hero-stage { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:30px 15px; padding-top:8px; }
  .pay-hero-payments { display:contents; }
  .pay-hero-copy { grid-column:1/-1; grid-row:2; width:100%; max-width:570px; }
  .pay-hero-copy h1 { font-size:clamp(42px,8.3vw,66px); }
  .pay-orbit-item { position:relative; inset:auto; grid-row:1; justify-self:center; align-self:center; min-width:0; }
  .pay-orbit-brand { width:100%; min-width:66px; height:54px; padding:9px 12px; border-radius:7px; }
  .pay-orbit-brand img { max-width:100%; max-height:34px; width:auto; object-fit:contain; }
  .pay-orbit-ideal { grid-column:1; --orbit-tilt:-7deg; }
  .pay-orbit-ideal .pay-orbit-brand { width:104px; }
  .pay-orbit-visa { grid-column:2; margin-top:17px; }
  .pay-orbit-mastercard { grid-column:3; margin-bottom:9px; }
  .pay-orbit-wallet .pay-orbit-brand { width:76px; height:54px; padding:3px; }
  .pay-orbit-wallet img { width:70px; max-height:48px; }
  .pay-orbit-apple { grid-column:4; margin-top:15px; }
  .pay-orbit-google { grid-column:5; margin-bottom:9px; }
  .pay-orbit-bancontact { grid-row:3; grid-column:1; margin-top:15px; }
  .pay-orbit-amex { grid-row:3; grid-column:2; margin-bottom:12px; }
  .pay-orbit-maestro { grid-row:3; grid-column:3; margin-top:18px; }
  .pay-orbit-discover { grid-row:3; grid-column:4; margin-bottom:8px; }
  .pay-orbit-qr { grid-row:3; grid-column:5; }
  .pay-orbit-qr>.pay-orbit-card { padding:6px; border-radius:7px; }
  .pay-orbit-qr-code { width:57px; padding:4px; }
  .pay-orbit-qr .pay-orbit-card>span { margin-top:5px; font-size:7px; }
  .pay-arrival-visual { grid-row:4; grid-column:1/-1; width:100%; margin:0 auto!important; }
  .pay-arrival-orbit { height:428px; }
  .pay-arrival-visual>figcaption { margin-top:6px; gap:4px; flex-direction:column; }
  .pay-arrival-visual>figcaption>span { max-width:510px; }
}
@media (max-width:600px) {
  .pay-hero { padding-top:111px; }
  .pay-hero-stage { gap:28px 8px; }
  .pay-orbit-brand { min-width:0; width:49px; height:37px; padding:6px; border-radius:5px; }
  .pay-orbit-brand img { max-height:25px; }
  .pay-orbit-ideal .pay-orbit-brand { width:64px; padding:5px; }
  .pay-orbit-visa { margin-top:13px; }
  .pay-orbit-wallet .pay-orbit-brand { width:49px; height:37px; padding:0; }
  .pay-orbit-wallet img { width:49px; max-height:36px; }
  .pay-orbit-discover .pay-orbit-brand { width:57px; padding:5px; }
  .pay-orbit-qr>.pay-orbit-card { padding:4px; border-radius:5px; }
  .pay-orbit-qr-code { width:43px; padding:3px; }
  .pay-orbit-qr .pay-orbit-card>span { font-size:6px; margin-top:4px; }
  .pay-arrival-orbit { height:367px; }
  .pay-arrival-device { width:196px; height:340px; left:calc(50% - 98px); }
  .pay-arrival-device .pay-arrival-token { width:80px; height:80px; top:162px; left:calc(50% - 40px); }
  .pay-arrival-phone-brand { top:51px; }
  .pay-arrival-phone-brand .pay-wordmark { font-size:15px; }
  .pay-arrival-amount { top:94px; gap:9px; }
  .pay-arrival-amount>strong { font-size:33px; }
  .pay-arrival-receipt { top:255px; }
  .pay-arrival-receipt strong { font-size:16px; }
  .pay-arrival-receipt span { font-size:7px; }
  .pay-arrival-bank-card { right:-45px; top:30px; width:122px; height:79px; padding:11px; }
  .pay-card-label { font-size:10px; }
  .pay-card-chip { left:12px; top:31px; width:20px; height:15px; }
  .pay-card-contactless { top:29px; left:38px; width:20px; height:20px; }
  .pay-card-digits { left:12px; bottom:10px; font-size:7px; }
  .pay-arrival-bank-card>img { width:28px; bottom:8px; right:9px; }
  .pay-arrival-visual>figcaption>span { max-width:310px; }
}
@media (max-width:360px) {
  .pay-hero-stage { row-gap:23px; }
  .pay-hero-copy h1 { font-size:36px; }
  .pay-orbit-brand { width:42px; height:35px; padding:5px; }
  .pay-orbit-brand img { max-height:23px; }
  .pay-orbit-ideal .pay-orbit-brand { width:54px; padding:4px; }
  .pay-orbit-wallet .pay-orbit-brand { width:42px; height:35px; }
  .pay-orbit-wallet img { width:42px; max-height:32px; }
  .pay-orbit-discover .pay-orbit-brand { width:46px; padding:4px; }
  .pay-orbit-qr-code { width:35px; }
  .pay-orbit-qr .pay-orbit-card>span { font-size:5px; }
}
@media (prefers-reduced-motion:reduce) {
  .pay-page *, .pay-page *::before,.pay-page *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
  .pay-motion [data-pay-reveal] { opacity:1; transform:none; }
  .pay-arrival-overlay,.pay-arrival-pending::after { display:none!important; }
  :is(.pay-arrival-pending,.pay-arrival-running) :is([data-site-navigation],.sv-footer,.pay-hero-copy>*,.pay-trust-strip,.pay-page>section:not(.pay-hero),.pay-arrival-visual>figcaption,.pay-orbit-item) { opacity:1; transform:none; }
  :is(.pay-arrival-pending,.pay-arrival-running) [data-pay-arrival-device] { visibility:visible; }
  .pay-arrival-running .pay-arrival-bank-card { opacity:1; transform:rotate(-14deg); }
  .pay-orbit-card { transform:rotate(var(--orbit-tilt,0deg)); }
}
