.pricing-catalog-section { padding:clamp(62px,8vw,112px) 0; position:relative; }
.pricing-catalog-intro { max-width:700px; margin:0 auto 34px; text-align:center; }
.pricing-catalog-intro .sol-kicker { margin-bottom:14px; }
.pricing-catalog-intro h2 { margin:0; font:800 clamp(32px,4vw,54px)/1.05 var(--display); color:var(--ink); }
.pricing-catalog-intro h2 span { color:var(--green); }
.pricing-catalog-intro p { max-width:600px; margin:18px auto 0; color:var(--ink-soft); font-size:17px; line-height:1.55; }
#pricing-catalog { min-height:200px; }
.pricing-live-controls { display:flex; justify-content:center; flex-wrap:wrap; gap:14px; margin:34px 0 36px; }
.pricing-live-definition { margin: -16px auto 26px; color:var(--ink-soft); font:600 14px/1.45 var(--body); text-align:center; }
.pricing-live-empty { max-width:620px; margin:0 auto 24px; color:var(--ink-soft); text-align:center; }
.pricing-live-billing { display:flex; align-items:center; gap:7px; min-height:18px; margin:0 0 7px; color:var(--muted); font:600 12px var(--body); }
.pricing-live-billing-copy { opacity:.6; }
.pricing-live-discounted-price { color:var(--green-ink); }
.pricing-live-discount-pill { display:inline-flex; align-items:center; justify-content:center; min-width:30px; min-height:30px; padding:4px 7px; border-radius:999px; background:var(--green); color:#fff; font:800 11px/1 var(--body); opacity:1; }
.pricing-live-volume { display:flex; flex-direction:column; gap:5px; min-height:54px; margin:4px 0 2px; color:var(--muted); font:700 11px var(--body); letter-spacing:.04em; text-transform:uppercase; }
.pricing-live-volume .seg-toggle { align-self:flex-start; }
.pricing-live-volume .seg-toggle { max-width:100%; overflow:hidden; }
.pricing-live-volume .seg-toggle button { min-width:0; padding-inline:9px; }
.pricing-live-facts li { gap:9px; }
.pricing-live-facts li > span:first-child { color:var(--green); font-weight:900; }
.pricing-live-facts li b { color:var(--ink); font-weight:800; }
.pricing-catalog-toolbar { display:flex; justify-content:center; flex-wrap:wrap; gap:12px; margin:0 auto 28px; }
.pricing-catalog-toolbar label { display:flex; align-items:center; gap:8px; padding:5px 7px 5px 14px; border:1px solid var(--line); border-radius:999px; background:rgba(255,255,255,.7); box-shadow:var(--shadow-sm); color:var(--ink-soft); font:700 12px var(--body); }
.pricing-catalog-toolbar select { appearance:auto; border:0; outline:0; padding:8px 9px; border-radius:999px; background:#fff; color:var(--ink); font:700 13px var(--body); cursor:pointer; }
.pricing-catalog-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(208px,1fr)); align-items:stretch; gap:15px; }
.pricing-catalog-card { position:relative; display:flex; flex-direction:column; min-width:0; padding:25px 21px 21px; border:1px solid rgba(19,45,70,.12); border-radius:22px; background:rgba(255,255,255,.86); box-shadow:0 12px 35px rgba(19,45,70,.07); }
.pricing-catalog-card.is-recommended { border-color:var(--blue); box-shadow:0 17px 42px rgba(28,142,244,.18); transform:translateY(-10px); }
.pricing-catalog-recommended { position:absolute; top:-14px; right:18px; padding:6px 11px; border-radius:999px; background:var(--blue); color:#fff; font:800 11px var(--body); box-shadow:0 7px 15px rgba(28,142,244,.25); }
.pricing-catalog-card-head p { margin:0 0 10px; color:var(--green-ink); font:800 11px var(--body); letter-spacing:.07em; text-transform:uppercase; }
.pricing-catalog-card-head h3 { margin:0; color:var(--ink); font:800 25px/1.08 var(--display); }
.pricing-catalog-price { display:flex; align-items:baseline; gap:6px; min-height:64px; margin-top:24px; }
.pricing-catalog-price strong { color:var(--ink); font:800 clamp(31px,3vw,42px)/1 var(--display); letter-spacing:-.05em; }
.pricing-catalog-price span,.pricing-catalog-billing { color:var(--ink-soft); font:600 12px var(--body); }
.pricing-catalog-billing { min-height:16px; margin:0 0 7px; }
.pricing-catalog-features { display:grid; gap:9px; margin:22px 0 25px; padding:0; list-style:none; }
.pricing-catalog-features li { display:flex; justify-content:space-between; gap:10px; color:var(--ink-soft); font:500 13px/1.25 var(--body); }
.pricing-catalog-features li::before { content:"✓"; color:var(--green); font-weight:900; }
.pricing-catalog-features li span { margin-right:auto; }
.pricing-catalog-features li b { color:var(--ink); font-weight:800; text-align:right; }
.pricing-catalog-card .btn { justify-content:center; margin-top:auto; text-align:center; }
.pricing-catalog-status { display:flex; justify-content:center; align-items:center; gap:14px; max-width:620px; min-height:150px; margin:0 auto; padding:25px; border:1px solid var(--line); border-radius:20px; background:rgba(255,255,255,.72); color:var(--ink); text-align:left; }
.pricing-catalog-status p { margin:5px 0 0; color:var(--ink-soft); font-size:14px; line-height:1.45; }
.pricing-catalog-status--error { border-color:rgba(28,142,244,.38); }
.pricing-catalog-spinner { width:22px; height:22px; flex:none; border:3px solid rgba(28,142,244,.2); border-top-color:var(--blue); border-radius:50%; animation:pricing-spin .8s linear infinite; }
.pricing-catalog-status--error .pricing-catalog-spinner,.pricing-catalog-status--empty .pricing-catalog-spinner { display:none; }
@keyframes pricing-spin { to { transform:rotate(360deg); } }
@media (max-width:600px) {
  .pricing-catalog-section { padding:56px 0; }
  .pricing-catalog-intro h2 { font-size:34px; }
  .pricing-catalog-intro p { font-size:15px; }
  .pricing-catalog-toolbar { display:grid; grid-template-columns:1fr; max-width:360px; }
  .pricing-catalog-toolbar label { justify-content:space-between; }
  .pricing-live-controls { gap:10px; margin:26px 0 28px; }
  .pricing-live-controls .seg-toggle { max-width:100%; }
  .pricing-live-controls .seg-toggle button { padding-inline:13px; font-size:13px; }
  .pricing-live-volume .seg-toggle button { padding-inline:10px; font-size:11px; }
  .pricing-catalog-grid { grid-template-columns:1fr; gap:18px; }
  .pricing-catalog-card.is-recommended { transform:none; }
  .pricing-catalog-status { align-items:flex-start; flex-wrap:wrap; }
}
