/* Pricing page. Builds on english-public.css tokens and components; only page-specific pieces live here. */
.public-site.pricing-page .pr-hero { grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr); gap:72px; }
.public-site.pricing-page .pr-hero .hero-copy h1 { font-size:clamp(44px,4.4vw,64px); }
.public-site.pricing-page .pr-hero .hero-description { max-width:500px; }
.public-site.pricing-page .pr-keep { white-space:nowrap; }

/* The single plan card */
.public-site.pricing-page .pr-plan { background:#fff; border:1px solid var(--line); border-radius:20px; padding:34px 34px 28px; box-shadow:0 1px 0 #10233f0a, 0 28px 56px -36px #10233f47; }
.public-site.pricing-page .pr-plan-head { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.public-site.pricing-page .pr-plan-head h2 { font-size:15px; line-height:1.4; letter-spacing:0!important; font-weight:700!important; }
.public-site.pricing-page .pr-tag { font-size:11px; font-weight:600; color:var(--blue); background:var(--tint); border:1px solid #d5e1f4; padding:5px 10px; border-radius:999px; white-space:nowrap; }
.public-site.pricing-page .pr-price { display:grid; gap:6px; margin:26px 0 24px; padding-bottom:24px; border-bottom:1px solid var(--line); }
.public-site.pricing-page .pr-price strong { font-size:64px; line-height:1; font-weight:600; letter-spacing:-.045em; color:var(--ink); }
.public-site.pricing-page .pr-price span { font-size:14px; color:var(--muted); }
.public-site.pricing-page .pr-plan-list { list-style:none; margin:0; padding:0; display:grid; gap:13px; }
.public-site.pricing-page .pr-plan-list li { display:flex; align-items:center; gap:12px; font-size:15px; line-height:1.45; }
.public-site.pricing-page .pr-plan-list .material-symbols-outlined { flex:0 0 22px; height:22px; display:grid; place-items:center; border-radius:50%; background:var(--tint); color:var(--blue); font-size:15px; font-weight:700; }
.public-site.pricing-page .pr-plan-cta { width:100%; margin-top:28px; }
.public-site.pricing-page .pr-plan-note { margin-top:12px; text-align:center; font-size:12px; color:var(--muted); }

/* What's included */
.public-site.pricing-page .pr-included { padding-top:40px; }
.public-site.pricing-page .pr-grid { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.public-site.pricing-page .pr-card { background:#fff; border:1px solid #dce3ed; border-radius:16px; padding:28px 28px 30px; transition:border-color .2s, box-shadow .2s; }
.public-site.pricing-page .pr-card:hover { border-color:#a4bce6; box-shadow:0 10px 28px -20px #10233f40; }
.public-site.pricing-page .pr-icon { display:grid; place-items:center; width:44px; height:44px; border-radius:10px; background:var(--tint); color:var(--blue); font-size:23px; }
.public-site.pricing-page .pr-card:nth-child(3n+2) .pr-icon { background:#fff1d5; color:#89612e; }
.public-site.pricing-page .pr-card:nth-child(3n) .pr-icon { background:#fce9df; color:#9d543c; }
.public-site.pricing-page .pr-card h3 { margin-top:22px; font-size:21px; line-height:1.25; letter-spacing:-.025em!important; }
.public-site.pricing-page .pr-card .pr-meta { margin-top:10px; font-size:13px; color:var(--muted); }
.public-site.pricing-page .pr-card .pr-meta strong { color:var(--ink); font-weight:600; }
.public-site.pricing-page .pr-card>p:last-child { margin-top:14px; padding-top:14px; border-top:1px solid var(--line); font-size:14px; line-height:1.75; color:var(--muted); }

/* Spacing before the closing band, matching the home page rhythm */
.public-site.pricing-page .faq-layout { padding-bottom:72px; }
.public-site.pricing-page .closing-section { margin-bottom:24px; }

@media (max-width:1150px) {
  .public-site.pricing-page .pr-hero { gap:48px; }
  .public-site.pricing-page .pr-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:960px) {
  .public-site.pricing-page .pr-hero { grid-template-columns:1fr; }
  .public-site.pricing-page .pr-plan { max-width:560px; }
}
@media (max-width:640px) {
  .public-site.pricing-page .pr-plan { padding:26px 22px 22px; border-radius:16px; }
  .public-site.pricing-page .pr-price strong { font-size:52px; }
  .public-site.pricing-page .pr-grid { grid-template-columns:1fr; gap:14px; }
  .public-site.pricing-page .pr-card { padding:24px 22px; }
  .public-site.pricing-page .pr-included { padding-top:24px; }
}
