/* R21: selected option02, only this page's payment section and cart. */
.gk-pay { --pay-ink:#101027; --pay-muted:#68647f; --pay-purple:#8051cf; color:var(--pay-ink); background:#fff; font:16px/1.4 'Golos',Arial,sans-serif; padding:26px 20px 40px; scroll-margin-top:64px; }
.gk-pay *, .gk-pay *::before, .gk-pay *::after { box-sizing:border-box; }
.gk-pay__wrap { max-width:560px; margin:auto; }
.gk-pay h2,.gk-pay h3,.gk-pay h4,.gk-pay p { margin:0; }
.gk-pay__intro { margin-bottom:22px; }
.gk-pay__intro h2 { font-size:32px; font-weight:700; line-height:1.14; letter-spacing:-.9px; }
#gk-pay-title:focus { outline:none; }
.gk-pay__intro p { margin-top:6px; font-size:18px; color:var(--pay-muted); line-height:1.35; }
.gk-pay__card { border-radius:18px; padding:20px 18px 18px; background:#efebff; }
.gk-pay__heading { border-bottom:1px solid #dcd5ef; padding-bottom:12px; }
.gk-pay__heading h3 { font-size:32px; line-height:1.16; letter-spacing:-.8px; font-weight:700; }
.gk-pay__heading p { margin-top:5px; font-size:16px; color:var(--pay-muted); }
.gk-pay__price { padding:12px 0 22px; }
.gk-pay__price strong { display:block; font-size:46px; font-weight:700; line-height:1.12; letter-spacing:-1.2px; }
.gk-pay__price p { margin-top:1px; font-size:15px; color:var(--pay-muted); }
.gk-pay__methods { border:0; padding:0; margin:0; min-width:0; }
.gk-pay__methods legend { font-size:18px; font-weight:600; padding:0; margin-bottom:8px; }
.gk-pay__switch { display:grid; grid-template-columns:1fr 1fr; border-radius:12px; overflow:hidden; background:#fff; }
.gk-pay__switch label { position:relative; cursor:pointer; }
.gk-pay__switch input { position:absolute; width:1px; height:1px; opacity:0; }
.gk-pay__switch span { display:flex; justify-content:center; align-items:center; gap:8px; min-height:56px; padding:9px 6px; font-size:14px; line-height:1.3; }
.gk-pay__switch input:checked+span { background:var(--pay-purple); color:white; }
.gk-pay__switch input:focus-visible+span { outline:3px solid #171431; outline-offset:-3px; border-radius:10px; }
.gk-pay__switch img { width:21px; height:21px; flex:none; }
.gk-pay__empty-icon { opacity:.4; }
.gk-pay__switch .gk-pay__selected-icon { display:none; filter:brightness(0) invert(1); }
.gk-pay__switch input:checked+span .gk-pay__selected-icon { display:block; }
.gk-pay__switch input:checked+span .gk-pay__empty-icon { display:none; }
.gk-pay__detail { display:grid; grid-template-columns:40px minmax(0,1fr); gap:16px; min-height:106px; align-items:start; padding:26px 0 16px; border-bottom:1px solid #dcd5ef; }
.gk-pay__detail>img { width:34px; height:34px; filter:invert(13%) sepia(54%) saturate(2236%) hue-rotate(231deg); }
.gk-pay__detail h4 { font-size:16px; font-weight:600; }
.gk-pay__detail p { font-size:14px; color:var(--pay-muted); line-height:1.4; margin-top:2px; }
.gk-pay__selection { padding:15px 0 18px; font-size:14px; color:var(--pay-muted); }
.gk-pay__selection strong { color:var(--pay-ink); }
.gk-pay__cta { width:100%; min-height:52px; border:0; border-radius:22px; background:var(--pay-purple); color:#fff; display:flex; align-items:center; justify-content:center; gap:8px; padding:12px 8px; font:600 17px/1.25 'Golos',Arial,sans-serif; cursor:pointer; }
.gk-pay__cta img { width:24px; height:24px; filter:brightness(0) invert(1); flex:none; }
.gk-pay__cta:hover { background:#7144bd; }
.gk-pay__cta:focus-visible,.gk-pay summary:focus-visible,.gk-pay a:focus-visible { outline:3px solid #22204d; outline-offset:3px; }
.gk-pay__cta:disabled { opacity:.7; cursor:wait; }
.gk-pay__terms { margin-top:10px; border-bottom:1px solid #e2dff0; }
.gk-pay__terms summary { display:flex; align-items:center; justify-content:space-between; min-height:48px; gap:12px; padding:10px 2px; list-style:none; color:#413d56; font-size:16px; cursor:pointer; }
.gk-pay__terms summary::-webkit-details-marker { display:none; }
.gk-pay__terms summary img { width:18px; height:18px; }
.gk-pay__terms[open] summary img { transform:rotate(90deg); }
#gk-pay-terms-content { font-size:14px; line-height:1.5; padding:4px 2px 16px; color:#4f4a68; }
#gk-pay-terms-content p+p { margin-top:10px; }
#gk-pay-terms-content a { color:#664098; text-decoration:underline; display:inline-flex; align-items:center; min-height:44px; }
.gk-pay__note { margin-top:16px!important; color:var(--pay-muted); font-size:14px; line-height:1.5; }
.gk-pay__note span { color:#716d86; }
.gk-pay__error { color:#a1263e; font-size:14px; padding-top:12px; }
#rec633089253 .t-radio__control { min-height:44px; box-sizing:border-box; padding-top:10px; padding-bottom:10px; }
#rec633089253 .t706__cartwin-close:focus-visible { outline:3px solid #8051cf; }
.gk-payment-visible #rec633089253 .t706__carticon { visibility:hidden; pointer-events:none; }
@media (max-width:359px) { .gk-pay { padding-left:14px; padding-right:14px; } .gk-pay__intro h2 { font-size:27px; } .gk-pay__intro p { font-size:16px; } .gk-pay__heading h3 { font-size:29px; } .gk-pay__card { padding-left:16px; padding-right:16px; } .gk-pay__cta { font-size:15px; } .gk-pay__switch span { font-size:13px; gap:5px; } }
@media (min-width:640px) { .gk-pay { padding:48px 24px 64px; } .gk-pay__intro { text-align:center; } .gk-pay__card { padding:28px; } .gk-pay__intro h2 { font-size:36px; } .gk-pay__switch span { font-size:16px; } }

/* R22: wide payment composition; approved mobile rules remain unchanged. */
@media (min-width:960px) {
 .gk-pay { padding:52px 32px 56px; }
 .gk-pay__wrap { max-width:1120px; display:grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); column-gap:72px; }
 .gk-pay__intro { grid-column:1 / -1; text-align:left; margin-bottom:28px; }
 .gk-pay__intro h2 { font-size:40px; letter-spacing:-1.1px; }
 .gk-pay__intro p { font-size:20px; margin-top:8px; }
 .gk-pay__card { grid-column:1 / -1; display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); column-gap:72px; padding:36px 40px; border-radius:24px; }
 .gk-pay__heading { grid-column:1; grid-row:1; align-self:start; padding-bottom:18px; }
 .gk-pay__heading h3 { font-size:40px; line-height:1.12; letter-spacing:-1px; }
 .gk-pay__heading p { font-size:19px; margin-top:9px; }
 .gk-pay__price { grid-column:1; grid-row:2 / 5; align-self:start; padding:24px 0 0; }
 .gk-pay__price strong { font-size:64px; line-height:1.1; letter-spacing:-2px; }
 .gk-pay__price p { font-size:17px; margin-top:7px; }
 .gk-pay__methods { grid-column:2; grid-row:1; align-self:start; }
 .gk-pay__methods legend { font-size:20px; margin-bottom:12px; }
 .gk-pay__switch span { min-height:60px; font-size:17px; }
 .gk-pay__switch img { width:23px; height:23px; }
 .gk-pay__detail { grid-column:2; grid-row:2; padding:22px 0 20px; min-height:114px; }
 .gk-pay__detail h4 { font-size:18px; }
 .gk-pay__detail p { font-size:15px; margin-top:5px; }
 .gk-pay__selection { grid-column:2; grid-row:3; padding:18px 0; font-size:15px; }
 .gk-pay__cta { grid-column:2; grid-row:4; min-height:56px; font-size:18px; }
 .gk-pay__error { grid-column:2; grid-row:5; }
 .gk-pay__terms { grid-column:1; align-self:start; margin-top:12px; }
 .gk-pay__terms summary { min-height:52px; font-size:17px; }
 .gk-pay__note { grid-column:2; align-self:start; margin-top:22px!important; font-size:15px; }
}
@media (min-width:960px) and (max-width:1099px) {
 .gk-pay__wrap,.gk-pay__card { column-gap:40px; }
 .gk-pay__card { padding:32px; }
 .gk-pay__heading h3 { font-size:34px; }
 .gk-pay__price strong { font-size:58px; }
}
