.payg-page{margin:0;background:var(--cc-bg-soft)}
.payg-page *,.payg-dialog *{box-sizing:border-box}
.payg-main{width:min(640px,calc(100% - var(--cc-space-5)));margin:0 auto;padding:var(--cc-space-7) 0}
.payg-head{margin-bottom:var(--cc-space-5)}
.payg-head .cc-eyebrow{color:var(--cc-cathedral);margin:0 0 var(--cc-space-3)}
.payg-head h1{font-size:clamp(var(--cc-text-xl),6vw,var(--cc-text-2xl))}
.payg-lead{color:var(--cc-fg-muted);font-size:var(--cc-text-sm);margin:var(--cc-space-3) 0 0}
.payg-card{background:var(--cc-bg);border:var(--cc-border-w-thin) solid var(--cc-border);border-radius:var(--cc-radius-md);padding:clamp(var(--cc-space-5),5vw,var(--cc-space-7));box-shadow:var(--cc-shadow-md)}
.payg-card[hidden]{display:none}
.payg-card form{display:grid;gap:var(--cc-space-5)}
.payg-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--cc-space-5)}
.payg-fld label:not(.payg-check){display:block;margin-bottom:var(--cc-space-1);font-family:var(--cc-font-logo);font-size:var(--cc-text-xxs);font-weight:var(--cc-w-medium);letter-spacing:var(--cc-track-logo);text-transform:uppercase;color:var(--cc-fg-muted)}
.payg-fld input:not([type=checkbox]){width:100%;padding:var(--cc-space-3) 0;font:inherit;color:var(--cc-fg);background:transparent;border:0;border-bottom:var(--cc-border-w-thin) solid var(--cc-border-strong);border-radius:0;outline:none}
.payg-fld input:not([type=checkbox]):focus{border-bottom:var(--cc-border-w-bold) solid var(--cc-cathedral)}
.payg-fld.bad input:not([type=checkbox]){border-bottom-color:var(--cc-border-strong)}
.payg-check{display:flex;gap:var(--cc-space-3);align-items:flex-start;font-size:var(--cc-text-xs);line-height:var(--cc-lh-body);color:var(--cc-fg);cursor:pointer}
.payg-check input{margin-top:var(--cc-space-1);accent-color:var(--cc-cathedral);flex-shrink:0}
.payg-err{margin:var(--cc-space-2) 0 0;color:var(--cc-so-much-more);font-size:var(--cc-text-xs);padding-left:var(--cc-space-3);border-left:var(--cc-border-w-bold) solid var(--cc-perfect-love)}
.payg-err[hidden]{display:none}
.payg-banner{margin:0;padding:var(--cc-space-3) var(--cc-space-4);background:var(--cc-highlight-soft)}
.payg-note{margin:0;color:var(--cc-fg-muted);font-size:var(--cc-text-xs)}
.payg-sub{margin:0 0 var(--cc-space-4);font:var(--cc-w-regular) var(--cc-text-lg) var(--cc-font-alt)}
.payg-btn{display:inline-flex;align-items:center;justify-content:center;padding:14px var(--cc-space-6);font-family:var(--cc-font-logo);font-size:var(--cc-text-xxs);font-weight:var(--cc-w-semibold);letter-spacing:var(--cc-track-logo);text-transform:uppercase;border:var(--cc-border-w-thin) solid transparent;border-radius:var(--cc-radius-sm);cursor:pointer;line-height:1;transition:background-color var(--cc-dur-fast) var(--cc-ease)}
.payg-btn:disabled{opacity:.5;cursor:not-allowed}
.payg-btn:focus-visible,.payg-fld input:focus-visible{outline:2px solid var(--cc-cathedral);outline-offset:3px}
.payg-primary{background:var(--cc-golden-hour);color:var(--cc-so-much-more);border-color:var(--cc-golden-hour)}
.payg-primary:hover:not(:disabled){background:var(--cc-golden-hour-deep);border-color:var(--cc-golden-hour-deep)}
.payg-ghost{background:transparent;color:var(--cc-so-much-more);border-color:var(--cc-border-strong);margin-top:var(--cc-space-4)}
.payg-ghost:hover:not(:disabled){background:var(--cc-a-lifetime)}
#paygEmbedded{min-height:var(--cc-space-8)}

.payg-overlay{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:var(--cc-space-4);background:color-mix(in srgb,var(--cc-so-much-more) 55%,transparent);overflow:auto}
.payg-dialog{width:min(560px,100%);max-height:calc(100dvh - var(--cc-space-5));overflow:auto;background:var(--cc-bg);color:var(--cc-fg);border-radius:var(--cc-radius-md);box-shadow:var(--cc-shadow-lg);padding:var(--cc-space-6);font-family:var(--cc-font-body);letter-spacing:var(--cc-track-body)}
.payg-dialog h2{margin:0 0 var(--cc-space-3);font:var(--cc-w-regular) var(--cc-text-xl) var(--cc-font-alt)}
.payg-dialog p{margin:0 0 var(--cc-space-4);color:var(--cc-fg-muted);font-size:var(--cc-text-sm)}
.payg-price{font:var(--cc-w-regular) var(--cc-text-xl) var(--cc-font-alt);color:var(--cc-fg)}
.payg-dialog .payg-check{margin-bottom:var(--cc-space-4)}
.payg-dialog .payg-err{margin-bottom:var(--cc-space-4)}
.payg-dialog-actions{display:flex;gap:var(--cc-space-3);flex-wrap:wrap}
@media(max-width:560px){.payg-grid{grid-template-columns:1fr}.payg-dialog{padding:var(--cc-space-5)}.payg-dialog-actions .payg-btn,#paygSubmit{width:100%}}
