.invoice-page{background:var(--dark);color:var(--white);min-height:100vh;display:flex;flex-direction:column}
.payment-header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:28px;padding-bottom:28px}
.payment-header .brand{max-width:260px}.payment-home{font-size:14px;text-decoration:none;display:flex;align-items:center;gap:10px}.payment-home .icon,.payment-help .icon{filter:invert(77%) sepia(52%) saturate(600%)}
.payment-layout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,7vw,108px);align-items:start;padding-top:clamp(40px,7vw,100px);padding-bottom:100px;flex:1}
.payment-intro{padding-top:16px}.payment-intro>.eyebrow{color:var(--gold)}.payment-intro h1{font-family:var(--display);font-size:clamp(48px,5.8vw,82px);line-height:1.13;letter-spacing:-1.5px;margin:24px 0 28px;max-width:650px}.payment-intro h1 span{color:var(--gold)}
.payment-lead{max-width:440px;color:#d1d3ca;font-size:19px;line-height:1.65}.payment-help{border-top:1px solid #4c5144;margin-top:64px;padding-top:24px;max-width:400px}.payment-help p{color:#adb2a7;font-size:14px;margin:0 0 6px}.payment-help a{font-size:17px;text-decoration:none}.payment-help .icon{margin-left:8px}
.payment-panel{background:var(--paper);color:var(--ink);padding:clamp(22px,3.5vw,44px);border-top:4px solid var(--gold);box-shadow:0 22px 70px #0003;min-width:0}
.payment-panel-top{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:28px}.payment-panel-top .eyebrow{font-size:12px;color:#554523;letter-spacing:1px;margin:0}.payment-mode{font-size:10px;font-weight:700;letter-spacing:1px;color:#626960}
.payment-panel label{display:block;font-size:17px;font-weight:700;margin-bottom:10px}.payment-panel input{display:block;width:100%;border:1px solid #999f93;background:#fffefa;color:var(--ink);font:16px/1.4 var(--sans);border-radius:2px;padding:15px 12px;min-height:54px}.payment-panel input::placeholder{font-size:13px;color:#686e64;opacity:1}
.payment-panel input:focus-visible{outline:3px solid #6a5220;outline-offset:3px}.payment-caption{font-size:13px;line-height:1.55;color:#626960;margin:10px 0 20px;overflow-wrap:anywhere}.payment-primary{width:100%;justify-content:center;min-height:54px;margin-top:8px;font-size:16px;cursor:pointer}.payment-primary:disabled{opacity:.65;cursor:wait}
.payment-secondary{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;background:none;border:0;border-top:1px solid var(--line);font:14px var(--sans);color:#4c432d;text-decoration:underline;text-underline-offset:4px;padding:20px 0 0;margin-top:24px;cursor:pointer}.payment-secondary:disabled{opacity:.5;cursor:wait}
.payment-message,.payment-error{padding:15px 16px;margin:20px 0;line-height:1.5;font-size:15px;border-left:3px solid #697447;background:#e6eadc}.payment-error{border-color:#a72626;background:#f8e2dc;color:#731919}.invoice-summary{margin-bottom:24px}.invoice-summary .payment-caption{margin:8px 0}.invoice-amount{font-family:var(--display);font-size:56px;line-height:1.2;margin:6px 0 12px;letter-spacing:-1px}.payment-powered{border-top:1px solid var(--line);margin-top:30px;padding-top:20px;font-size:12px;color:#626960;text-align:center}.payment-powered strong{font-size:20px;letter-spacing:-1px;margin-left:3px;color:#4c554a}
.payment-test-banner{border-block:1px solid #8a6b27;background:#322a17;color:#f5e6bd;font-size:14px;line-height:1.6;padding:14px 0}.payment-footer{display:flex;gap:20px;justify-content:space-between;border-top:1px solid #3e4438;padding-top:24px;padding-bottom:24px;font-size:13px;color:#adb2a7}.payment-footer a{color:inherit}.invoice-page [hidden]{display:none!important}
@media(max-width:900px){.payment-layout{gap:32px;grid-template-columns:1fr 1.1fr}.payment-intro h1{font-size:56px}.payment-panel{padding:24px}.payment-mode{font-size:9px}}
@media(max-width:700px){.payment-header{padding-top:22px;padding-bottom:22px}.payment-header .brand{max-width:190px}.payment-home{font-size:12px;max-width:100px;text-align:right;line-height:1.5}.payment-layout{grid-template-columns:1fr;padding-top:32px;padding-bottom:48px;gap:28px}.payment-intro{padding-top:0}.payment-intro h1{font-size:52px;max-width:500px;margin:16px 0 18px}.payment-lead{font-size:17px;margin:0;max-width:100%}.payment-help{margin-top:24px;padding-top:16px;max-width:100%}.payment-intro .eyebrow{font-size:11px}.payment-panel-top{gap:8px}.payment-panel-top .eyebrow{font-size:10px}.payment-panel{padding:24px 20px}.invoice-amount{font-size:48px}}

.payment-alternative{border-top:1px solid #d8d0be;margin-top:28px;padding-top:24px}.payment-alternative h2{font:700 23px/1.2 Arial,Helvetica,sans-serif;letter-spacing:-.5px;margin:0 0 14px}.payment-alternative p,.payment-alternative address,.care-scope{font-size:15px;line-height:1.5}.payment-alternative address{font-style:normal;margin:12px 0}.care-scope{padding-left:20px}.care-scope li{margin:7px 0}.care-consent{display:flex!important;align-items:flex-start;gap:12px;font-size:14px!important;line-height:1.5}.care-consent input{width:20px!important;min-width:20px;height:20px!important;margin:2px 0 0!important;padding:0!important}.care-consent span{display:block}#care-checkout{margin-top:18px;min-width:0}#care-checkout iframe{max-width:100%}

.fee-review { margin-top: 1.25rem; padding: 1.25rem; border: 1px solid #c9bc9e; background: #fffefa; }
.fee-review h2 { margin-top: 0; font-size: 1.3rem; }
.fee-review dl { margin: 1rem 0; }
.fee-review dl > div { display: flex; justify-content: space-between; gap: 1rem; padding: .45rem 0; }
.fee-review dd { margin: 0; white-space: nowrap; }
.fee-review .fee-total { border-top: 1px solid #c9bc9e; margin-top: .5rem; padding-top: .8rem; font-weight: 700; }
