.sp-section{padding:clamp(64px,8vw,132px) 24px;background:linear-gradient(130deg,#f7fbff,#eef4ff 68%,#f5f0ff);color:#172451;scroll-margin-top:clamp(-132px,-8vw,-64px)}
.sp-layout{width:min(1240px,100%);margin:auto;display:grid;grid-template-columns:1fr minmax(0,560px);grid-template-areas:"intro card" "rules card";grid-template-rows:auto 1fr;column-gap:clamp(36px,6vw,90px);row-gap:28px;align-items:start}
.sp-intro{grid-area:intro}.sp-card{grid-area:card}.sp-rules{grid-area:rules}
.sp-kicker{font-size:13px;font-weight:750;letter-spacing:.13em;color:#526893;margin:0 0 22px}
.sp-intro h2{font-size:clamp(36px,3.7vw,58px);font-weight:750;letter-spacing:-.035em;line-height:1.14;margin:0 0 26px}
.sp-intro h2 em{font-style:normal;color:#2851ef}
.sp-lead{font-size:20px;line-height:1.65;color:#536589;max-width:540px;margin:0 0 30px}
.sp-rules{list-style:none;padding:0;margin:0;display:grid;gap:14px;max-width:540px}
.sp-rules li{padding:16px 18px;border:1px solid #dce5fa;border-radius:16px;background:#ffffffb8;font-size:16px;line-height:1.55;color:#4d5f84}
.sp-rules b{display:block;color:#172451;font-size:16px;margin-bottom:2px}
.sp-card{padding:clamp(22px,3vw,40px);background:#fff;border:1px solid #dce5fa;border-radius:30px;box-shadow:0 25px 75px #1e40aa0e}
.sp-group{margin:0 0 22px}
.sp-label{font-size:15px;font-weight:750;color:#172451;margin:0 0 10px}
.sp-plans{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.sp-plans button{appearance:none;position:relative;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;min-height:70px;padding:12px 44px 12px 16px;border:1.5px solid #dce5fa;border-radius:14px;background:#fff;color:#172451;font:inherit;text-align:left;cursor:pointer;line-height:1.3;transition:border-color .2s,background .2s}
.sp-plans button b{font-size:17px;font-weight:750}
.sp-plans button span{font-size:13px;color:#5c6f90;font-weight:600}
.sp-plans button:hover{border-color:#a9bdf5}
.sp-plans button[aria-checked=true]{border-color:#2851ef;background:#f1f5ff;box-shadow:0 0 0 1px #2851ef inset}
.sp-plans button[aria-checked=true] span{color:#2851ef}
.sp-plans button[aria-checked=true]::after{content:"✓";position:absolute;top:50%;right:14px;transform:translateY(-50%);display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#2851ef;color:#fff;font-size:12px;font-weight:800}
.sp-stepper{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 0;padding:8px 10px 8px 16px;border:1px solid #e2e9f6;border-radius:14px;background:#f6f8fe}
.sp-stepper-label{font-size:15px;font-weight:700;color:#172451}
.sp-stepper-controls{display:flex;align-items:center;gap:6px}
.sp-stepper-controls button{appearance:none;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1.5px solid #cfdaf4;border-radius:12px;background:#fff;color:#2851ef;font:inherit;font-size:22px;font-weight:700;line-height:1;cursor:pointer}
.sp-stepper-controls button:hover:not(:disabled){border-color:#2851ef}
.sp-stepper-controls button:disabled{opacity:.4;cursor:not-allowed}
.sp-stepper output{min-width:36px;text-align:center;font-size:20px;font-weight:800;color:#172451}
.sp-hint{font-size:13px;line-height:1.5;color:#687ba1;margin:10px 0 0}
.sp-switch{display:grid;grid-template-columns:1.3fr 1fr;gap:6px;background:#f0f4fb;border:1px solid #e2e9f6;padding:6px;border-radius:16px}
.sp-switch button{appearance:none;border:0;border-radius:11px;padding:12px 9px;background:transparent;color:#5d6b8d;font:inherit;font-size:16px;font-weight:700;cursor:pointer;min-height:60px;line-height:1.35}
.sp-switch button>span{display:block;font-size:12px;font-weight:750;margin-top:2px}
.sp-switch button[aria-checked=true]{background:#2851ef;color:#fff;box-shadow:0 5px 12px #2851ef26}
.sp-switch button:focus-visible,.sp-plans button:focus-visible,.sp-stepper-controls button:focus-visible,.sp-cta:focus-visible{outline:3px solid #64c3fa;outline-offset:3px}
.sp-price-panel{padding-top:8px;min-height:236px}
.sp-plan-name{font-size:12px;letter-spacing:.1em;font-weight:750;color:#687ba1;margin:0 0 10px;line-height:1.5}
.sp-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;margin:0 0 14px}
.sp-price strong{font-size:clamp(40px,4vw,56px);line-height:1.12;letter-spacing:-.035em;color:#172451;font-weight:800}
.sp-price>span{font-size:18px;color:#687695;white-space:nowrap}
.sp-billing{font-size:18px;line-height:1.5;color:#243966;font-weight:650;margin:0 0 8px}
.sp-per-person{display:inline-block;font-size:14px;line-height:1.45;font-weight:700;color:#0f7a5c;background:#e7f7f0;border-radius:9px;padding:6px 10px;margin:0 0 10px}
.sp-plan-detail{color:#5c6f90;font-size:15px;line-height:1.5;margin:0 0 20px}
.sp-cta{display:flex;justify-content:center;align-items:center;gap:15px;text-align:center;min-height:58px;padding:14px 18px;border-radius:13px;background:#2851ef;color:#fff;text-decoration:none;font-size:17px;font-weight:750;transition:background .2s}
.sp-cta:hover{background:#1839c5;color:#fff}.sp-cta>span{font-size:22px;line-height:1}
.sp-buy{display:block;margin:12px 0 0;text-align:center;font-size:15px;font-weight:700;color:#2851ef;text-decoration:none}.sp-buy:hover{text-decoration:underline}.sp-buy:focus-visible{outline:3px solid #64c3fa;outline-offset:3px}
.sp-rounding{color:#6c7b98;font-size:12px;line-height:1.5;margin:12px 0 0}
.sp-included{margin:26px 0 0;padding:24px 0 0;border-top:1px solid #e3eaf7}
.sp-benefits{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.sp-benefits li{display:flex;gap:12px;font-size:15.5px;line-height:1.5;color:#22325c}
.sp-benefits li>span{display:grid;place-items:center;flex:0 0 22px;height:22px;margin-top:1px;border-radius:50%;background:#e0eaff;color:#2851ef;font-size:12px;font-weight:800}
.sp-fit-note{margin:22px 0 0;padding:14px 16px;border-radius:14px;background:#f5f2ff;color:#4b4a7a;font-size:13.5px;line-height:1.6}
.sp-demo{font-size:12px;line-height:1.6;color:#7886a0;text-align:center;margin:16px 0 0}
[data-subscription-pricing] [hidden]{display:none!important}
@media(max-width:900px){.sp-layout{grid-template-columns:1fr;grid-template-areas:"intro" "card" "rules";grid-template-rows:auto;gap:28px;max-width:600px}.sp-intro h2{font-size:clamp(34px,6vw,50px)}.sp-lead{margin-bottom:0}.sp-price strong{font-size:48px}.sp-price-panel{min-height:0}}
@media(max-width:480px){.sp-section{padding:64px 16px}.sp-card{border-radius:22px;padding:18px}.sp-lead{font-size:17px}.sp-plans{gap:6px}.sp-plans button{min-height:64px;padding:10px 36px 10px 12px}.sp-plans button b{font-size:16px}.sp-plans button span{font-size:12px}.sp-plans button[aria-checked=true]::after{right:10px;width:20px;height:20px;font-size:11px}.sp-stepper{padding:6px 8px 6px 12px}.sp-benefits li{font-size:14.5px}.sp-price strong{font-size:42px}.sp-price>span{font-size:16px}.sp-billing{font-size:16px}.sp-switch button{font-size:14px}.sp-switch button>span{font-size:11px}.sp-cta{font-size:15px}}
@media(prefers-reduced-motion:reduce){.sp-cta,.sp-plans button{transition:none}}
