html{scroll-behavior:auto}
.payment-page{min-height:100svh;background:var(--surface) url('assets/concrete-reference-v4.webp') center top/1440px auto repeat}
.payment-shell{width:min(1060px,100%);margin:auto;padding:32px 40px 48px;min-height:100svh;background:linear-gradient(#e0e0e0ed,#e0e0e0ed)}
.payment-nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:28px;border-bottom:1px solid var(--rule)}
.payment-brand{font-size:15px;font-weight:650;letter-spacing:.13em;min-height:44px;display:flex;align-items:center}
.payment-back,.payment-link{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-decoration-color:var(--red);font-size:15px}
.payment-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:64px;padding-block:64px 48px}
.payment-title{font-family:var(--display);font-weight:900;letter-spacing:.02em;font-size:80px;line-height:.96;color:var(--red);text-wrap:balance;margin-bottom:24px}
.payment-lead{font-size:22px;line-height:1.45;max-width:34ch;text-wrap:pretty}
.payment-copy{font-size:17px;line-height:1.6;max-width:50ch;margin-top:16px}
.payment-summary{align-self:start;padding-block:12px;min-width:0}
.payment-summary h2{font-family:var(--body);font-weight:650;font-size:22px;line-height:1.3;margin-bottom:20px;text-wrap:pretty}
.payment-details{margin:0;font-size:16px;line-height:1.5}
.payment-details>div{padding-block:16px;border-top:1px solid var(--rule)}
.payment-details dt{font-size:14px;margin-bottom:5px;color:#484848}
.payment-details dd{margin:0;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.payment-details .payment-amount{font-size:30px;font-weight:650;line-height:1.2}
.payment-form{margin-top:32px}
.payment-mobile-summary{display:none}
.payment-field{margin-top:22px}
.payment-field label{display:block;font-size:16px;font-weight:600;margin-bottom:8px}
.payment-field input{width:100%;min-height:54px;border:1px solid #696969;border-radius:0;background:#f3f3f3;color:var(--ink);font:inherit;font-size:17px;padding:12px 14px;caret-color:var(--red)}
.payment-field input::placeholder{color:#626262;opacity:1}
.payment-field input:focus-visible{outline:3px solid var(--red);outline-offset:3px}
.payment-hint{margin-top:8px;color:#414141;font-size:14px;line-height:1.5}
.payment-terms{display:flex;align-items:flex-start;gap:12px;margin-top:28px;font-size:14px;line-height:1.55}
.payment-terms input{flex:none;width:20px;height:20px;margin:1px 0 0;accent-color:var(--red)}
.payment-terms a,.payment-hint a{text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:3px}
.payment-form .primary-button{width:100%;margin-top:24px;white-space:normal}
.payment-error{margin-top:16px;color:#8c0a13;font-size:15px;font-weight:550;line-height:1.5}
.payment-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:28px}
.payment-actions .primary-button{white-space:normal}
.payment-telegram{display:inline-flex;align-items:center;min-height:44px;color:var(--red-dark);font-weight:650;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px;transition:color .2s ease}
.payment-telegram:hover{color:var(--ink)}
.payment-contact-value{display:flex;align-items:center;flex-wrap:wrap;gap:6px 18px;min-width:0}
.payment-contact-value>span{overflow-wrap:anywhere}
.payment-edit{display:inline-flex;align-items:center;justify-content:center;min-height:44px;border:0;padding:6px 0;background:transparent;color:var(--red-dark);font:inherit;font-size:15px;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.payment-edit:hover{color:var(--ink)}.payment-edit:disabled{opacity:.6;cursor:wait}
.payment-contact-form{margin-top:12px}
.payment-contact-form label{display:block;margin-bottom:8px;font-size:15px;font-weight:600}
.payment-contact-form input{width:100%;min-height:50px;border:1px solid #696969;border-radius:0;background:#f3f3f3;color:var(--ink);font:inherit;font-size:17px;padding:12px;caret-color:var(--red)}
.payment-contact-form input:focus-visible{outline:3px solid var(--red);outline-offset:3px}
.payment-contact-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;margin-top:16px}
.payment-contact-actions .primary-button{white-space:normal;padding-inline:20px}
#telegram-edit-status:empty{display:none}
.primary-button:disabled{cursor:wait;opacity:.65;transform:none}
.payment-footer{display:flex;flex-wrap:wrap;gap:6px 22px;padding-top:22px;border-top:1px solid var(--rule);font-size:13px;color:#414141}
.payment-footer a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px}
.payment-footer p{flex-basis:100%;margin-top:12px;line-height:1.6}
.payment-noscript{margin-block:24px;font-size:16px;line-height:1.6}
.preview-notice{padding:12px 16px;background:#171717;color:#f7f7f7;font-size:14px;line-height:1.5}
@media(max-width:700px){.payment-shell{padding:20px 22px 32px}.payment-nav{gap:16px;padding-bottom:18px}.payment-brand{font-size:13px;letter-spacing:.09em}.payment-back{font-size:14px}.payment-layout{grid-template-columns:1fr;gap:34px;padding-block:40px 32px}.payment-title{font-size:60px;margin-bottom:20px}.payment-lead{font-size:20px}.payment-summary{padding-top:0}.payment-copy{font-size:16px}.payment-actions{align-items:stretch;flex-direction:column;gap:8px}.payment-actions .primary-button{width:100%}.payment-form{margin-top:26px}.payment-mobile-summary{display:flex;justify-content:space-between;align-items:start;gap:20px;margin:26px 0 0;padding-block:18px;border-block:1px solid var(--rule)}.payment-mobile-summary dt{font-size:14px;color:#484848;margin-bottom:4px}.payment-mobile-summary dd{font-size:17px;font-weight:600;margin:0;font-variant-numeric:tabular-nums}.payment-mobile-summary div:last-child{flex:none;text-align:right}body[data-payment-screen="checkout"] .payment-summary{display:none}}
@media(prefers-reduced-motion:reduce){.primary-button{transition:none}.primary-button:hover{transform:none}}
