.csc-store { --store-orange: #ff9148; --store-text: #f4f1ed; --store-muted: #a6a09a; --store-line: #ffffff18; color: var(--store-text); padding: 28px 0 40px; }
.csc-store *, .csc-store *::before, .csc-store *::after { box-sizing: border-box; }
.csc-store [hidden] { display: none !important; }
.csc-store a { color: inherit; text-decoration: none; }
.csc-store button, .csc-store input, .csc-store select { font: inherit; }
.csc-store h1, .csc-store h2, .csc-store h3, .csc-store p { margin: 0; }
.csc-store :is(a, button, input, select, summary):focus-visible { outline: 2px solid var(--store-orange); outline-offset: 4px; }
.csc-store .store-wrap { width: min(1120px, calc(100% - 40px)); margin: 0 auto; }
.store-breadcrumb { display: flex; gap: 12px; align-items: center; color: #9d948a; font-size: 10px; font-weight: 700; letter-spacing: 1.5px; }
.store-breadcrumb a:hover { color: var(--store-orange); }
.store-hero { display: flex; align-items: center; justify-content: space-between; gap: 32px; padding: 34px 0 30px; }
.csc-store .store-eyebrow { color: var(--store-orange); font-size: 10px; font-weight: 800; letter-spacing: 1.7px; line-height: 1.6; }
.csc-store .store-hero h1 { margin: 9px 0 12px; color: #fff; font-size: clamp(32px, 4vw, 46px); font-weight: 800; line-height: 1.15; letter-spacing: -1.7px; }
.store-hero h1 em { display: block; color: var(--store-orange); font-style: normal; }
.store-hero > div > p:last-child, .store-checkout-heading > p:last-child { color: #b9b0a7; font-size: 14px; line-height: 1.65; }
.store-server-stamp { display: flex; align-items: center; gap: 16px; padding: 18px 24px; border: 1px solid #ca814c40; border-radius: 12px; background: #171615e8; }
.store-server-stamp > i { color: var(--store-orange); font-size: 23px; }
.store-server-stamp small, .store-server-stamp strong { display: block; }
.store-server-stamp small { margin-bottom: 6px; color: var(--store-muted); font-size: 9px; letter-spacing: 1px; }
.store-server-stamp strong { font-size: 15px; }
.store-steps { display: flex; align-items: center; gap: 30px; margin: 0 0 26px; padding: 16px 0; border-block: 1px solid #ffffff18; list-style: none; }
.store-steps li { display: flex; align-items: center; gap: 10px; color: #a69b90; font-size: 12px; }
.store-steps b { display: grid; place-items: center; width: 27px; height: 27px; border: 1px solid #ffffff1a; border-radius: 7px; color: #8d8278; font-size: 10px; }
.store-steps .is-current { color: #ffe5d1; }
.store-steps .is-current b { color: var(--store-orange); border-color: #ff91485c; background: #ff914811; }
.store-steps .is-done b { color: #8cd6ad; border-color: #8cd6ad45; }
.store-toolbar { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px; margin-bottom: 18px; }
.store-server-links { display: flex; flex-wrap: wrap; gap: 8px; }
.store-server-links a { padding: 10px 14px; border: 1px solid #ffffff20; border-radius: 8px; background: #131517; color: #c4c1bc; font-size: 11px; font-weight: 700; }
.store-server-links a[aria-current] { border-color: #e99b5c50; color: #ffc294; }
.store-server-links i { margin-right: 6px; }
.csc-store fieldset { min-width: 0; padding: 0; margin: 0; border: 0; }
.csc-store .store-price-switch { display: flex; align-items: center; gap: 4px; padding: 4px; border: 1px solid #ffffff18; border-radius: 10px; background: #131516; }
.store-price-switch legend { float: left; padding: 0 14px 0 8px; color: #a69f98; font-size: 11px; }
.store-price-switch label, .store-duration label, .store-identity label, .store-payments label { position: relative; display: block; cursor: pointer; }
.store-price-switch input, .store-duration input, .store-identity input, .store-payments input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.store-price-switch span { display: block; padding: 9px 18px; border-radius: 6px; color: #c4beb7; font-size: 12px; font-weight: 700; }
.store-price-switch input:checked + span { background: #34302b; color: #ffc091; }
.csc-store :is(.store-price-switch, .store-duration, .store-identity, .store-payments) input:focus-visible + span { outline: 2px solid var(--store-orange); outline-offset: 3px; }
.store-offers { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; align-items: start; }
.store-offer { position: relative; min-width: 0; padding: 30px; border: 1px solid #55514a; border-radius: 16px; background: linear-gradient(145deg, #222322f5, #131617fa 66%); box-shadow: 0 20px 50px #0004; }
.store-offer-svip { border-color: #d88140; background: radial-gradient(ellipse at top right, #b5672729, transparent 60%), linear-gradient(145deg, #282119fa, #151718fa 70%); }
.store-offer-svip::before { content: ''; position: absolute; top: -1px; left: 30px; right: 30px; height: 2px; background: linear-gradient(90deg, transparent, #ffb57c, transparent); }
.store-offer-heading { display: flex; align-items: center; gap: 16px; margin-bottom: 27px; }
.store-rank-icon { display: grid; flex: 0 0 55px; place-items: center; width: 55px; height: 55px; border: 1px solid #c4c8ca33; border-radius: 13px; background: #d8d8d80c; color: #dadce0; font-size: 25px; }
.store-offer-svip .store-rank-icon, .store-summary-svip .store-rank-icon { color: #ffb777; border-color: #ff974552; background: #f48a2115; }
.store-offer-heading h2 { color: #fff; font-size: 32px; line-height: 1.2; letter-spacing: -.8px; }
.store-offer-heading .store-eyebrow { font-size: 8px; margin-bottom: 4px; color: #b4ada5; letter-spacing: 1.1px; }
.store-offer-svip .store-eyebrow { color: #f9b57e; }
.store-rank-tag { margin-left: auto; padding: 6px 8px; border: 1px solid #d886454f; border-radius: 5px; color: #ffb777; font-size: 8px; font-weight: 800; letter-spacing: 1px; }
.csc-store .store-duration, .csc-store .store-identity { display: flex; gap: 6px; }
.store-duration legend, .store-identity legend { display: block; width: 100%; padding: 0 0 10px; color: #b3aaa0; font-size: 11px; }
.store-duration label, .store-identity label { flex: 1; min-width: 0; }
.store-duration span, .store-identity span { display: flex; align-items: center; justify-content: center; gap: 8px; padding: 12px 7px; border: 1px solid #ffffff20; border-radius: 8px; background: #0f1214; color: #b7b3ae; font-size: 12px; font-weight: 600; text-align: center; }
.store-duration input:checked + span, .store-identity input:checked + span { border-color: #d18a54; background: #f38d3918; color: #ffca9f; }
.store-price-block { padding: 25px 0 22px; }
.store-price { display: flex; align-items: baseline; flex-wrap: wrap; gap: 7px; }
.store-price strong { color: #fff; font-size: 49px; line-height: 1.1; letter-spacing: -2px; }
.store-offer-svip .store-price strong { color: #ffb378; }
.store-price > span { color: #d4c9be; font-size: 20px; }
.store-price small { margin-left: 4px; color: #a39b94; font-size: 12px; }
.store-price-block > p { margin-top: 10px; color: #d0c5ba; font-size: 12px; line-height: 1.5; }
.store-alternate-price { margin-top: 8px; color: #9a938a; font-size: 11px; }
.csc-store .store-cta { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 49px; padding: 13px 18px; border: 1px solid #ff984f; border-radius: 9px; background: linear-gradient(110deg, #f48d3d, #df671d); box-shadow: 0 6px 20px #e173211c; color: #16120e; font-size: 13px; font-weight: 800; text-decoration: none; cursor: pointer; transition: filter .15s; }
.csc-store .store-cta:hover { filter: brightness(1.1); }
.csc-store .store-cta-secondary { border-color: #726353; background: #2c2925; box-shadow: none; color: #f2dfcb; }
.csc-store .store-cta:disabled { opacity: .5; cursor: default; }
.store-benefits { margin-top: 25px; padding-top: 22px; border-top: 1px solid var(--store-line); }
.store-benefits h3, .store-summary-benefits h3 { color: #aaa098; font-size: 9px; font-weight: 700; letter-spacing: 1.4px; }
.store-benefits ul, .store-summary-benefits ul { display: grid; gap: 12px; list-style: none; padding: 0; margin: 17px 0 0; }
.store-benefits li, .store-summary-benefits li { display: flex; align-items: baseline; gap: 10px; color: #d0c9c1; font-size: 12px; line-height: 1.5; }
.store-benefits li > i, .store-summary-benefits li > i { flex: 0 0 12px; color: #d28c56; font-size: 10px; }
.store-promo summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: #e2b28d; cursor: pointer; font-size: 12px; list-style: none; }
.store-promo summary::-webkit-details-marker { display: none; }
.store-promo summary span { font-size: 18px; font-weight: 400; transition: transform .15s; }
.store-promo[open] > summary span { transform: rotate(45deg); }
.store-payment-strip { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 16px; margin: 28px 0 24px; }
.store-payment-strip > span { color: #9d9289; font-size: 10px; }
.store-payment-strip b { color: #d3c4b5; font-size: 12px; font-weight: 600; }
.store-assurances { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; padding: 24px; border: 1px solid #ffffff17; border-radius: 12px; background: #161719e8; }
.store-assurances > div { display: flex; align-items: center; gap: 13px; }
.store-assurances i { color: #d79662; font-size: 19px; }
.store-assurances strong, .store-assurances small { display: block; }
.store-assurances strong { font-size: 11px; font-weight: 600; }
.store-assurances small { margin-top: 5px; color: #a4988d; font-size: 10px; line-height: 1.5; }
.store-assurances a:hover { color: var(--store-orange); }
.store-legal { display: flex; justify-content: center; gap: 12px; margin-top: 24px; color: #b1a398; font-size: 10px; }
.store-server-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 20px; }
.store-server-card { padding: 30px; border: 1px solid #6c4b31; border-radius: 14px; background: #191b1ded; }
.store-server-card > i { font-size: 28px; color: var(--store-orange); }
.store-server-card h2 { margin: 20px 0 10px; font-size: 22px; }
.store-server-card p { color: var(--store-muted); font-size: 13px; }
.store-server-card > span { display: block; margin-top: 25px; color: var(--store-orange); font-size: 13px; }
.store-empty { padding: 25px; border: 1px solid #69513e; border-radius: 12px; background: #191b1d; line-height: 1.7; grid-column: 1 / -1; }
.store-empty a { color: var(--store-orange); }
.csc-store .store-back { display: inline-flex; gap: 10px; align-items: center; margin-bottom: 22px; color: #cfad91; font-size: 12px; }
.store-checkout-heading { margin-bottom: 26px; }
.csc-store .store-checkout-heading h1 { margin: 7px 0 10px; color: #fff; font-size: clamp(28px, 4vw, 39px); letter-spacing: -1px; }
.store-checkout-layout { display: grid; grid-template-columns: minmax(0, 1fr) 365px; align-items: start; gap: 24px; }
.store-checkout-fields { display: grid; gap: 18px; min-width: 0; }
.store-form-section { padding: 26px; border: 1px solid #ffffff21; border-radius: 13px; background: #181b1df5; }
.store-form-section h2 { display: flex; align-items: center; gap: 10px; margin-bottom: 22px; color: #f4eee7; font-size: 16px; font-weight: 700; }
.store-form-section h2 > span { color: #e6a26c; font-size: 10px; font-weight: 600; }
.store-chosen-package { display: flex; align-items: center; gap: 10px; margin-bottom: 20px; color: #f0c095; font-size: 15px; }
.store-chosen-package > i { font-size: 19px; }
.csc-store .store-field-label { display: block; margin: 18px 0 9px; color: #c9bfb5; font-size: 12px; font-weight: 600; }
.csc-store input:is([type=text], [type=email]), .csc-store select { display: block; width: 100%; min-width: 0; height: 46px; padding: 11px 13px; border: 1px solid #4b4239; border-radius: 8px; background: #0e1113; color: #f1ede8; font-size: 13px; }
.csc-store input::placeholder { color: #91877e; }
.csc-store .store-field-hint { margin-top: 12px; color: #a99f95; font-size: 11px; line-height: 1.6; }
.store-field-hint > i { margin-right: 5px; color: #c69063; }
.store-promo { margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--store-line); }
.csc-store .store-payments { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.store-payment-tile { display: grid; grid-template-columns: 22px 1fr; align-items: center; column-gap: 8px; padding: 16px; border: 1px solid #544638; border-radius: 10px; background: #101315; }
.store-payment-tile > i { color: #bdac9b; font-size: 15px; }
.store-payment-tile b { color: #e7ded5; font-size: 12px; }
.store-payment-tile strong { grid-column: 1 / -1; margin-top: 12px; color: #f7c49b; font-size: 20px; }
.store-payment-tile small { grid-column: 1 / -1; margin-top: 6px; color: #a7998c; font-size: 10px; }
.store-payments input:checked + span { border-color: #ee944d; background: #dd7d2415; box-shadow: inset 0 0 0 1px #ff94432b; }
.store-payments input:checked + span > i { color: var(--store-orange); }
.store-card-payer, .store-sms { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--store-line); }
.store-card-payer > p { color: #bcae9f; font-size: 11px; }
.store-payer-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.store-payer-grid input { margin-top: 9px; }
.store-sms h3 { font-size: 14px; margin-bottom: 14px; }
.store-sms-details { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.store-sms-details > div { padding: 12px; border-radius: 8px; background: #0b0e10; }
.store-sms-details small, .store-sms-details strong { display: block; overflow-wrap: anywhere; }
.store-sms-details small { margin-bottom: 7px; color: #a4988b; font-size: 8px; letter-spacing: .7px; }
.store-sms-details strong { color: #edbc94; font-size: 14px; }
.store-order-summary { position: sticky; top: 96px; min-width: 0; padding: 26px; border: 1px solid #8e6444; border-radius: 14px; background: linear-gradient(160deg, #29221bf7, #15191bf7 55%); box-shadow: 0 22px 50px #0004; }
.store-summary-heading { display: flex; align-items: center; gap: 12px; margin-top: 18px; }
.store-summary-heading .store-rank-icon { width: 43px; height: 43px; flex-basis: 43px; font-size: 20px; }
.store-summary-heading h2 { color: #fff; font-size: 19px; line-height: 1.4; }
.store-order-facts { display: grid; gap: 13px; padding: 23px 0; margin: 0; border-bottom: 1px solid var(--store-line); }
.store-order-facts > div { display: flex; justify-content: space-between; align-items: baseline; gap: 18px; font-size: 11px; line-height: 1.5; }
.store-order-facts dt { flex-shrink: 0; color: #a69a8f; }
.store-order-facts dd { margin: 0; color: #e3d5c8; text-align: right; overflow-wrap: anywhere; }
.store-total { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; padding: 21px 0; }
.store-total > span { color: #b5a69a; font-size: 12px; }
.store-total > strong { color: #ffb77f; font-size: 29px; letter-spacing: -.7px; }
.store-total small { font-size: 18px; }
.store-consents { display: grid; gap: 13px; margin: 0 0 22px; }
.store-consents > label { display: flex; align-items: flex-start; gap: 9px; color: #baaea2; font-size: 10px; line-height: 1.6; cursor: pointer; }
.store-consents input { flex: 0 0 15px; width: 15px; height: 15px; margin: 2px 0 0; accent-color: var(--store-orange); }
.store-consents a { color: #efb17f; text-decoration: underline; text-underline-offset: 2px; }
.csc-store .store-activation-note { margin: 13px 0 0; color: #b4a391; font-size: 9px; text-align: center; line-height: 1.5; }
.store-activation-note i { color: #d99a66; margin-right: 4px; }
.store-summary-benefits { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--store-line); }
.store-summary-benefits li { font-size: 11px; }
.csc-store .store-help-link { display: block; margin-top: 22px; color: #a69483; font-size: 10px; text-align: center; }
.store-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
@media (max-width: 900px) {
    .store-checkout-layout { grid-template-columns: minmax(0, 1fr) 320px; gap: 16px; }
    .store-order-summary, .store-form-section, .store-offer { padding: 22px; }
    .store-rank-tag { display: none; }
    .store-payment-tile { padding: 12px; column-gap: 4px; }
    .store-assurances { gap: 12px; padding: 20px; }
}
@media (max-width: 720px) {
    .csc-store { padding-top: 20px; }
    .csc-store .store-wrap { width: calc(100% - 28px); }
    .store-hero { display: block; padding: 25px 0 22px; }
    .store-server-stamp { display: inline-flex; margin-top: 23px; padding: 12px 16px; gap: 12px; }
    .store-server-stamp > i { font-size: 17px; }
    .store-server-stamp small { font-size: 8px; }
    .store-server-stamp strong { font-size: 12px; }
    .store-steps { gap: 0; justify-content: space-between; margin-bottom: 22px; }
    .store-steps li { gap: 6px; font-size: 10px; }
    .store-steps b { width: 23px; height: 23px; font-size: 9px; }
    .store-offers, .store-checkout-layout { grid-template-columns: minmax(0, 1fr); }
    .store-offer { padding: 25px; }
    .store-rank-tag { display: block; }
    .store-order-summary { position: static; padding: 25px; }
    .store-assurances { grid-template-columns: minmax(0, 1fr); gap: 22px; padding: 24px; }
    .store-payment-strip { gap: 13px; }
    .store-payment-strip > span { flex-basis: 100%; text-align: center; }
    .store-toolbar { gap: 12px; }
    .store-price-switch legend { padding-right: 6px; }
    .store-price-switch span { padding: 9px 13px; }
    .store-consents > label { font-size: 11px; }
}
@media (max-width: 390px) {
    .store-rank-tag { display: none; }
    .store-offer, .store-order-summary, .store-form-section { padding: 19px; }
    .store-steps li { font-size: 9px; }
    .store-payments .store-payment-tile b { font-size: 11px; }
    .store-payer-grid { grid-template-columns: minmax(0, 1fr); gap: 0; }
    .store-sms-details { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) { .csc-store *, .csc-store *::before, .csc-store *::after { transition: none !important; } }
