.purchase{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10%;background:radial-gradient(ellipse at 0 100%,#b08a3e12,transparent 60%)}
.purchase-intro h2{font-size:clamp(55px,5vw,80px)}
.purchase-intro>p{margin-top:23px;color:var(--muted)}
.license{border:1px solid #b08a3e80;padding:35px;background:#242019;box-shadow:7px 7px 0 #b08a3e0c}
.license-top{display:flex;justify-content:space-between;gap:15px;font:9px monospace;letter-spacing:1.3px;color:#c7ac77;border-bottom:1px solid var(--border);padding-bottom:20px}
.license h3{font-size:28px;margin-top:25px}
.price{font:54px Georgia;margin-top:15px}
.price span{font:12px Arial;color:#b7a991}
.license ul{padding-left:18px;margin:25px 0;font-size:13px;line-height:2.2;color:#d0c5b1}
.license .button{width:100%}
.checkout-note{font:10px Arial;text-align:center;color:#b6a78d;margin-top:15px}
dialog{background:#242019;color:var(--cream);border:1px solid var(--gold);max-width:500px;width:calc(100% - 32px);padding:40px}
dialog::backdrop{background:#000c;backdrop-filter:blur(8px)}
dialog p{margin:22px 0;font-size:13px;color:var(--muted)}
.close{position:absolute;top:12px;right:16px;color:var(--cream);border:0;background:none;font-size:28px}
.order{border-block:1px solid var(--border);padding:20px 0;display:flex;justify-content:space-between}
.order b{font:36px Georgia}
.order small{color:var(--muted);font-size:11px}
dialog .button{width:100%;justify-content:center}
@media(max-width:650px){
.purchase{grid-template-columns:1fr;gap:40px}
.license{padding:25px}
.license-top{font-size:8px}
.purchase-intro h2{font-size:62px}
}
@media(prefers-contrast:more){
.checkout-note{color:#e5d9c5}
}

/* Hosted handoff controls preserve the approved dialog treatment. */
#checkout [hidden]{display:none!important}
#commerce-status{border-left:2px solid var(--gold);padding-left:14px}
#commerce-continue,#commerce-download{margin-top:18px;width:100%}
#commerce-continue:disabled{opacity:.6;cursor:not-allowed}
#commerce-delivery{font-weight:700}
.commerce-policy{display:inline-block;text-decoration:underline;text-underline-offset:3px;margin:0 14px 12px 0;font-size:12px}
dialog{max-height:calc(100dvh - 32px);overflow:auto;overflow-wrap:anywhere}
@media(max-width:400px){dialog{padding:32px 20px}.order{gap:16px}.price span{display:block}}
