.pricing-section{position:relative;overflow:hidden;background:linear-gradient(145deg,#f8f7ff 0%,#eefaff 52%,#fff8eb 100%)}
.pricing-section:before,.pricing-section:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.pricing-section:before{width:320px;height:320px;right:-130px;top:-120px;background:rgba(80,68,238,.09)}
.pricing-section:after{width:240px;height:240px;left:-110px;bottom:-100px;background:rgba(255,166,37,.12)}
.pricing-heading,.pricing-grid,.pricing-footer,.pricing-legal{position:relative;z-index:1}
.pricing-heading{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:64px;align-items:end;margin-bottom:52px}
.pricing-heading h2{margin:.45rem 0 0;color:#14285e;font-family:"Fredoka",sans-serif;font-size:clamp(2.45rem,4.8vw,4.6rem);line-height:.98;letter-spacing:-.045em}
.pricing-heading h2 em{color:#5445ed;font-style:normal}
.pricing-heading>p{margin:0;color:#43506d;font-size:1.12rem;line-height:1.7;font-weight:700}
.pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}
.price-card{position:relative;display:flex;min-height:390px;flex-direction:column;padding:34px;border:1px solid rgba(20,40,94,.1);border-radius:32px;background:rgba(255,255,255,.92);box-shadow:0 18px 45px rgba(35,45,100,.1)}
.price-card:before{content:"";position:absolute;inset:0 0 auto;height:7px;border-radius:32px 32px 0 0;background:#14a391}
.price-week:before{background:#ff9f24}.price-month:before{background:#18a695}
.price-icon{display:grid;width:58px;height:58px;place-items:center;margin-bottom:24px;border-radius:19px;background:#fff1d7;font-size:1.7rem}
.price-month .price-icon{background:#ddf7f2}.price-year .price-icon{background:rgba(255,255,255,.16)}
.price-name{margin:0;color:#14285e;font-family:"Fredoka",sans-serif;font-size:1.38rem;font-weight:700}
.price-amount{display:flex;align-items:baseline;gap:8px;margin:8px 0 16px;color:#14285e}
.price-amount strong{font-family:"Fredoka",sans-serif;font-size:clamp(2.15rem,3vw,3.15rem);line-height:1;letter-spacing:-.04em}
.price-amount span{font-size:.86rem;font-weight:800;opacity:.65}
.price-copy{margin:0 0 25px;color:#53607d;line-height:1.55;font-weight:700}
.price-access{margin-top:auto;color:#0b8878;font-weight:900}
.price-equivalent{display:inline-flex;align-self:flex-start;margin:-5px 0 16px;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.17);font-size:.78rem;font-weight:900}
.price-card.featured{border:none;background:linear-gradient(150deg,#5949f2,#3429b7);color:#fff;box-shadow:0 24px 54px rgba(66,52,202,.28);transform:translateY(-12px)}
.price-card.featured:before{display:none}
.price-card.featured .price-name,.price-card.featured .price-amount,.price-card.featured .price-copy,.price-card.featured .price-access{color:#fff}
.price-card.featured .price-copy{opacity:.86}
.price-badge{position:absolute;right:24px;top:22px;padding:8px 12px;border-radius:999px;background:#ffb02e;color:#552d00;font-size:.7rem;font-weight:900;letter-spacing:.05em}
.pricing-footer{display:flex;align-items:center;justify-content:space-between;gap:28px;margin-top:28px;padding:24px 28px;border:1px solid rgba(20,40,94,.09);border-radius:26px;background:#fff;box-shadow:0 14px 35px rgba(35,45,100,.08)}
.pricing-footer>div{display:flex;align-items:center;gap:16px;color:#14285e}
.pricing-footer>div>span{display:grid;width:48px;height:48px;place-items:center;border-radius:15px;background:#eef0ff;font-size:1.55rem}
.pricing-footer p{display:flex;flex-direction:column;margin:0}.pricing-footer b{font-size:1rem}.pricing-footer small{margin-top:3px;color:#5a6680;font-weight:700}
.pricing-footer .button{white-space:nowrap}
.pricing-legal{max-width:850px;margin:18px auto 0;color:#68738b;font-size:.8rem;line-height:1.5;text-align:center}
@media(max-width:900px){.pricing-heading{grid-template-columns:1fr;gap:18px}.pricing-grid{grid-template-columns:1fr}.price-card{min-height:0}.price-card.featured{transform:none}.pricing-footer{align-items:stretch;flex-direction:column}.pricing-footer .button{text-align:center}}
@media(max-width:560px){.pricing-heading{margin-bottom:32px}.price-card{padding:28px 24px;border-radius:26px}.pricing-footer{padding:22px}.pricing-footer>div{align-items:flex-start}.pricing-footer .button{white-space:normal}}
