html.pricing-dialog-open,html.pricing-dialog-open body { overflow:hidden; }
/* Modal shell, heading, floral decoration and close control share How it works styles. */
.pricing-dialog { isolation:isolate; }
#pricing-subtitle { overflow-wrap:anywhere; }
.pricing-heading h2 { overflow-wrap:anywhere; }
.pricing-packages { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr)); gap:20px; max-width:1030px; margin-inline:auto; }
.pricing-package:only-child { width:100%; max-width:600px; justify-self:center; }
.pricing-package { min-width:0; text-align:center; padding:22px 28px; border:1px solid #f0ded7; border-radius:18px; background:transparent; }
.pricing-badge { display:inline-block; background:#fbddba; color:#8b3023; padding:7px 14px; border-radius:30px; font:600 12px/1.4 'Segoe UI',sans-serif; text-transform:uppercase; overflow-wrap:anywhere; max-width:100%; }
.pricing-package h3 { font:700 clamp(32px,4.5vw,48px)/1.15 Georgia,serif; margin:10px 0; overflow-wrap:anywhere; }
.pricing-benefits { font:600 17px/1.4 'Segoe UI',sans-serif; margin:0 0 6px; }
.pricing-description { font:400 14px/1.5 'Segoe UI',sans-serif; color:#626873; margin:0; overflow-wrap:anywhere; }
.pricing-features { border-top:1px solid #eddfd7; list-style:none; text-align:left; margin:18px 0 22px; padding:16px 0 0; display:grid; gap:12px; }
.pricing-features li { display:flex; gap:14px; align-items:flex-start; font:400 15px/1.5 'Segoe UI',sans-serif; color:#666a79; overflow-wrap:anywhere; min-width:0; }
.pricing-features li::before { content:'\2713'; display:grid; place-items:center; flex-shrink:0; width:26px; height:26px; background:#f7e3dc; color:#701625; border-radius:50%; font-weight:700; }
.pricing-cta { display:flex; align-items:center; justify-content:center; gap:20px; min-height:52px; width:min(310px,100%); margin-inline:auto; background:#701625; color:#fff; border-radius:40px; padding:12px 18px; text-decoration:none; font:600 17px/1.4 'Segoe UI',sans-serif; overflow-wrap:anywhere; }
.pricing-cta svg { flex-shrink:0; width:22px; height:22px; }
.pricing-cta:hover { background:#56121e; }
.pricing-trust { display:flex; flex-wrap:wrap; justify-content:center; gap:12px 18px; margin-top:22px; }
.pricing-trust span { display:flex; align-items:center; gap:8px; color:#5c5555; font:400 11px/1.5 'Segoe UI',sans-serif; overflow-wrap:anywhere; }
.pricing-trust svg { width:20px; height:20px; color:#701625; flex-shrink:0; }
.pricing-extra { display:flex; align-items:center; gap:14px; max-width:600px; margin:24px auto 0; padding:18px; border:1px solid #e9d9ce; border-radius:16px; text-decoration:none; color:#701625; background:#f5ece580; }
.pricing-extra>span:nth-child(2) { flex:1; min-width:0; overflow-wrap:anywhere; }
.pricing-extra strong { display:block; font:600 13px/1.5 'Segoe UI',sans-serif; color:#30272b; }
.pricing-extra small { display:block; font:400 12px/1.5 'Segoe UI',sans-serif; color:#626873; margin-top:4px; }
.pricing-extra>svg { width:20px; height:20px; flex-shrink:0; }
.pricing-extra-icon { width:42px; height:42px; display:grid; place-items:center; border-radius:50%; background:#fff9f4; flex-shrink:0; }
.pricing-empty { text-align:center; font:16px/1.6 'Segoe UI',sans-serif; }
.pricing-dialog a:focus-visible,.pricing-dialog button:focus-visible { outline:3px solid #bf858e; outline-offset:4px; }
@media(max-width:500px) { .pricing-package { padding:20px 18px; } .pricing-trust { gap:10px; } .pricing-extra { padding:14px; gap:10px; } }
